You can check the status of any task by querying the task API:{TASK_ID}/status/

This API returns the following data:

  • Task ID
  • Time the task started, or null if it hasn’t started yet (but is in the queue)
  • Time the task ended, or null if it is still running, or hasn’t started yet
  • If any Outputs are saved: a dictionary of outputs, containing pre-signed URLs to download the files
  • The status of the task


curl -X GET \
  --header "Content-Type: application/json" \
  --user "{CLIENT_ID}:{CLIENT_SECRET}" \


  "task_id": "edbcf7ff-e8ce-4199-8661-8e15ed880481",
  "started_at": "2023-04-24T22:44:06.911920Z",
  "ended_at": "2023-04-24T22:44:07.184763Z",
  "outputs": {
    "my-output-1": {
      "path": "output_path",
      "name": "my-output-1",
      "url": ""
  "status": "COMPLETE"

Task Statuses

These are all possible states for a task:

PENDINGThe task is enqueued and has not started yet.
RUNNINGThe task is running.
COMPLETEThe task completed without any errors.
RETRYThe task is being retried. Defaults to 3, unless max_retries is provided in the function decorator.
CANCELLEDThe task was cancelled by the user.
TIMEOUTThe task timed out, based on the timeout provided in the function decorator.
FAILEDThe task did not complete successfully.