Resume OCR

Mindee’s Resume API uses deep learning to automatically, accurately, and instantaneously parse your documents details. In a few seconds, the API extracts a set of data from your PDFs or photos of resume, motivation and recommendation letters, including:

  • Document Language

  • Document Type

  • Given Names

  • Surnames

  • Nationality

  • Email Address

  • Phone Number

  • Address

  • Social Networks

  • Profession

  • Job Applied

  • Languages

  • Hard Skills

  • Soft Skills

  • Education

  • Professional Experiences

  • Certificates

Set up the API

Create an API key

To begin using the Mindee V1 OCR API, your first step is to create your V1 API key.

  1. You'll need a Résumé. You can use one of the sample documents provided below.

  2. Access your Resume API by clicking on the corresponding product card in the Document Catalog

  3. From the left navigation, go to documentation > API Reference, you'll find sample code in popular languages and command line.

from mindee import Client, product, AsyncPredictResponse

# Init a new client
mindee_client = Client(api_key="my-api-key-here")

# Load a file from disk
input_doc = mindee_client.source_from_path("/path/to/the/file.ext")

# Load a file from disk and enqueue it.
result: AsyncPredictResponse = mindee_client.enqueue_and_parse(
    product.ResumeV1,
    input_doc,
)

# Print a brief summary of the parsed data
print(result.document)
  • Replace my-api-key-here with your new API key, or use the select an API key feature and it will be filled automatically.

  • Copy and paste the sample code of your desired choice in your application, code environment, terminal etc.

  • Replace /path/to/the/file.ext with the path to your input document.

  1. Run your code. You will receive a JSON response with the document details.

API Response

Here is the full JSON response you get when you call the API:

{
    "api_request": {
        "error": {},
        "resources": [
            "document",
            "job"
        ],
        "status": "success",
        "status_code": 200,
        "url": "https://api.mindee.net/v1/products/mindee/resume/v1/documents/a6601da5-d5cb-48c4-8d1a-de54d19b1bb5"
    },
    "document": {
        "id": "a6601da5-d5cb-48c4-8d1a-de54d19b1bb5",
        "inference": {
            "extras": {},
            "finished_at": "2024-10-29T10:21:14.778000",
            "is_rotation_applied": true,
            "pages": [
                {
                    "extras": {},
                    "id": 0,
                    "orientation": {
                        "value": 0
                    },
                    "prediction": {}
                }
            ],
            "prediction": {
                "address": {
                    "value": "177 Great Portland Street, London, W5W 6PQ"
                },
                "certificates": [
                    {
                        "grade": null,
                        "name": "PHP Framework (certificate):Zend,Codeigniter,Symfony",
                        "provider": null,
                        "year": null
                    },
                    {
                        "grade": null,
                        "name": "Programming Languages:JavaScript,HTML5, PHP OOP,CSS,SQL,MySQL",
                        "provider": null,
                        "year": null
                    }
                ],
                "document_language": {
                    "value": "ENG"
                },
                "document_type": {
                    "value": "RESUME"
                },
                "education": [
                    {
                        "degree_domain": "Computer Information Systems",
                        "degree_type": "Bachelor of Science",
                        "end_month": null,
                        "end_year": null,
                        "school": "Columbia University, NY",
                        "start_month": null,
                        "start_year": "2014"
                    }
                ],
                "email_address": {
                    "value": "[email protected]"
                },
                "given_names": [
                    {
                        "value": "Christopher"
                    }
                ],
                "hard_skills": [
                    {
                        "value": "HTML5"
                    },
                    {
                        "value": "PHP OOP"
                    },
                    {
                        "value": "JavaScript"
                    },
                    {
                        "value": "CSS"
                    },
                    {
                        "value": "MySQL"
                    }
                ],
                "job_applied": {
                    "value": null
                },
                "languages": [
                    {
                        "language": "SPA",
                        "level": "Fluent"
                    },
                    {
                        "language": "CHI",
                        "level": "Beginner"
                    },
                    {
                        "language": "GER",
                        "level": "Intermediate"
                    }
                ],
                "nationality": {
                    "value": null
                },
                "phone_number": {
                    "value": "+44 (0)20 7666 8555"
                },
                "profession": {
                    "value": "Senior Web Developer"
                },
                "professional_experiences": [
                    {
                        "contract_type": null,
                        "department": null,
                        "employer": "Luna Web Design, New York",
                        "end_month": "05",
                        "end_year": "2019",
                        "role": "Web Developer",
                        "start_month": "09",
                        "start_year": "2015"
                    }
                ],
                "social_networks_urls": [
                    {
                        "name": "LinkedIn",
                        "url": "linkedin.com/christopher.morgan"
                    }
                ],
                "soft_skills": [
                    {
                        "value": "Project management"
                    },
                    {
                        "value": "Creative design"
                    },
                    {
                        "value": "Strong decision maker"
                    },
                    {
                        "value": "Innovative"
                    },
                    {
                        "value": "Complex problem solver"
                    },
                    {
                        "value": "Service-focused"
                    }
                ],
                "surnames": [
                    {
                        "value": "Morgan"
                    }
                ]
            },
            "processing_time": 8.661,
            "product": {
                "features": [
                    "document_language",
                    "document_type",
                    "given_names",
                    "surnames",
                    "nationality",
                    "email_address",
                    "phone_number",
                    "address",
                    "social_networks_urls",
                    "profession",
                    "job_applied",
                    "languages",
                    "hard_skills",
                    "soft_skills",
                    "education",
                    "professional_experiences",
                    "certificates"
                ],
                "name": "mindee/resume",
                "type": "standard",
                "version": "1.0"
            },
            "started_at": "2024-10-29T10:21:05.922000"
        },
        "n_pages": 1,
        "name": "cv_templates_with_photo.jpg"
    },
    "job": {
        "available_at": "2024-10-29T10:21:14.791000",
        "error": {},
        "id": "9d15c01c-cc12-4623-8ccb-3a42cdff781d",
        "issued_at": "2024-10-29T10:21:05.922000",
        "status": "completed"
    }
}

