API Reference
Everything you need to integrate Resume Parser into your application. This reference documentation is provided as a preview. Subscribers receive comprehensive HTML and PDF documentation.
Overview
Two API variants for different integration patterns.
Parse API
For backend services
Send a PDF file to POST /parse with your API key. Receive parsed JSON directly.
Upload API
For client-side apps
Upload directly from browser to POST /upload, then fetch results from your backend via GET /upload-results.
Performance
Processing time scales with document complexity.
Rate limit: 30 requests per minute. Custom limits available for enterprise.
Response schema
Consistent, predictable structure for every parsed resume.
{
"emailAddress": <string>,
"firstName": <string>,
"lastName": <string>,
"phoneNumber": <string>,
"location": <string>,
"linkedInLink": <string>,
"otherLinks": [<string>],
"workExperiences": [
{
"title": <string>,
"organization": <string>,
"location": <string | null>,
"skillsDescription": <string>,
"startMonth": <number>,
"startYear": <number>,
"endMonth": <number>,
"endYear": <number>,
"isOngoing": <boolean>
}
],
"workExperiencesDiscardedItems": <boolean>,
"educations": [
{
"degree": <string>,
"school": <string>,
"year": <number>,
"endYear": <number | null>,
"notes": <string>,
"location": <string | null>
}
],
"educationsDiscardedItems": <boolean>,
"fluentLanguages": [<string>],
"languages": [
{ "language": <string>, "level": <string> }
]
}/v1/parseParse a resume PDF and receive structured JSON. Best for backend integrations.
Bearer <api-key>multipart/form-data1MBcurl 'https://<base-url>/v1/parse' \
-X POST \
-H 'authorization: Bearer <api-key>' \
-H 'content-type: multipart/form-data' \
-F 'file=@resume.pdf;type=application/pdf'const formData = new FormData();
formData.append("file", fs.createReadStream("resume.pdf"));
const response = await fetch("https://<base-url>/v1/parse", {
method: "POST",
headers: { authorization: "Bearer <api-key>" },
body: formData,
});
const data = await response.json();/v1/uploadUpload directly from browser. Returns an upload ID to fetch results from your backend.
clientId=<client-id>Configured per clientconst file = document.querySelector('input[type="file"]').files[0];
const formData = new FormData();
formData.append("file", file, "resume.pdf");
const response = await fetch(
`https://<base-url>/v1/upload?clientId=<client-id>`,
{ method: "POST", body: formData }
);
const { uploadId } = await response.json();
// Send uploadId to your backend{ "uploadId": "abc123..." }/v1/upload-resultsRetrieve parsing results using the upload ID. Call from your backend with API key.
Bearer <api-key>uploadId=<upload-id>curl 'https://<base-url>/v1/upload-results?uploadId=<upload-id>' \
-H 'authorization: Bearer <api-key>'const response = await fetch(
`https://<base-url>/v1/upload-results?uploadId=${uploadId}`,
{ headers: { authorization: "Bearer <api-key>" } }
);
const parsedResume = await response.json();Ready to integrate?
Get in touch to receive your API credentials and detailed documentation.
Contact us