Tarefas assíncronas

Obter Status da Tarefa

Recupere o status e o resultado de qualquer tarefa assíncrona usando a poll_url retornada pelos endpoints de criação

GET
/v1/tasks/{id}

Visão geral

Use este endpoint para polling assíncrono unificado entre tipos de tarefa como geração de vídeo, imagem, música e 3D.

Se uma resposta de criação incluir poll_url, chame esse caminho exato. Para workflows assíncronos mais recentes, poll_url pode apontar para /v1/tasks/{id}.

Parâmetros de caminho

idstringpathobrigatório

O ID da tarefa retornado pela requisição de criação.

Resposta

Campos de resultado, erro, timestamps e modelo são retornados quando disponíveis para a tarefa.

idstring

Identificador da tarefa.

task_idstring

Alias do identificador de tarefa assíncrona.

poll_urlstring

URL de polling preferencial quando a resposta de criação a fornece.

statusstring

Status da tarefa, como pending, processing, completed ou failed. Tarefas canceladas são representadas como failed com cancelled: true.

cancelledboolean

true quando uma tarefa assíncrona em fila foi cancelada antes da execução.

cancellation_statusstring

Marcador de cancelamento. Presente como cancelled quando o cancelamento é bem-sucedido.

dataarray

Para tarefas de imagem concluídas, os resultados de imagem gerados são retornados aqui. Tarefas de imagem retornam URLs em data[].url.

progressnumber

Valor de progresso opcional. Retornado apenas quando houver um progresso real disponível; use status para determinar a conclusão.

video_urlstring

URL do asset resultante quando a tarefa é concluída e produz um vídeo.

videoobject

Objeto único de vídeo com url, duration, width e height quando disponíveis.

videosarray

Múltiplos objetos de vídeo quando a tarefa de geração retornar mais de uma saída.

createdinteger

Timestamp de criação.

updatedinteger

Timestamp da última atualização.

modelstring

Modelo usado para a tarefa.

errorstring | object

Mensagem de erro quando a tarefa falha.

Comportamento de erro

Uma tarefa pública expirada ou indisponível pode retornar 404 async_task_not_found. Se não for possível confirmar a titularidade para a chave API atual, a resposta será 403 task_not_owned.

{
  "error": {
    "message": "Task not found or no longer available.",
    "type": "invalid_request_error",
    "code": "async_task_not_found"
  }
}

Exemplos

Requisição

cURL
curl "https://api.tokenlab.sh/v1/tasks/ldtask_aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" \
  -H "Authorization: Bearer sk-your-api-key"
Python
import requests

poll_url = "/v1/tasks/ldtask_aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
response = requests.get(
    f"https://api.tokenlab.sh{poll_url}",
    headers={"Authorization": "Bearer sk-your-api-key"},
)
print(response.json())
JavaScript
const pollUrl = '/v1/tasks/ldtask_aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa';
const response = await fetch(`https://api.tokenlab.sh${pollUrl}`, {
  headers: { Authorization: 'Bearer sk-your-api-key' },
});
console.log(await response.json());
{  "id": "string",  "status": "pending",  "progress": 0,  "created": 0,  "updated": 0,  "model": "string",  "video": {    "url": "string",    "duration": 0,    "width": 0,    "height": 0  },  "error": "string",  "error_details": {    "projection_version": 0,    "status": 400,    "message": "string",    "type": "string",    "code": "string",    "param": "string",    "retryable": true,    "upstream": {      "source": "string",      "code": "string",      "message": "string",      "param": "string"    }  },  "task_id": "string",  "poll_url": "string",  "cancelled": true,  "cancellation_status": "cancelled",  "billing_transaction_id": "string",  "video_url": "string",  "videos": [    {}  ],  "data": [    {}  ],  "audio_url": "string",  "title": "string",  "lyrics": "string",  "model_url": "string",  "glb_url": "string",  "fbx_url": "string"}

Autorização

BearerAuth
AuthorizationBearer <token>

Autenticação por Chave de API. Crie ou gerencie chaves de API em Dashboard > API > API Keys.

Local: header

Parâmetros de caminho

id*string

O ID da tarefa assíncrona retornado por id / task_id, ou incorporado na poll_url

Resposta

application/json

application/json

application/json

application/json