---
title: "Get image-generation status"
method: GET
path: "/open/v1/image-generations/{generation_id}"
tags: ["Image Generations"]
---

# Get image-generation status

`GET /open/v1/image-generations/{generation_id}`

Poll the status of a `POST /open/v1/image-generations` submission. Returns the same `OpenImageGeneration` shape — `status` is `pending` / `processing` / `success` / `partial_success` / `failed`, and `image_ids` populates once the request fans out into per-image tasks.

**Polling cadence**: poll every 2–5 seconds. The fan-out step typically completes in 5–15s; individual images then complete asynchronously over the next 15–60s each.

**Terminal statuses**: `success` (all images done), `partial_success` (some failed), `failed` (no images produced). Stop polling on any terminal state.

Use individual `GET /open/v1/image-generations/{generation_id}/images/{image_id}` calls to fetch each image's generated URL.

Returns: `code=0` success; `code=40001` invalid `generation_id` or workspace context missing; `code=40401` when the generation does not belong to the caller's workspace; `code=50001` when the upstream image-generation service is unavailable.

## Path parameters

- `generation_id` string, required — Image-generation UUID. Returned by `POST /open/v1/image-generations` as `data.generation_id`.

## Response `200`

Successful Response

- OpenImageGenerationResponse — Envelope for all open API responses. code=0 means success.
  - `code` integer
  - `message` string
  - `data` OpenImageGeneration — Response payload for image-generation submit + status. Flat shape for SPI consumers — `generation_id` is the opaque identifier.
    - `generation_id` string, required — Image-generation identifier; treat as opaque.
    - `status` string, required — Generation status: `pending`, `processing`, `success`, `partial_success`, `failed`.
    - `concept_ids` string[]
    - `image_ids` string[] — Empty until the request fans out into per-image tasks (typically a few seconds after submit). Poll `GET /open/v1/image-generations/{generation_id}` to pick up the ids.

## Other responses

- `400` — Invalid request — a query parameter, path parameter, or body field failed validation.

---

[API](https://skmtc.net/tryatria/apis/atria-open-api.md) · [All operations](https://skmtc.net/tryatria/apis/atria-open-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/tryatria/atria-open-api/revisions/548d57b611ea/schema)
