---
title: "Fuse multiple images (async, image-to-image)"
method: POST
path: "/v1/images/fuse"
tags: ["Images"]
---

# Fuse multiple images (async, image-to-image)

`POST /v1/images/fuse`

## Request

- Base URL: `https://contentmaschine.ai/api`
- URL: `https://contentmaschine.ai/api/v1/images/fuse`
- Auth: one of:
  - HTTP bearer
  - OAuth 2 (authorization code, authorization URL `https://contentmaschine.ai/api/oauth/authorize`, token URL `https://contentmaschine.ai/api/oauth/token`)

Combine 2–10 images into a single cohesive image, guided by an optional prompt.
Give the sources as library `file_uuids` or inline as base64 in `images`; exactly one of the two.
Returns immediately with a `job_id` - poll `GET /v1/jobs/{id}` until `status` is `completed`.
Discover valid `model` values via GET /v1/models (same set as variation).

## Request body

- object
  - `file_uuids` string[]: UUIDs of 2–10 source images already in your library. Use this or `images`.
  - `images` string[]: 2–10 source images inline, each base64 or a data URL (PNG, JPEG, WebP or GIF). Use this or `file_uuids`.
  - `prompt` string: Optional direction for how the images should be combined.
  - `model` 'standard' | 'lite' | 'pro' | 'flux' | 'seedream' | 'seedream5': Model to use for the fusion.
  - `aspect_ratio` '1:1' | '16:9' | '9:16' | '4:3' | '3:4' | '3:2' | '2:3': Aspect ratio of the result.
  - `options` object: Model-specific options.
    - `resolution` '1024' | '2048' | '4096': Output resolution (pro model only).
    - `seed` integer: Seed for reproducible output, where the model supports one.

## Response `202`

Job queued

- JobQueued
  - `success` boolean
  - `data` object
    - `job_id` integer
    - `generation_id` integer
    - `generation_uuid` string, uuid
    - `status` string
    - `estimated_credits` number, float
  - `timestamp` string, date-time

## Other responses

- `400`: Fewer than 2 or more than 10 sources, both forms, or an unusable image
- `401`: Missing or invalid API key
- `402`: Insufficient credits
- `403`: A file belongs to another user
- `404`: A source file was not found
- `default`: Any other error. Every failure this API emits uses the same envelope; branch on `error.type`, never on `error.message`, and quote `error.correlation_id` to support.

---

[API](https://skmtc.dev/contentmaschine/apis/contentmaschine-ai-api.md) · [All operations](https://skmtc.dev/contentmaschine/apis/contentmaschine-ai-api/llms.txt) · [OpenAPI document](https://skmtc.dev/contentmaschine/apis/contentmaschine-ai-api/revisions/28c74f46051c?raw)
