Bilder

Bildstatus abrufen

Abrufen des Status und Ergebnisses einer asynchronen Bildgenerierungsaufgabe

GET
/v1/tasks/{id}

Pfadparameter

idstringpatherforderlich

Die Task-ID, die von der ursprünglichen Bildgenerierungsanfrage zurückgegeben wurde.

Wenn die Antwort der Erstellung eine poll_url enthält, sollte vorzugsweise genau diese URL für das Polling aufgerufen werden. Einige Bildaufgaben können eine poll_url unter /v1/tasks/{id} anstelle des bildspezifischen Statuspfads bereitstellen.

Du kannst öffentliche Bild-Task-IDs wie ldtask_... auch über /v1/images/{id} abfragen. Dieser Kompatibilitätsalias verwendet dieselbe Authentifizierung, Ownership-Prüfung, Billing-Header, terminalen Snapshots und Antwortform wie /v1/images/generations/{id}.

Ein abgelaufener oder nicht verfügbarer öffentlicher Task kann 404 async_task_not_found zurückgeben. Ist die Zugehörigkeit zum aktuellen API-Schlüssel nicht feststellbar, lautet die Antwort 403 task_not_owned.

Antwort

Ergebnis-, Fehler-, Zeitstempel- und Modellfelder werden zurückgegeben, wenn sie für den Task verfügbar sind.

idstring

Task-Bezeichner.

poll_urlstring

Bevorzugte Polling-URL, wenn die Create-Antwort sie bereitstellt.

createdinteger

Unix-Zeitstempel der Erstellung.

task_idstring

Die Aufgabenkennung.

statusstring

Aufgabenstatus: pending, processing, completed oder failed.

dataarray

Array der generierten Bilder (gefüllt, wenn der status completed ist).

Jedes Objekt enthält:

  • url (string): URL des generierten Bildes
  • revised_prompt (string): Optionale vom Anbieter zurückgegebene Prompt-Überarbeitung, wenn das Upstream-Modell sie meldet
errorstring | object

Fehlermeldung (nur vorhanden, wenn der status failed ist).

Anfrage

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

Antwort

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

Best Practices für Polling

Bei pending oder processing alle 3–5 Sekunden abfragen und bei completed oder failed stoppen.

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}")

Autorisierung

BearerAuth
AuthorizationBearer <token>

API-Key-Authentifizierung. Erstellen oder verwalten Sie API-Keys unter Dashboard > API > API Keys.

Ort: header

Pfadparameter

id*string

Die asynchrone Task-ID, die über id / task_id zurückgegeben oder in poll_url eingebettet wird

Antwort

application/json

application/json

application/json

application/json