Get account task
Read your account data with a system access token
Note for users in mainland China: Please use https://toapis.cn as the API endpoint (Base URL). Replace https://toapis.com with https://toapis.cn in the examples in this document.
See Getting started for authentication, pagination, and errors.
Behavior
Pagination defaults to 24 hours, allows up to 31 days, and sorts by internal ID descending. Batch ids mode has no pagination and no meta.from/to. Returns persisted task metadata only, without result URLs or prompts. GET does not poll providers, settle, refund, or send webhooks. Video storage or settlement still in progress yields processing and finished_at=null; an unverifiable gate returns 503. Unknown billing is null. Pending billing omits amounts; confirmed states are settled or refunded.
Authentication
AuthorizationstringheaderrequiredUse Bearer YOUR_SYSTEM_ACCESS_TOKEN. Model API keys are not accepted. X-User-Id is not required.
Parameters
task_idstringpathrequiredPlatform task ID, not a business ID. Leading or trailing whitespace and control characters are rejected.
Constraints: minLength=1; maxLength=191.
requestExample
curl --request GET \
--url 'https://toapis.com/api/v1/account/tasks/task_example_01' \
--header 'Authorization: Bearer YOUR_SYSTEM_ACCESS_TOKEN'import requests
response = requests.get(
"https://toapis.com/api/v1/account/tasks/task_example_01",
headers={"Authorization": "Bearer YOUR_SYSTEM_ACCESS_TOKEN"},
timeout=30,
)
response.raise_for_status()
print(response.json())const url = new URL("https://toapis.com/api/v1/account/tasks/task_example_01");
const response = await fetch(url, {
headers: { Authorization: "Bearer YOUR_SYSTEM_ACCESS_TOKEN" },
signal: AbortSignal.timeout(30_000),
});
if (!response.ok) {
throw new Error(`HTTP ${response.status}: ${await response.text()}`);
}
console.log(await response.json());Response fields
Examples use fictional data and assume credits_per_usd="100". Use the conversion rate returned by the API.
codeintegerNumeric result code; 0 means success.
messagestringResponse message; empty on success. Error messages are localized.
dataobjectResult object for this query.
data.idstringPlatform task ID used for task details, not a business ID.
data.client_business_idstring | nullBusiness ID saved when creating the task, distinct from the platform task ID. null when unknown or inapplicable.
data.api_key_idstring | nullAssociated model API key ID; null when no key is associated.
data.typestringTask type. Values: image, video, music, other.
data.modelstringModel identifier.
data.statusstringPublic task state. Video storage or settlement still in progress remains processing. Values: pending, processing, completed, failed.
data.progressintegerTask progress percentage, from 0 to 100.
data.created_atstring | nullCreation time. RFC 3339 timestamp with a timezone. null when unknown or inapplicable.
data.finished_atstring | nullConfirmed terminal task time; null while processing or when not confirmed. RFC 3339 timestamp with a timezone.
data.billingobject | nullConfirmed task billing information; null when it cannot be confirmed.
data.billing.statusstringTask billing state. Amounts are omitted for pending; confirmed states are settled or refunded. Values: pending, settled, refunded.
data.billing.creditsstringConfirmed task billing amount in credits. Omitted for pending. Returned as a decimal string to preserve precision.
data.billing.cost_usdstringConfirmed task billing amount in USD. Omitted for pending. Returned as a decimal string to preserve precision.
responseExample
{
"code": 0,
"message": "",
"data": {
"id": "task_example_01",
"client_business_id": "order_example_01",
"api_key_id": "42",
"type": "video",
"model": "example-video-model",
"status": "completed",
"progress": 100,
"created_at": "2026-11-01T08:00:00Z",
"finished_at": "2026-11-01T08:01:00Z",
"billing": {
"status": "settled",
"credits": "2",
"cost_usd": "0.02"
}
}
}