---
title: "List images"
method: GET
path: "/images"
tags: ["Images"]
---

# List images

`GET /images`

## Request

- Base URL: `https://www.rainbrand.com/api/v1`
- URL: `https://www.rainbrand.com/api/v1/images`
- Auth: one of:
  - API key in header `x-api-key`
  - HTTP bearer
  - OAuth 2
    - Authorization code: `https://www.rainbrand.com/api/auth/oauth2/authorize`
    - Token URL: `https://www.rainbrand.com/api/auth/oauth2/token`

Browse images from one brand or across your brands.

## Query parameters

- `ids` string: Comma-separated image IDs to filter by (max 50). Selected-model generation IDs are not supported.
- `workspaceId` string: Team workspace ID. Scopes results to that workspace. Omit to list across every workspace the caller can see.
- `brandSessionId` string, uuid: Brand ID (from GET /brands). Omit to list images across all brands.
- `limit` integer: Results per page (1–100, default 50)
- `cursor` string: Pagination cursor from a previous response's nextCursor
- `source` 'generated' | 'uploaded' | 'scraped': Filter by image source. "generated" = AI-created, "uploaded" = user uploads, "scraped" = website images from brand onboarding
- `status` 'pending' | 'generating' | 'completed' | 'failed': Filter by generation status (only applies to generated images — uploaded/scraped images are excluded when this filter is active)
- `actionType` 'generation' | 'edit' | 'resize' | 'variant' | 'recreate' | 'remove-background' | 'vectorize': Filter by action type (only applies to generated images — uploaded/scraped images are excluded when this filter is active)
- `includeUrls` union: Include signed download URLs for completed images
  - boolean
  - '0' | '1' | 'true' | 'false'
- `wait` union: Hold the connection until every image in ids reaches a terminal status. Selected-model generation IDs are not supported. No-op when ids is omitted.
  - boolean
  - '0' | '1' | 'true' | 'false'
- `timeout` integer: Max seconds to wait (default 120, max 295)

## Response `200`

OK

- object
  - `data` object, required
    - `images` object[], required
      - `id` string, uuid, required
      - `source` 'generated' | 'uploaded' | 'scraped', required
      - `brandSessionId` string, uuid
      - `prompt` string, nullable, required
      - `description` string, nullable, required
      - `aspectRatio` '1:1' | '2:3' | '3:2' | '3:4' | '4:3' | '4:5' | '5:4' | '9:16' | '16:9' | '21:9', nullable, required
      - `width` number, nullable, required
      - `height` number, nullable, required
      - `actionType` 'generation' | 'edit' | 'resize' | 'variant' | 'recreate' | 'remove-background' | 'vectorize', nullable, required
      - `variantGroupId` string, uuid, nullable, required
      - `status` 'pending' | 'generating' | 'completed' | 'failed', nullable, required
      - `failureReason` 'content_safety' | 'rate_limited', nullable, required
      - `imageUrl` string, nullable
      - `workspaceId` string, nullable, required
      - `workspaceName` string, required
      - `createdAt` string, date-time, required
    - `nextCursor` string, nullable, required
    - `hasMore` boolean, required

## Other responses

- `401`: 401
- `403`: 403
- `422`: 422
- `429`: 429

---

[API](https://skmtc.dev/rainbrand/apis/rainbrand-api.md) - [All operations](https://skmtc.dev/rainbrand/apis/rainbrand-api/llms.txt) - [OpenAPI document](https://skmtc.dev/rainbrand/apis/rainbrand-api/revisions/012b8e9da4df?raw)
