Passer au contenu principal
GET
Retrieve an image generation's status and results
Récupère le statut d’un job de génération. Tant qu’il est pending ou processing, continue d’interroger ; une fois completed, la réponse porte les images produites, chacune avec une url presigned valable 24 heures — télécharge les assets avant leur expiration. Seuls les jobs créés par ton organisation sont visibles ; tout autre id renvoie 404 not_found.

Blocages compliance

Chaque output raster passe par le pipeline de conformité de Samsa (signature C2PA et watermarking — voir Provenance du contenu) avant que l’API ne le livre. processing signifie que les outputs sont encore en route — continue d’interroger. Quand un output échoue définitivement dans ce pipeline, le job l’indique : Chaque entrée de blocked_images est { "id", "reason" }. reason vaut compliance_failed_signing (la signature C2PA a échoué), compliance_failed_storage, compliance_failed_watermark ou missing_provenance_state. Un output bloqué ne devient jamais téléchargeable, donc failed est terminal — arrête d’interroger.
Exemple : tous les outputs bloqués
credits_used n’est pas modifié par un blocage compliance. Les mêmes champs et règles s’appliquent aux jobs Magic Edit, img2img, variations et redimensionnement, ainsi qu’à l’outil MCP get_job_status.
Tu préfères le push au polling ? Passe un webhook_url sur la requête de génération d’origine pour recevoir un callback signé dès que le job atteint un statut terminal. Voir Webhooks.

Autorisations

Authorization
string
header
requis

Organization API key (Authorization: Bearer samsa_sk_...) or OAuth 2.1 access token (Authorization: Bearer samsa_at_...).

Paramètres de chemin

generation_id
string<uuid>
requis

Réponse

Successful Response

GET /images/generations/{id} body (ADR §7.2).

created_at is the job's submit time, sourced from the credit ledger — the image_generation_tasks table has no created_at column.

id
string<uuid>
requis
status
enum<string>
requis

pending, processing, completed, failed, or cancelled. A job whose outputs ALL failed the compliance pipeline (for example C2PA signing) is failed with error starting delivery_blocked_compliance — a terminal state, so stop polling.

Options disponibles:
pending,
processing,
completed,
failed,
cancelled
Exemple:

"completed"

created_at
string<date-time>
requis

When the job was submitted.

credits_used
integer | null

Net credits charged for this job, after any refunds.

Exemple:

5

images
PublicImageAsset · object[]

Produced images (presigned URLs); empty until completed.

blocked_images
PublicBlockedImage · object[]

Produced images that are permanently withheld because they failed the compliance pipeline, each with its compliance code. Empty unless a completed job delivered only some of its outputs, or a failed job was blocked by compliance.

error
string | null

Failure detail when status is failed; otherwise null. A compliance block reads delivery_blocked_compliance: <codes>, where <codes> are the blocked_images reasons.

Exemple:

"delivery_blocked_compliance: compliance_failed_signing"