Reference

CV Extract V2 (legacy)

Legacy

Reference for the legacy asynchronous V2 resume parser. Kept for existing integrations; use V3 for new ones.

POST/api/v2/parser

Legacy asynchronous contract: the request is accepted with 202 and the result is posted to webhook_url.

Authentication
X-API-Key header
Billing
1 credit when the request is accepted (HTTP 202)
Client timeout
Client timeout ≥ 50 s

Request body

Content type multipart/form-data

  • filefilerequired

    The resume: PDF, DOCX, ODT, PPTX, ODP, TXT, JPG or PNG.

  • webhook_urlstring (URL)required

    URL that receives the result when processing ends.

  • application_idstring

    Your own reference, echoed in the webhook payload.

Response

202Accepted. The result is sent to webhook_url later.

  • messagestring
    "CV processing initiated."
  • bodynull
  • errorboolean
    false

Errors

  • 400
    An error occurred while processing the document or extracting its text. Please try again later.

    Any error from the legacy parser is returned with its status code (400 for a missing file or webhook_url, unsupported type…) and this generic message.

    Do not retry

  • 401
    Missing API Key

    The X-API-Key header is absent. Authorization: Bearer is not accepted.

    Do not retry

  • 401
    Invalid API Key

    The key is malformed, unknown or revoked. Rotating a key revokes the previous one immediately.

    Do not retry

  • 403
    Insufficient credits available

    The account has no credit left.

    Fix, then retry

  • 415
    Content-Type must be multipart/form-data

    The request is not multipart/form-data.

    Do not retry

  • 503
    Credit service temporarily unavailable

    Credits could not be checked or deducted. No credit is consumed, including when the operation itself had completed. Header Retry-After: 1.

    Retry with backoff

Behavior

Asynchronous
The gateway waits up to 45 seconds for the request to be accepted. The webhook then receives {"status": "success", …} with the parsed resume, or {"status": "failure", "error_code": …, "error_message": …}.
Billing
The credit is consumed when the request is accepted, even if processing fails later.
curl -X POST https://onlineresumeparser.com/api/v2/parser \
  -H "X-API-Key: $HIRELAYER_API_KEY" \
  -F "[email protected];type=application/pdf" \
  -F "webhook_url=https://example.com/hirelayer/webhook" \
  -F "application_id=app_123"
{
  "message": "CV processing initiated.",
  "body": null,
  "error": false
}