You can find the prediction within the prediction key found in document > inference > prediction for document-level predictions: it contains the different fields extracted at the document level, meaning that for multi-pages PDFs, we reconstruct a single object using all the pages.

Detailed Field Information

Using the above Resume example the following are the basic fields that can be extracted.

Document Language

  • document_language: The ISO 639 code of the language in which the document is written.

{
  "document_language": {
    "value": "ENG"
  }
}

Document Type

  • document_type: The type of the document sent. Possible values are the following:

    • RESUME

    • RECOMMENDATION LETTER

    • MOTIVATION_LETTER

{
  "document_type": {
    "value": "RESUME"
  }
}

Given Names

  • given_names: The candidate's first or given names.

{
  "given_names": [
    {
      "value": "Christopher"
    }
  ]
}

Surnames

  • surnames: The candidate's last names.

{
  "surnames": [
    {
      "value": "Morgan"
    }
  ]
}

Nationality

  • nationality: The ISO 3166 code for the country of citizenship of the candidate.

{
  "nationality": {
    "value": null
  }
}

Email Address

  • email_address: The email address of the candidate.

{
  "email_address": {
    "value": "[email protected]"
  }
}

Phone Number

  • phone_number: The phone number of the candidate.

{
  "phone_number": {
    "value": "+44 (0)20 7666 8555"
  }
}

Address

  • address: The location information of the candidate, including city, state, and country.

{
  "address": {
    "value": "177 Great Portland Street, London, W5W 6PQ"
  }
}

Social Networks

  • social_networks_urls: The list of social network profiles of the candidate.

    • name: The name of the social network.

    • url: The URL of the social network.

{
  "social_networks_urls": [
    {
      "name": "LinkedIn",
      "url": "linkedin.com/christopher.morgan"
    }
  ]
}

Profession

  • profession: The candidate's current profession.

{
  "profession": {
    "value": "Senior Web Developer"
  }
}

Job Applied

  • job_applied: The position that the candidate is applying for.

{
  "job_applied": {
    "value": null
  }
}

Languages

  • languages: The list of languages that the candidate is proficient in.

    • language: The language's ISO 639 code.

    • level: The candidate's level for the language.

{
  "languages": [
    {
      "language": "SPA",
      "level": "Fluent"
    },
    {
      "language": "CHI",
      "level": "Beginner"
    },
    {
      "language": "GER",
      "level": "Intermediate"
    }
  ]
}

Hard Skills

  • hard_skills: The position that the candidate is applying for.

{
  "hard_skills": [
    {
      "value": "HTML5"
    },
    {
      "value": "PHP OOP"
    },
    {
      "value": "JavaScript"
    },
    {
      "value": "CSS"
    },
    {
      "value": "MySQL"
    }
  ]
}

Soft Skills

  • soft_skills: The list of the candidate's interpersonal and communication abilities.

{
  "soft_skills": [
    {
      "value": "Project management"
    },
    {
      "value": "Creative design"
    },
    {
      "value": "Strong decision maker"
    },
    {
      "value": "Innovative"
    },
    {
      "value": "Complex problem solver"
    },
    {
      "value": "Service-focused"
    }
  ]
}

Education

  • education: The list of the candidate's educational background.

    • school: The name of the school.

    • degree_type: The type of degree obtained, such as Bachelor's, Master's, or Doctorate.

    • degree_domain: The area of study or specialization.

    • start_year: The year when the education program or course began.

    • start_month: The month when the education program or course began.

    • end_year: The year when the education program or course was completed.

    • end_month: The month when the education program or course was completed.

{
  "education": [
    {
      "degree_domain": "Computer Information Systems",
      "degree_type": "Bachelor of Science",
      "end_month": null,
      "end_year": null,
      "school": "Columbia University, NY",
      "start_month": null,
      "start_year": "2014"
    }
  ]
}

Professional Experiences

  • professional_experiences: The list of the candidate's professional experiences.

    • employer: The name of the company or organization.

    • role: The position or job title held by the candidate.

    • department: The specific department or division within the company.

    • contract_type: The type of contract for the professional experience.

    • start_year: The year when the professional experience began.

    • start_month: The month when the professional experience began.

    • end_year: The year when the professional experience ended.

    • end_month: The month when the professional experience ended.

{
  "professional_experiences": [
    {
      "contract_type": null,
      "department": null,
      "employer": "Luna Web Design, New York",
      "end_month": "05",
      "end_year": "2019",
      "role": "Web Developer",
      "start_month": "09",
      "start_year": "2015"
    }
  ]
}

Certificates

  • certificates: The list of certificates obtained by the candidate.

    • year: The year when a certificate was issued or received.

    • provider: The organization or institution that issued the certificate.

    • name: The name of certification.

    • grade: The grade obtained for the certificate.

{
  "certificates": [
    {
      "grade": null,
      "name": "PHP Framework (certificate):Zend,Codeigniter,Symfony",
      "provider": null,
      "year": null
    },
    {
      "grade": null,
      "name": "Programming Languages:JavaScript,HTML5, PHP OOP,CSS,SQL,MySQL",
      "provider": null,
      "year": null
    }
  ]
}

Last updated

Was this helpful?