Skip to main content
GET
{base_url}
/
digitization
/
v1
/
batch
/
{batch_id}
/
status
Get Batch Status
curl --request GET \
  --url https://api.example.com/{base_url}/digitization/v1/batch/{batch_id}/status \
  --header 'Content-Type: <content-type>' \
  --header 'x-transaction-key: <x-transaction-key>'
Returns the overall status of a population migration batch, including processing progress and record counts. Use this endpoint to poll for batch completion after uploading a CSV file.

Authentication

x-transaction-key
string
required
Your API key. Get your key →
Content-Type
string
required
Must be application/json

Path Parameters

batch_id
string
required
The Batch ID assigned after approval (visible in the Population Migration Requests table).

Code Examples

curl "{base_url}/digitization/v1/batch/{batch_id}/status" \
  -H "Accept: application/json" \
  -H "Content-Type: application/json" \
  -H "x-transaction-key: your-transaction-key"

Response

200 - Success
{
  "data": {
    "status": "COMPLETED",
    "total_records": 2,
    "processed_records": 2,
    "errored_records": 1,
    "csv_template_type": "EID",
    "csv_header": [
      "customer_id",
      "eid_number",
      "onboarding_date",
      "consent_version",
      "name_on_eid",
      "eid_issue_date",
      "eid_expiry_date",
      "dob"
    ],
    "created_at": "2026-03-13T16:35:19.192978Z",
    "updated_at": "2026-03-13T16:35:20.230602Z"
  },
  "message": "Batch status fetched successfully",
  "success": true
}

Response Fields

FieldTypeDescription
successBooleanRequest success status.
messageStringHuman-readable status message.
data.statusStringCurrent batch status: PENDING, PROCESSING, COMPLETED, or FAILED.
data.total_recordsIntegerTotal number of records in the uploaded CSV.
data.processed_recordsIntegerNumber of records that have been processed so far.
data.errored_recordsIntegerNumber of records that encountered errors during processing.
data.csv_template_typeStringThe document type template used (e.g., EID).
data.csv_headerArrayList of column headers detected from the uploaded CSV file.
data.created_atStringTimestamp when the batch was created (ISO 8601 format).
data.updated_atStringTimestamp of the last status update (ISO 8601 format).

Usage Notes

Poll this endpoint periodically (e.g., every 30 seconds) after batch submission to track processing progress. A status of COMPLETED means all records have been processed. Check errored_records to determine if any records failed.
Once the batch is COMPLETED, use the Get Batch Records API to retrieve individual record results.