ResumeParser.pro

One API Call Turns Any Resume Into Structured JSON

Resumes arrive as PDFs, DOCX files and phone photos. Your product needs data. Between the two sit exactly four steps — and every one of them is an API call away.

14-day trial · 100,000 words included · No credit card

1.0 · POST the resume

Any file in

Send the resume exactly as it arrived: PDF, DOC, DOCX, RTF, TXT, or a JPG someone took of a paper CV. One multipart request, up to 100 MB, in any of 80+ languages. OCR runs inside the endpoint, so scans and photos need no special handling.

The API answers immediately with 202 Accepted and a status URL. No blocking, no timeouts, no queue of your own to babysit.

curl -X POST 'https://sharpapi.com/api/v1/hr/parse_resume' \
  -H 'Authorization: Bearer YOUR_API_KEY' \
  -F 'file=@candidate.pdf' \
  -F 'language=English'

HTTP/2 202 Accepted
{ "status_url": "…/job/status/09cf83f8…", "job_id": "09cf83f8…" }

2.0 · Read the JSON

One schema out

Every resume, two-column designer CV or plain-text developer resume, maps to the same deterministic structure: candidate profile, positions with per-role skills, education, certifications, languages and 50+ fields in total. Fields the document lacks come back empty, never missing, so your parser-side code never branches on layout.

Explore the full payload field by field — it is a real parsing output, not a mock-up.

{
  "candidate_name": "Linda Harris",
  "candidate_email": "linda.h@dayjob.co.uk",
  "positions": [{
    "position_name": "Test Engineer",
    "company_name": "IT & Telecoms Company",
    "start_date": "2008-06-01",
    "skills": ["Acceptance testing", "Agile", "UAT knowledge", …]
  }],
  "education_qualifications": [{ "school_name": "Nuneaton University", … }],
  "candidate_spoken_languages": ["German"]
}

3.0 · Score against the job

Twenty dimensions, explained

Add the job description and the second endpoint returns a 0–100 score for each of 20 dimensions (skills, experience, education, tech stack, seniority, stability and more) plus written explanations that name the evidence. A recruiter can defend the ranking; an auditor can check it.

Names, ages and nationalities are stripped before scoring. The model sees qualifications, nothing else.

"match_scores": {
  "overall_match": 72,
  "skills_match": 80,        // Strong PHP/MySQL; Laravel not mentioned
  "experience_match": 90,    // 22 years — exceeds requirements
  "education_match": 0,      // No education section found
  "language_proficiency_match": 100,
  "stability_score": 85,
  …14 more dimensions
}

4.0 · Ship the shortlist

From pile to pipeline

Sort by overall_match, and recruiters open a ranked shortlist instead of two hundred PDFs. The same two calls power ATS auto-fill, job-board “apply with your resume” forms, staffing-agency bench matching and internal-mobility tools.

CV upload → candidate record in 1 call

resume.pdf → prefilled application

200 applicants → sorted by overall_match

10k legacy CVs → searchable JSON

Why builders pick these two endpoints

The schema never moves. Deterministic output means the integration you write against the sample on this site is the integration that runs in production.

Pricing is per word, not per document. Plans start at $50/month and a two-page resume costs a fraction of what per-document vendors charge. No page fees, no OCR surcharge.

The scoring is not a black box. Twenty dimensions with written reasons, adjustable weighting through a plain-text context parameter, and PII stripped before evaluation — design choices that map directly onto NYC Local Law 144 bias audits and the EU AI Act's transparency requirements.

Compliance is table stakes. GDPR, SOC 2 Type II and Singapore PDPA. Transient processing. No training on customer data. Ever.

Questions, answered

What is a resume parser API?

A REST endpoint that accepts a resume file — PDF, DOCX, RTF, TXT or a photo — and returns the candidate as structured JSON: contact details, work history, education, skills and 50+ other fields. Your application sends a file and receives data it can store, search and rank.

What is the difference between parsing and match scoring?

Parsing extracts what is in the resume; match scoring compares it against a specific job description. The first turns a file into data, the second turns data into a ranked, explained 0-100 fit score across 20 dimensions. Most screening pipelines use both.

How fast can I integrate these APIs?

One multipart POST plus one polling call — or a webhook. Official SDKs exist for PHP, Laravel, Python, Node.js, .NET and Flutter, and every endpoint follows the same async pattern, so the second integration is mostly copy-paste.

What does it cost to start?

Nothing up front: the 14-day SharpAPI trial includes 100,000 processed words with no credit card. Paid plans start at $50/month with per-word metering — no per-document or per-page fees.