Polling and downloading
A queued conversion hands you a job id. These two endpoints tell you when it is ready and give you the file.
Checking status
GET https://rework.live/api/v1/jobs/:id, with the same bearer token. While the job is waiting you also get its position in the queue and an estimate, so a client can show something more useful than a spinner.
curl https://rework.live/api/v1/jobs/6a84860000000000000000ab \
-H "Authorization: Bearer rlv_your_key_here"| Status | Meaning |
|---|---|
| queued | Waiting for a worker. queuePosition is set. |
| running | Being converted now. |
| done | Finished. download is ready. |
| failed | Did not convert. Nothing was counted against your quota. |
Downloading the result
GET https://rework.live/api/v1/jobs/:id/download returns the converted bytes with the right content type and a filename. It works until the job expires, which is decided by the retention window on your plan.
curl -L -o converted.webp \
https://rework.live/api/v1/jobs/6a84860000000000000000ab/download \
-H "Authorization: Bearer rlv_your_key_here"Jobs belong to keys
A job created by one account cannot be read by another. Asking for someone else's job returns 404, not 403, and that is deliberate: a job id is guessable enough that distinguishing "not yours" from "does not exist" would leak the fact that other people's conversions exist.
Poll at a sensible interval — the estimate in the response is there to pace you. Polling in a tight loop counts against your hourly rate limit like anything else.