Docs menu
API reference

Jobs

Polling long-running work.

Poll a job

GET/v1/public/jobs/{jobId}
scopescontent:read

Long-running verbs return 202 with a job id; poll it here. A job that can't complete is failed with code 'timeout' by a reaper, so polling never hangs forever. Rows are kept for 30 days.

Path and query parameters
jobIdrequiredstringJob id
request
curl https://api.taka.ai/v1/public/jobs/JOB_ID \
  -H "Authorization: Bearer taka_live_..."
response
{
  "id": "01J...",
  "kind": "generate_post",
  "status": "succeeded",
  "resourceType": "post",
  "resourceId": "abc123",
  "result": {
    "imageUrl": "https://media.taka.ai/abc123.jpg?signature=..."
  },
  "error": null,
  "creditsCharged": 1,
  "createdAt": "2026-09-01T09:30:00Z",
  "completedAt": "2026-09-01T09:30:00Z"
}

List recent jobs

GET/v1/public/jobs
scopescontent:read

Recent jobs, newest first, with an optional status filter. Job rows are kept for 30 days.

Path and query parameters
statusenum: queued | running | succeeded | failedFilter by job status
limitnumberPage size (default 25, max 100)
request
curl "https://api.taka.ai/v1/public/jobs?status=queued&limit=10" \
  -H "Authorization: Bearer taka_live_..."
response
{
  "jobs": [
    {
      "id": "01J...",
      "kind": "generate_post",
      "status": "succeeded",
      "resourceType": "post",
      "resourceId": "abc123",
      "result": {
        "imageUrl": "https://media.taka.ai/abc123.jpg?signature=..."
      },
      "error": null,
      "creditsCharged": 1,
      "createdAt": "2026-09-01T09:30:00Z",
      "completedAt": "2026-09-01T09:30:00Z"
    }
  ]
}