Imágenes

Obtener estado de la imagen

Obtiene el estado y el resultado de una tarea de generación de imágenes asíncrona

GET
/v1/tasks/{id}

Parámetros de ruta

idstringpathobligatorio

El ID de la tarea devuelto por la solicitud inicial de generación de imágenes.

Si la respuesta de creación incluyó poll_url, prefiera llamar a esa URL exacta para el sondeo (polling). Algunas tareas de imagen pueden mostrar un poll_url bajo /v1/tasks/{id} en lugar de la ruta de estado específica de la imagen.

También puedes consultar IDs públicos de tareas de imagen como ldtask_... en /v1/images/{id}. Este alias de compatibilidad usa la misma autorización, verificación de propiedad, cabeceras de facturación, snapshots terminales y forma de respuesta que /v1/images/generations/{id}.

Una tarea pública caducada o no disponible puede devolver 404 async_task_not_found. Si no se puede confirmar que pertenece a la clave API actual, devuelve 403 task_not_owned.

Respuesta

Los campos de resultado, error, marcas de tiempo y modelo se devuelven cuando están disponibles para la tarea.

idstring

Identificador de la tarea.

poll_urlstring

URL de sondeo preferida cuando la respuesta de creación la proporciona.

createdinteger

Marca de tiempo Unix de creación.

task_idstring

El identificador de la tarea.

statusstring

Estado de la tarea: pending, processing, completed o failed.

dataarray

Matriz de imágenes generadas (se completa cuando el status es completed).

Cada objeto contiene:

  • url (string): URL de la imagen generada
  • revised_prompt (string): Revisión opcional del prompt cuando el modelo seleccionado la devuelve
errorstring | object

Mensaje de error (solo presente cuando el status es failed).

Solicitud

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

Respuesta

{
  "created": 1706000000,
  "id": "ldtask_aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
  "task_id": "ldtask_aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
  "poll_url": "/v1/tasks/ldtask_aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
  "status": "pending",
  "data": []
}

Mejores prácticas de sondeo (Polling)

Consulta cada 3–5 segundos durante pending o processing y detente en completed o failed.

import requests
import time

def poll_image_task(task_id, api_key, max_wait=300, interval=3):
    """Poll for image generation result with timeout."""
    url = f"https://api.tokenlab.sh/v1/tasks/{task_id}"
    headers = {"Authorization": f"Bearer {api_key}"}

    start_time = time.time()
    while time.time() - start_time < max_wait:
        response = requests.get(url, headers=headers, timeout=30)
        response.raise_for_status()
        data = response.json()

        if data["status"] == "completed":
            return data["data"][0]["url"]
        elif data["status"] == "failed":
            raise Exception(data.get("error", "Generation failed"))

        time.sleep(interval)

    raise TimeoutError(f"Task {task_id} did not complete within {max_wait}s")

# Usage
image_url = poll_image_task("ldtask_aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa", "sk-your-api-key")
print(f"Generated image: {image_url}")

Autorización

BearerAuth
AuthorizationBearer <token>

Autenticación con API Key. Cree o gestione API keys en Dashboard > API > API Keys.

Ubicación: header

Parámetros de ruta

id*string

El ID de tarea asíncrona devuelto por id / task_id, o incrustado en poll_url

Respuesta

application/json

application/json

application/json

application/json