API Error: Job / operation not found or expired (async task ID unknown)
The status URL or job ID for an asynchronous operation (export, import, render, batch) doesn’t exist any more, or never existed.
Seen on:
REST API
Meaning
Long-running APIs return a job/operation ID and let you poll it. Results are kept only for a retention window (hours to days); polling after that, polling the wrong region/endpoint, or using an ID from a failed submit returns 404 “job not found” or “operation not found”.
Common causes
- Polling after the provider’s retention window
- Job ID from a submit that actually failed
- Wrong region/endpoint or account for the job
- ID truncated or mixed up between jobs
⚡ Quick fix
- Store the job ID with the submit response and check the submit succeeded
- Poll within the retention window, or use the provider’s completion webhook
- Resubmit the job if it expired
Detailed fix by platform
Node.js
- javascript
const { id } = await api.exports.create(params); // persist id + created_at let job; do { await sleep(5000); job = await api.exports.get(id); } while (job.status === 'running');
How to diagnose
- Submit — Did the create call succeed and return this ID?
- Age — Time since submission vs retention policy
- Scope — Same account/region/endpoint?
🧠 Still stuck? Analyze your error
Paste the full message, response headers or stack trace — we'll detect the platform and point to the most likely cause.
Was this page helpful?
Report a correction or suggest an improvement
Last updated 7 Oct 2026