cloro WebsiteAPI Get an API key
API Reference › Utilities › Get task status

Get task status

Look up a single asynchronous job by its task ID to see where it stands and, once it wraps up, pull back the finished result.

GET https://api.cloro.cloud/v1/async/task/{taskId}

Overview

Jobs submitted through the async endpoints run in the background, so you check on them by polling this route with the task ID you received at submission time. Each response reports a status that moves through a small set of stages:

StatusMeaning
QUEUEDThe job has been accepted and is waiting for a worker to pick it up.
PROCESSINGThe job is currently running.
COMPLETEDThe job finished cleanly; the response object holds the full result.
FAILEDThe job could not finish; the response object may carry error details.

While a task is still QUEUED or PROCESSING, the payload reports only the current status and an empty response. As soon as it reaches COMPLETED or FAILED, the response object is populated with the outcome.

Path parameters

FieldTypeDescription
taskIdstring (uuid)Identifier of the task you want to inspect, returned when the job was created.

Headers

FieldTypeDescription
AuthorizationstringRequired. Bearer credential in the form Bearer <token>, where the token is your API key.

Response fields

FieldTypeDescription
taskobjectSummary of the job, common to every async task response.
task.idstring (uuid)Unique identifier of the task.
task.taskTypestringWhich extractor the job runs, for example CHATGPT.
task.statusstringCurrent stage: QUEUED, PROCESSING, COMPLETED, or FAILED.
task.priorityintegerScheduling priority assigned to the job.
task.createdAtstring (ISO 8601)Timestamp of when the task was created.
task.idempotencyKeystringClient-supplied key used to guard against duplicate submissions.
creditsobjectCredit accounting for the task.
credits.creditsToChargeintegerCredits the job is expected to cost.
credits.creditsChargedinteger | nullCredits actually billed; null until the job settles.
responseobjectFull result of the job, present only once it is COMPLETED or FAILED.

Response example

{
  "task": {
    "id": "b27a21e1-7c39-4aa2-a347-23e828c426f9",
    "taskType": "CHATGPT",
    "status": "QUEUED",
    "priority": 1,
    "createdAt": "2026-04-09T15:00:00.000Z",
    "idempotencyKey": "batch-chatgpt-001"
  },
  "credits": {
    "creditsToCharge": 10,
    "creditsCharged": null
  },
  "response": {}
}

Notes

Finished and failed tasks stay available for 24 hours after they settle. Within that window you can re-fetch the complete result by task ID; once the window closes, the record and its stored response are removed for good. Any HTML URLs handed back inside a result also lapse 24 hours after they are generated, independent of the task's own retention.

Poll on a sensible interval rather than in a tight loop, and treat a 404 as a task that either never existed or has already aged out. For help, reach us at [email protected].