Profile & résumé

POST /me/resume/extract Session only

Extract a structured profile from an uploaded résumé (no LLM).

Accepts a PDF (multipart/form-data field file) or plain text (application/json { "text": ... }). Returns canonical skill slugs, the categories it spans, and the resolved seniority (omitted when unresolved). When storage is configured it also stores the résumé once.

Body

text string
Résumé plain text (JSON path); or send a PDF as multipart field file.
curl
curl -X POST "https://freehire.dev/api/v1/me/resume/extract" \
  -H 'Content-Type: application/json' -b cookies.txt \
  -d '{"text":"Senior Go engineer, 6 years..."}'
json — response
{ "data": { "skills": ["go", "postgresql"], "categories": ["backend"], "seniority": "senior" } }