Parse a job description
POST /parse/jd
Parse a job description into normalized Role JSON: canonical title + seniority, concise must-have skills with min-years, nice-to-haves, responsibilities, and qualifications. Job-board URLs (Greenhouse, Lever, company pages) are fetched directly.
Provide exactly one of text, url, or file.
Cost: 1 credit.
Request body
| Field | Type | Description |
|---|---|---|
text | string | Raw document text |
url | string | http(s) URL of a document (PDF or text; 25s fetch timeout; 10MB cap) |
file | string | Base64-encoded document bytes (PDF or plain text; 10MB cap) |
Example request
curl -X POST "https://api.rezmatch.ai/parse/jd" \
-H "x-access-key: $TALENTKIT_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"url": "https://job-boards.greenhouse.io/acme/jobs/123456"
}'Example response
{
"success": true,
"data": {
"role_id": "role_1a3f9be2c4d07a51",
"title": "Sr. Backend Engineer",
"title_normalized": "Backend Engineer",
"seniority": "senior",
"location": "Remote",
"employment_type": "full_time",
"must_have_skills": [
{
"canonical": "Go",
"taxonomy_id": "skill_go",
"min_years": 3
},
{
"canonical": "Kubernetes",
"taxonomy_id": "skill_kubernetes",
"min_years": null
}
],
"nice_to_have_skills": [
{
"canonical": "Apache Kafka",
"taxonomy_id": "skill_kafka"
}
],
"responsibilities": [
"Own services end to end"
],
"qualifications": [
"5+ years building distributed systems"
],
"min_experience_months": 60
},
"credits_used": 1,
"request_id": "req_b35a573a-22ef-4379-9245-a01f0049150a"
}Errors
| Status | Meaning |
|---|---|
400 | invalid_request / unsupported_format |
401 | invalid_key — missing, unknown, or revoked access key |
402 | insufficient_credits — top up in the dashboard; the failed call is not charged |
422 | parse_failed — the document could not be structured |
All errors share the error envelope.
Try it
Open this endpoint in the interactive playground — requests run with your API key.
Last updated on