Skip to main content
Every document verification session begins here. Call this endpoint once per application to create a flow, then use the returned flow_uuid in all subsequent /multiupload, /status, and /extracts calls.

Endpoint

POST /v3/verification/flow/init

Request headers

Token
string
required
JWT access token obtained from POST /authtoken.

Request body

product_type
string
required
The product type that governs which document set and cross-checks apply to this flow.
application_id
string
required
Your internal identifier for the loan application or case. Atlas echoes this value back in callback payloads.
auth_url
string
required
A URI that Atlas calls to authenticate its callbacks to your system before delivering results. Must be reachable from Atlas servers.
callback_url
string
required
A URI where Atlas POSTs the extracted OCR data and cross-check results when processing is complete. Must accept POST requests with a JSON body.
flow_params
object
An optional object for additional flow configuration. Pass an empty object {} if you have no extra parameters.

Response

flow_uuid
string
A UUID that uniquely identifies this verification flow. Save this value — you will pass it to every subsequent API call in this session.

Example

curl --request POST \
  --url https://api.helloatlas.in/v3/verification/flow/init \
  --header "Token: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..." \
  --header "Content-Type: application/json" \
  --data '{
    "product_type": "POC_CDL",
    "application_id": "12321321",
    "auth_url": "https://your-system.example.com/atlas/auth",
    "callback_url": "https://your-system.example.com/atlas/callback",
    "flow_params": {}
  }'

Error responses

StatusMeaning
400Missing or empty required parameters: ['application_id'] — one or more required body fields are absent.
401Invalid token — the Token header is missing, expired, or invalid.
Atlas will POST the final extraction results to your callback_url when processing completes. Ensure that URL is publicly accessible and returns an HTTP 2xx response. You can also poll GET /status and fetch results manually via GET /extracts.