Check status of a data export job — Guide

First-request guide for Check status of a data export job.

Export API guide

Check export job status

Poll an asynchronous job and handle accepted, finished, and failed outcomes.

GET /v1/job/{jobId}   •   Authentication: Bearer token

Before you start

Authenticate

Send Authorization: Bearer <token> on every request and keep tokens out of logs and source control.

Follow the workflow

Use the response to drive the next Export API call instead of hard-coding field or object names.

Use the code below

The cURL and JSON examples are copy-ready starting points. Replace IDs, dates, and tokens with values from your tenant.

Common workflows

Workflow 1

Poll accepted or processing jobs with a bounded interval and stop at finished or failed.

Workflow 2

Download resultsUrl promptly; the finished URL is valid for 24 hours.

Workflow 3

If status is failed, record the returned message with jobId for support and retry analysis.

Quickstart

Step 1 — Send the request

curl --request GET \
--url https://uapi.demandbase.com/data/export/v1/job/example \
--header "Authorization: Bearer $DB_API_KEY" \
--header "Accept: application/json"

Step 2 — Read the response

{
"jobId": "dcb34525-2baa-4f54-8c11-9e6175ecbc74",
"jobName": "AccountExportJob",
"entityType": "account",
"jobStatus": "accepted",
"createdAt": "2026-03-24T16:43:57.378Z",
"updatedAt": null
}

Request anatomy

PartRequiredWhat to send
jobIdpathIdentifier returned when the export job was created or listed.
AuthorizationheaderBearer token with permission to read the job.

Response anatomy

FieldType / stateHow to use it
jobStatusaccepted / processing / finished / failedCurrent asynchronous state.
resultsUrlstringDownload URL supplied when the job finishes; valid for 24 hours.
messagestringFailure detail when the job ends in failed status.

Rules and constraints

  • Use exponential backoff or a bounded polling interval; avoid tight loops.
  • Treat finished and failed as terminal states.
  • Download the finished URL within 24 hours and do not expose it to unauthorized clients.

Empty results

A status response without resultsUrl is expected while a job is accepted or processing. Wait and poll again; do not interpret that as an empty export.

Errors and recovery

Handle these responses explicitly so your integration can report an actionable cause and next step.

StatusMeaningRecovery
401The bearer token is missing, expired, or invalid.Refresh the token and retry the status request.
403The caller cannot read this job.Use a token with access to the tenant and export job.
404The jobId does not exist or is not visible.Check that the ID was stored exactly and belongs to the current tenant.

Next steps