/api/v1/jobs/:idJob status
Check a generation job or follow it live with SSE events.
Generating, correcting, adapting or translating is not instant: the API returns a job and the AI finishes it later. You can check its status whenever you want, listen to it live, or wait for the webhook. Requires the read permission (or any of the others).
Check the status
The status field is queued, running, succeeded, failed or canceled. When it finishes well, creativeId is the concept you can read with GET /api/v1/banners/:id and appUrl opens that concept in the app's studio. If it fails, error has a code and a message, and the credits are returned.
id, typegenerate, edit, adapt or translate.statuscreativeId, versionNoappUrlnull while it runs, if it failed, or with a test key.errornull or the reason for the failure.creditsChargedcreatedAt, startedAt, finishedAtLive events (SSE)
SSE (Server-Sent Events) is a stream of live notices over HTTP: you open the connection and the server sends you the progress.
The endpoint GET /api/v1/jobs/:id/events opens a text/event-stream stream. First it sends a status event with the current status and then, as it progresses, queued, running, progress (with step and pct) and finally succeeded or failed, and the server closes the stream.
- The stream sends a heartbeat line (
: ping) every15seconds to keep the connection alive. - It closes on its own after
5minutes at most: reconnect or queryGET /api/v1/jobs/:id. - If the job had already finished, you receive
statusand the stream closes. - A key without permission or a foreign id responds
401,403or404before the stream opens.
bm_test_ key, job_test_… ids already come as succeeded, with test: true and no credits charged.