---
title: "Poll job or batch status"
method: GET
path: "/api/process/status"
---

# Poll job or batch status

`GET /api/process/status`

## Request

- Base URL: `https://api.peelaway.io`
- URL: `https://api.peelaway.io/api/process/status`
- Auth: HTTP bearer

Returns the current status of a single job (via `job_id`) or every job in a batch (via `batch_id`). Exactly one of the two query parameters is required.

## Query parameters

- `job_id` string
- `batch_id` string

## Response `200`

Current status

- union
  - object
    - `status` 'pending' | 'done' | 'error', required
    - `stage` 'generating' | 'finishing': Present while pending.
    - `started_at` string, date-time: Present while pending.
    - `failure_reason` 'declined': Present on status=error when the model declined the photo or prompt (a content policy refusal or an unusable image). Retry with a different input.
    - `width` integer
    - `height` integer
    - `format` string
    - `credits_used` integer
    - `credits_remaining` integer
    - `processing_time_ms` integer, nullable
  - object
    - `batch_id` string, required
    - `jobs` object[], required
      - `job_id` string
      - `status` 'pending' | 'done' | 'error'
      - `stage` 'generating' | 'finishing': Present while pending.
      - `started_at` string, date-time: Present while pending.
      - `failure_reason` 'declined': Present on status=error when the model declined the photo or prompt (a content policy refusal or an unusable image). Retry with a different input.

## Other responses

- `400`: Missing or invalid id
- `404`: Job or batch not found

---

[API](https://skmtc.dev/peelaway/apis/peelaway-image-api.md) · [All operations](https://skmtc.dev/peelaway/apis/peelaway-image-api/llms.txt) · [OpenAPI document](https://skmtc.dev/peelaway/apis/peelaway-image-api/revisions/8ce45533c9d0?raw)
