API / Extract · Stage 2
Extract
Turn parsed markdown into a 24-field structured candidate object. Run it when a candidate submits — it reuses Stage 1's markdown, so the CV is never reprocessed.
POST/v1/extract
Request
Send application/json.
| Field | Type | Notes | |
|---|---|---|---|
markdown | string | required | The markdown from a prior /v1/parse response. |
text_layer | string | optional | The document's embedded text, if you have it — improves email/phone/date fidelity. |
Response 200
{
"candidate_data": {
"first_name": "Jane", "last_name": "Doe",
"email": "jane@example.com", "phone_number": "+90...",
"work_experience_details": [ ... ], "education_details": [ ... ]
},
"metadata": { "duration_ms": 48213 }
}
All 24 fields are documented in Response schema.
Timing
Typically 30–40 seconds for a full CV, scaling with how much content is extracted (a sparse CV is faster). This stage is not latency-critical — run it in the background, not while the candidate waits.
Example
curl -X POST "https://prs.recruspace.com/v1/extract" \ -H "X-API-Key: $KEY" \ -H "Content-Type: application/json" \ -d '{"markdown": "# Jane Doe\n..."}'