Overview

Introduction

The Resume Classification API provides resume parsing and classification capabilities. It extracts and structures candidate information from resumes, including skills, work experience, education, certifications, and other relevant attributes.

The classified resume data returned by this API is generated through the Resume Parser and can optionally include Lightcast taxonomy classification support based on access level.

Key capabilities include:

  • Locale detection-based parsing
  • Supported document formats: PDF, TXT
    (DOC, DOCX, ODT, WPD, WPS, HTML, HTM, and RTF require enterprise access)
  • OCR support for the following locales:
    en-US, en-CA, en-AU, en-NZ, en-AE, en-AR, en-BR, en-MX, en-AT, en-CH, en-IT, en-BE, en-ES, en-NL, en-FR, en-SE, en-GB, en-IE, en-IN, en-JP, en-ZA, fr-FR, fr-BE
  • Supported image formats for OCR: JPG (JPEG), PNG, TIFF, Image-based PDF, GIF, BMP, WEBP, and PNM

Note: By default, clients are allowed a maximum of 10 requests per second. Contact us if you require adjustments.

Request Headers

(*) Indicates the action is required

All requests must include the following headers:

Header KeyValueDescription
*AuthorizationBearer <ACCESS_TOKEN>OAuth bearer token obtained from the Authentication API. Required for all authenticated requests.
Content-Typeapplication/json or multipart/form-dataapplication/json for JSON requests; multipart/form-data when uploading files.

Authentication

All endpoints require an OAuth 2.0 Bearer Token. Tokens are granted through the Authentication API at https://auth.emsicloud.com/connect/token and are valid for 1 hour.

For the Resume Classification API you may request a token with one of these scopes depending on access:

Scope nameDescriptionAccess
lightcast_openTrial: allows PDF and TXT documents for resume parsing.https://lens.emsiservices.com/resume/parse
parse_apiEnterprise: allows all supported document types for resume parsing.https://lens.emsiservices.com/resume/parse
classification_apiEnterprise + classification: all document types plus Lightcast taxonomy classification support.https://lens.emsiservices.com/resume/parse and https://lens.emsiservices.com/resume/classify

Sample Request

curl --request POST \
  --url https://auth.emsicloud.com/connect/token \
  --header 'Content-Type: application/x-www-form-urlencoded' \
  --data client_id=CLIENT_ID \
  --data client_secret=CLIENT_SECRET \
  --data grant_type=client_credentials \
  --data scope=lightcast_open

Request Parameters

ParameterTypeDescription
client_idstringThe client ID provided by Lightcast.
client_secretstringThe client secret associated with your client ID.
grant_typestringMust be set to client_credentials.
scopestringOne of: lightcast_open, parse_api, classification_api.

Sample Response

{
  "access_token": "<ACCESS_TOKEN>",
  "expires_in": 3600,
  "token_type": "Bearer"
}

Note that the Tokens expire after 3600 seconds. To maintain uninterrupted access, refresh the token before it expires. To know more about this, refer to the Authentication guide.

Response Parameters

ParameterTypeDescription
access_tokenstringThe token used to authorize API requests.
expires_inintegerNumber of seconds before the token expires.
token_typestringIndicates the type of token. (Always Bearer)

Status Code Summary

CodeMeaningDescription
200OKRequest was successful.
400Bad RequestThe request was unacceptable, often due to missing a required parameter.
401UnauthorizedAuthentication error.
404Not FoundResource not found.
🔗

For a complete list of HTTP status codes and their meanings, refer here.