Quickstart
Five minutes from zero to a scored match.
1. Get an API key
Sign in to the dashboard and mint a key. It looks like rz_live_… and is shown exactly once — Rezmatch.ai stores only a SHA-256 hash, so copy it immediately.
export REZMATCH_API_KEY="rz_live_..."
export BASE="https://api.rezmatch.ai"2. Make a free call
The normalize endpoints cost 0 credits — perfect for verifying your key works:
curl "$BASE/normalize/title?title=Sr.%20SWE" \
-H "x-access-key: $REZMATCH_API_KEY"{
"success": true,
"data": { "canonical": "Software Engineer", "seniority": "senior" },
"credits_used": 0,
"request_id": "req_..."
}Every response uses this envelope: success, data, credits_used, request_id.
3. Parse a job description
Point at any job posting URL — Greenhouse, Lever, and company career pages work directly:
curl -X POST "$BASE/parse/jd" \
-H "x-access-key: $REZMATCH_API_KEY" \
-H "Content-Type: application/json" \
-d '{"url": "https://job-boards.greenhouse.io/acme/jobs/123456"}'You get back a normalized Role: canonical title, seniority, must-have skills with min-years, nice-to-haves, and qualifications. 4 credits.
4. Parse a résumé
Same three input forms everywhere — send one of text, url, or file:
# file — base64 bytes, the usual form for a résumé you already have
curl -X POST "$BASE/parse/resume" \
-H "x-access-key: $REZMATCH_API_KEY" \
-H "Content-Type: application/json" \
-d "{\"file\": \"$(base64 -i resume.pdf)\"}"
# text — raw text, newlines JSON-escaped
curl -X POST "$BASE/parse/resume" \
-H "x-access-key: $REZMATCH_API_KEY" \
-H "Content-Type: application/json" \
-d '{"text": "Jane Doe\njane@example.com\n\nEXPERIENCE\nSenior Backend Engineer — Stripe..."}'
# url — we fetch it (PDF or web page, must be publicly reachable)
curl -X POST "$BASE/parse/resume" \
-H "x-access-key: $REZMATCH_API_KEY" \
-H "Content-Type: application/json" \
-d '{"url": "https://example.com/resumes/jane-doe.pdf"}'PDFs are processed natively. The response is a full Candidate: E.164 phone, canonical location, work history with computed tenures, taxonomy-normalized skills, education — plus an optional bias-redacted scoring_view for your own downstream use. 6 credits. The document itself is deleted the moment processing ends.
Size limits, precedence when you send more than one form, and the /match field names are all in Sending Documents.
5. Score the match
Pass raw documents and Rezmatch.ai parses them inline, or pass the parsed JSON from steps 3-4 to skip re-parsing:
curl -X POST "$BASE/match" \
-H "x-access-key: $REZMATCH_API_KEY" \
-H "Content-Type: application/json" \
-d "{\"resume_file\": \"$(base64 -i resume.pdf)\", \"jd_url\": \"https://job-boards.greenhouse.io/acme/jobs/123456\"}"The result is a 0-100 score with a band (weak → excellent), met/missed requirements each grounded in quoted résumé evidence, and neutral notes. Fairness is verified by automated score-parity testing across name/age/ethnicity proxies. 3 credits, + the full parse cost per inline document.
Next steps
- API Reference — every endpoint and schema
- Interactive playground — try calls in the browser with your key
- MCP Connector — use Rezmatch.ai from Claude with zero code