Skip to documentation content
Dataset APIDocs

Builds

Start and monitor asynchronous dataset builder jobs safely.

In this guide
  1. 1Create a build
  2. 2Poll terminal state
  3. 3Cancel safely
  4. 4Avoid duplicate work
In this guide
  1. 1Create a build
  2. 2Poll terminal state
  3. 3Cancel safely
  4. 4Avoid duplicate work

Start a build

POST /v1/builds
JSON body
{
  "dataset_id": "finnish-vehicle-market-listings",
  "definition_version": "0.2.0",
  "source_snapshot_ids": ["snapshot-20260813"]
}
202 JSON
{
  "id": "build_preview_1",
  "status": "queued",
  "dataset_id": "finnish-vehicle-market-listings",
  "definition_version": "0.2.0",
  "created_at": "2026-08-15T09:00:00.000Z"
}

Build lifecycle

StatusMeaningTerminal
queuedAccepted and waiting for capacityNo
runningBuilder is processing source snapshotsNo
completedBuild finished; inspect the resulting release workflowYes
failedBuild stopped with an errorYes
cancelledCancellation was acceptedYes

Poll with a bounded interval

cURL
curl "https://api.datasets.nordicdevhouse.com/v1/builds/build_preview_1" \
  -H "Authorization: Bearer $DATASET_API_KEY" \
  -H "X-API-Version: 1"

Poll GET /builds/{build_id} until a terminal status. Use a bounded interval with jitter and stop after your operational deadline instead of polling continuously.

Cancellation is a state transition

DELETE /v1/builds/{build_id}

A successful cancellation returns the build object. Continue reading the returned status rather than assuming that closing the client connection cancelled server-side work.

Handle ambiguous POST outcomes

Was this page helpful?