Jobs API
Base URL: https://dev.mapprism.com/ordo
All endpoints require Authorization: Bearer <API_TOKEN>.
POST /jobs
Submit a new job.
Request body:
json
{
"recipe": { ... }, // inline recipe or recipe_id (see below)
"inputs": { ... }, // artifact map — required
"params": { ... }, // per-step params — required if steps declare param_keys
"outputs": { ... } // artifact destination declarations — optional
}See Submitting a Job for a full worked example.
Response (201):
json
{ "id": 4 }Returns the new job's integer ID.
Errors:
400— validation failed (missing params, unknown executor, bad artifact refs, etc.)401— missing or invalid auth token
GET /jobs/:id
Poll a job's current state.
Response (200):
json
{
"job": {
"id": 3,
"recipe_id": 2,
"status": "success",
"created_at": "2026-02-24T18:09:31.276Z",
"started_at": "2026-02-24T18:09:50.082Z",
"finished_at": "2026-02-24T18:12:05.483Z",
"error": null,
"params": {
"reproject": {
"source_epsg": "EPSG:2271",
"target_epsg": "EPSG:3857"
}
}
},
"progress": {
"percentage": 1,
"completed_steps": 2,
"total_steps": 2
},
"duration_ms": 135401,
"timeline": [
{
"step": "reproject",
"type": "REPROJECT_LAS",
"status": "success",
"started_at": "2026-02-24T18:09:50.072Z",
"finished_at": "2026-02-24T18:10:15.505Z",
"duration_ms": 25433
}
],
"steps": [
{
"job_id": 3,
"step_id": "reproject",
"step_type": "REPROJECT_LAS",
"status": "success",
"started_at": "2026-02-24T18:09:50.072Z",
"finished_at": "2026-02-24T18:10:15.505Z",
"error": null
}
],
"artifacts": [ ... ],
"outputs": [
{
"artifact_name": "step:ept.output_ept",
"path": "development/results/piney-dam/ept"
}
]
}Job statuses: pending → running → success | failed | partial
Step statuses: pending → running → success | failed | skipped
Errors:
404— job not found401— missing or invalid auth token
GET /jobs
List all jobs.
Response (200):
json
[
{
"id": 3,
"recipe_id": 2,
"status": "success",
"created_at": "2026-02-24T18:09:31.276Z",
...
}
]Returns an array of job objects. Fields match the job object from GET /jobs/:id.