Resume Parser
Multilingual support

Multilingual Resume Parser

Same JSON structure, original wording kept

Parse resumes in other languages without translating them first. The same JSON field names regardless of input language.

How it works

  1. 1

    No language parameter

    You send every resume to the same POST /v1/parse endpoint. There is no language parameter to set.

  2. 2

    Processing in the original language

    The language model reads the resume text in its original language instead of translating it to English first.

  3. 3

    Normalized where it helps

    Month names are translated to English before dates become numbers, and country names in locations are returned in English (for example "Finland", not "Suomi").

  4. 4

    Consistent JSON output

    Field names are always the same: firstName, lastName, emailAddress, workExperiences[], educations[], languages[]. Descriptions stay in their original language.

Key Benefits

Descriptions not translated

Work descriptions keep the candidate's own words and language, so nothing is lost in machine translation. Your system can translate them if needed.

One endpoint for every language

No separate endpoint or setting for non-English resumes, which keeps your integration simple for international applicant pools.

Language skills listed

The languages[] array lists the languages the candidate mentions with their stated level, and fluentLanguages lists the ones marked fluent or native.

Mixed-language resumes

Many CVs mix languages, like a Finnish resume with English job titles. The model reads the document as a whole rather than section by section.

Code examples

API response (German CV, data object)json
{
  "firstName": "Hans",
  "lastName": "Mueller",
  "emailAddress": "[email protected]",
  "locationCity": "Berlin",
  "locationState": "Berlin",
  "locationCountry": "Germany",
  "workExperiences": [
    {
      "title": "Softwareentwickler",
      "organization": "Example GmbH",
      "location": "Berlin, Germany",
      "skillsDescription": "- Entwicklung von Cloud-Lösungen mit Java und Spring Boot",
      "startMonth": 1,
      "startYear": 2020,
      "endMonth": null,
      "endYear": null,
      "isOngoing": true
    }
  ],
  "educations": [
    {
      "degree": "Diplom-Informatiker",
      "school": "Technische Universität München",
      "year": "2014",
      "endYear": "2019",
      "notes": "Schwerpunkt: Verteilte Systeme",
      "location": "München, Germany"
    }
  ],
  "fluentLanguages": ["German", "English"],
  "languages": [
    { "language": "German", "level": "Native" },
    { "language": "English", "level": "Fluent" },
    { "language": "French", "level": "Basic" }
  ]
}

Technical Details

Resumes are processed by a large language model in their original language. Field names are always in English. Month names are translated to English before dates are converted to numbers, and country names in locations are returned in English. Job descriptions are returned without changing their language or grammar. The languages[] array captures the candidate's stated language skills and levels. We don't publish per-language accuracy figures, so test your own language mix with the 50 free parses per month. The API is hosted on Hetzner in Helsinki, Finland; /v1/parse does not store the PDF or the parsed result, and resume text is processed by OpenAI (US) as a subprocessor.

Questions

Frequently asked questions

There is no fixed language list. The parser uses a large language model that reads many languages. We don't publish per-language accuracy figures, so test with resumes in your target languages using the 50 free parses per month.

The model reads the full document, so a resume with sections or job titles in different languages is processed as one. Fields are extracted from whatever language they are written in.

No. Job titles, company names and descriptions are returned in their original language. Only month names (for the date fields) and country names in locations are normalized to English.

No. There are no language parameters or headers. You send the PDF to POST /v1/parse.

Test with resumes in your target languages

50 free parses per month. Send CVs in the languages you hire in and check the output yourself.

Get API key