---
title: "Queue an artwork generation"
method: POST
path: "/api/image-generations"
tags: ["Artwork"]
---

# Queue an artwork generation

`POST /api/image-generations`

## Request

- Base URL: `https://api.createprints.ai`
- URL: `https://api.createprints.ai/api/image-generations`
- Auth: one of:
  - API key in header `X-API-Key`
  - HTTP bearer
  - HTTP bearer
  - OAuth 2 (authorization code, authorization URL `https://api.createprints.ai/api/oauth/authorize`, token URL `https://api.createprints.ai/api/oauth/token`, scopes: `artwork:create`)

Spends one available generation credit and queues an artwork job. For text-only creation, send JSON with `inputType: describe`, a prompt, and an image-model size. Multipart form data additionally supports an uploaded reference image; `printPhoto` and `interiorPhoto` require that image. An interior photo supplies palette, mood, and style context—the output is standalone artwork, not a recreation of the room. Use the selected print variant's exact `generation.imageModelSize` to guarantee aspect compatibility at checkout.

## Request body

- CreateArtworkJson
  - `inputType` 'describe' | 'printPhoto' | 'interiorPhoto'
  - `prompt` string, required: Artwork description; required for JSON.
  - `size` string, required: Width and height must be multiples of 16; longest side ≤3840 px; aspect ≤3:1; 655,360–8,294,400 total pixels. Prefer the selected variant's `generation.imageModelSize`.
  - `keywords` string[]
  - `colors` string[]
  - `styleId` union
    - string
    - integer
  - `seedId` string, nullable
  - `forceOriginalPrompt` boolean
  - `referenceImageUrl` string, uri, nullable
  - `revision` boolean

## Response `202`

The artwork job was queued.

- QueuedArtwork
  - `jobId` string, uuid, required
  - `status` 'queued', required
  - `statusUrl` string, required: Relative polling URL.
  - `creditsRemaining` integer, required

## Other responses

- `400`: Missing or invalid input.
- `401`: The credential is missing, invalid, revoked, or expired.
- `403`: The credential lacks the required scope or cannot perform this operation.
- `500`: Create Prints could not complete the request.

---

[API](https://skmtc.dev/createprints/apis/create-prints-api.md) · [All operations](https://skmtc.dev/createprints/apis/create-prints-api/llms.txt) · [OpenAPI document](https://skmtc.dev/createprints/apis/create-prints-api/revisions/05c57f496d51?raw)
