Pixloomdocs

Check a job

GET /api/v1/job/:jobId tells you whether an image is ready yet.

curl https://pixloom.dev/api/v1/job/3f6c2a10-... \
  -H "Authorization: Bearer sk_live_..."
{
  "jobId": "3f6c2a10-...",
  "status": "completed",
  "imageUrl": "https://...",
  "imageId": "b71e...",
  "createdAt": "2026-09-15T12:00:00.000Z",
  "completedAt": "2026-09-15T12:00:14.000Z"
}

Works with either kind of key, so the script tag can poll its own jobs from the browser. There is no rate limit on polling, but once a second is plenty.

Status values

StatusMeaning
queuedAccepted, not started.
processingThe model is working.
completedimageUrl and imageId are set.
failederror says why. Start a new generation.

Fields appear only once they have a value. A queued job returns jobId, status and createdAt and nothing else, so check for imageUrl rather than assuming it is there.

Caching

While a job is in flight the response is no-cache. Once it is completed or failed it becomes cacheable for a minute, which keeps a page full of images from hammering the same job.

Jobs expire

Jobs live for an hour. After that this endpoint returns 404, and so does a job belonging to a different account. The image itself is not lost: it stays in your dashboard and at /api/v1/image/:id forever. Store the imageId when a job completes and you never need the job again.

Responses

StatusBody
200The job, as above.
401Missing or invalid key.
403Account not approved.
404{ "error": "Job not found" }. Unknown, expired, or not yours.

On this page