Jobs API
Monitor background jobs, track progress, and manage long-running operations.
3 min read
Jobs API
Monitor background jobs, track progress, and manage long-running operations like workflow runs, content publishing, and data syncs.
Tip
Publish operations and workflow runs return job IDs that you can track here. Use the job ID from those responses to poll for progress and view logs.
List Jobs
GET /api/v1/jobs?status={status}&category={category}&limit=20
Query Parameters
statusstring
Filter by job status: `"pending"`, `"running"`, `"completed"`, `"failed"`, or `"cancelled"`.
categorystring
Filter by job category: `"seo"`, `"ai"`, `"sync"`, or `"export"`.
limitnumber
Maximum number of jobs to return.
Response
idstring
Unique identifier for the job.
namestring
Human-readable name describing the job.
typestring
Internal job type identifier.
categorystring
Job category: `"seo"`, `"ai"`, `"sync"`, or `"export"`.
statusstring
Current status: `"pending"`, `"running"`, `"completed"`, `"failed"`, or `"cancelled"`.
progressobject
Progress information with `total`, `completed`, and `failed` counts.
createdAtnumber
Timestamp (ms) when the job was created.
completedAtnumber
Timestamp (ms) when the job finished, or `null` if still running.
Get Job
GET /api/v1/jobs/:id
Returns the job including its log entries.
Response
idstring
Unique identifier for the job.
namestring
Human-readable name describing the job.
typestring
Internal job type identifier.
categorystring
Job category: `"seo"`, `"ai"`, `"sync"`, or `"export"`.
statusstring
Current status: `"pending"`, `"running"`, `"completed"`, `"failed"`, or `"cancelled"`.
progressobject
Progress information with `total`, `completed`, and `failed` counts.
createdAtnumber
Timestamp (ms) when the job was created.
completedAtnumber
Timestamp (ms) when the job finished, or `null` if still running.
logsobject[]
Array of log entries for the job.
logs[].timestampnumber
Timestamp (ms) when the log entry was created.
logs[].levelstring
Log level: `"info"`, `"warn"`, or `"error"`.
logs[].messagestring
Human-readable log message.
Cancel Job
POST /api/v1/jobs/:id/cancel
Cancels a pending or running job. Entities that have already been processed are not rolled back.
Response
idstring
The ID of the cancelled job.
statusstring
Always `"cancelled"` on success.
Warning
Cancellation is best-effort. If a step is currently executing, it will finish before the job stops. Already-completed steps are not rolled back.
Was this helpful?
