---
title: "Edit image"
method: POST
path: "/v1/images/edits"
---

# Edit image

`POST /v1/images/edits`

Creates an edited image from one or more source images and a prompt.

## Request body

- object
  - `images` object[], required — Input image references to edit. Provide image_url as HTTPS URL or data URL.
    - `image_url` string, required — A fully qualified HTTPS URL or base64-encoded data URL.
  - `prompt` string, required — A text description of the desired image edit.
  - `background` 'transparent' | 'opaque' | 'auto' — Background behavior for generated image output.
  - `input_fidelity` 'high' | 'low' — Controls fidelity to the original input image(s).
  - `model` string — The model to use for image editing.
  - `n` integer — The number of edited images to generate.
  - `output_compression` integer — Compression level for jpeg or webp output.
  - `output_format` 'png' | 'jpeg' | 'webp' — Output image format.
  - `quality` 'low' | 'medium' | 'high' | 'auto' — Output quality for image models.
  - `size` string — Requested output image size. Supported values depend on the model and provider.
  - `aspect_ratio` string — The aspect ratio of the edited images (e.g. '1:1', '16:9', '4:3', '5:4'). Takes precedence over size-derived defaults.

## Response `200`

Image edit response.

- object
  - `created` number, required
  - `data` object[], required
    - `b64_json` string, required
    - `revised_prompt` string
  - `background` 'transparent' | 'opaque'
  - `output_format` 'png' | 'webp' | 'jpeg'
  - `quality` 'low' | 'medium' | 'high'
  - `size` string
  - `usage` object
    - `input_tokens` number, required
    - `input_tokens_details` object, required
      - `image_tokens` number, required
      - `text_tokens` number, required
    - `output_tokens` number, required
    - `total_tokens` number, required
    - `output_tokens_details` object
      - `image_tokens` number, required
      - `text_tokens` number, required

## Other responses

- `400` — Invalid request body or parameters.
- `401` — Missing or invalid API key.
- `402` — Insufficient credits or plan limits reached.
- `403` — Forbidden request or upstream response.
- `404` — Unknown model or upstream not-found response.
- `410` — Archived or unavailable project.
- `429` — Rate limited (organization, endpoint, or upstream provider). Back off until Retry-After elapses.
- `500` — Internal server error.
- `502` — Failed to connect to the upstream provider.
- `503` — Service unavailable upstream response.
- `504` — Upstream provider timeout.

---

[API](https://skmtc.dev/llmgateway/apis/llmgateway-api.md) · [All operations](https://skmtc.dev/llmgateway/apis/llmgateway-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/llmgateway/llmgateway-api/revisions/aaf167e3d8cc/schema)
