Head Swap (Image)

namifusion/head-swap/image-edit

Swap the head in a photo with the head from a reference image. Upload the target photo first, then the head reference.

Parameters

NameTypeDefaultConstraintsDescription
images *Imagesimage_upload—2–2 itemsExactly 2 images: [0] head reference, [1] target photo

Output fields

FieldTypeDescription
imagesarray<string>

API

Call this model through one unified REST API. Get a key on the API Keys page.

cURL
# 1) Submit — returns { "task_uuid": "..." }
curl -X POST "https://www.namifusion.com/api/v1/marketplace/run/namifusion/head-swap/image-edit" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "input": {
    "images": [
      "https://assets-public.namifusion.com/uploads/images/2026-04-21/76c1186af77d.png",
      "https://assets-public.namifusion.com/uploads/images/2026-04-21/149467630166.png"
    ]
  }
}'

# 2) Poll until status is "completed", then read the output URLs
curl "https://www.namifusion.com/api/v1/marketplace/run/tasks/TASK_UUID" \
  -H "Authorization: Bearer YOUR_API_KEY"
Python
import time, requests

API_KEY = "YOUR_API_KEY"
HEADERS = {"Authorization": f"Bearer {API_KEY}"}

# 1) Submit
resp = requests.post(
    "https://www.namifusion.com/api/v1/marketplace/run/namifusion/head-swap/image-edit",
    headers=HEADERS,
    json={
        "input": {
            "images": [
                "https://assets-public.namifusion.com/uploads/images/2026-04-21/76c1186af77d.png",
                "https://assets-public.namifusion.com/uploads/images/2026-04-21/149467630166.png"
            ]
        }
    },
)
resp.raise_for_status()  # 401/402/429/5xx stop here instead of polling a bad task
task = resp.json()

# 2) Poll until a terminal state (completed / failed / cancelled).
#    This model is allowed up to 600s server-side.
deadline = time.time() + 660
while task.get("status") not in ("completed", "failed", "cancelled"):
    if time.time() > deadline:
        raise TimeoutError(f"still {task.get('status')} — keep the task_uuid and poll later")
    time.sleep(3)
    poll = requests.get(f"https://www.namifusion.com/api/v1/marketplace/run/tasks/{task['task_uuid']}", headers=HEADERS)
    poll.raise_for_status()
    task = poll.json()

print(task["status"], task.get("output"))
JavaScript
const API_KEY = "YOUR_API_KEY";
const HEADERS = { Authorization: `Bearer ${API_KEY}` };

// 1) Submit
const resp = await fetch("https://www.namifusion.com/api/v1/marketplace/run/namifusion/head-swap/image-edit", {
  method: "POST",
  headers: { ...HEADERS, "Content-Type": "application/json" },
  body: JSON.stringify({
    "input": {
      "images": [
        "https://assets-public.namifusion.com/uploads/images/2026-04-21/76c1186af77d.png",
        "https://assets-public.namifusion.com/uploads/images/2026-04-21/149467630166.png"
      ]
    }
  }),
});
if (!resp.ok) throw new Error(`submit failed: ${resp.status} ${await resp.text()}`);
let task = await resp.json();

// 2) Poll until a terminal state (completed / failed / cancelled).
//    This model is allowed up to 600s server-side.
const deadline = Date.now() + 660 * 1000;
while (!["completed", "failed", "cancelled"].includes(task.status)) {
  if (Date.now() > deadline) throw new Error(`still ${task.status} — keep the task_uuid and poll later`);
  await new Promise((r) => setTimeout(r, 3000));
  const poll = await fetch(`https://www.namifusion.com/api/v1/marketplace/run/tasks/${task.task_uuid}`, { headers: HEADERS });
  if (!poll.ok) throw new Error(`poll failed: ${poll.status}`);
  task = await poll.json();
}

console.log(task.status, task.output);

Documentation

Head Swap Image Edit

Transfer a head from one reference image onto a target photo while preserving the target body, pose, and scene.

Head Swap Image Edit is a focused two-image workflow for replacing the head in a target photograph. The first image supplies the head reference and identity; the second image supplies the body, pose, clothing, lighting context, and background that should remain. The fixed input order makes the model straightforward to use, but respecting that order is essential for a correct result.

Key Features

  • Dedicated head replacement: Changes the head region while retaining the target photograph as the visual base.
  • Two-image control: Separates identity reference from target composition instead of relying on a text prompt.
  • Pose and scene preservation: Designed to keep the target body, clothing, framing, and background intact.
  • Simple deterministic contract: Exactly two image URLs are required in a documented order.
  • Square output: Produces a 1024 x 1024 edited image for consistent downstream use.

Technical Specifications

ItemDetails
TaskHead replacement / image editing
Required inputimages, exactly two image URLs
Image 1Head and identity reference
Image 2Target photograph and base composition
Input orderReference first, target second
PromptNot required
OutputEdited image URL
Output dimensions1024 x 1024

Input Guidance

Use a sharp reference image with a clearly visible head and minimal occlusion. For the target image, choose a photo where the head, neck, and surrounding hair or clothing boundaries are readable. Similar camera angles and compatible lighting generally produce a more natural blend. The two URLs must remain in the exact documented order.

Pricing

ItemPrice
One edited image22 credits

This value reproduces the existing Marketplace pricing configuration; this documentation update does not alter pricing.

Best Use Cases

  • Character and casting visualization for creative review.
  • Portrait concept variations while retaining an approved pose and scene.
  • Marketing mockups that require a different head reference on an existing composition.
  • Controlled visual experiments where a text prompt would introduce unnecessary variation.

Best Practices

Avoid tiny, heavily blurred, side-profile, or obstructed reference heads. Match approximate viewing angle and lighting direction between the two images. Check the result around hairlines, ears, neck boundaries, and accessories. If alignment is poor, improve the input crops rather than changing the required image order.

Related models

xAI Grok Imagine Image v2.0 Edit
Image to ImageX Ai

xAI Grok Imagine Image v2.0 Edit

xAI Grok Imagine Image V2.0 Edit transforms input images with text prompts, with configurable resolution and quality for precise image editing, visual refinements, creative variations, social content, marketing assets, and production workflows. Ready-to-use REST inference API, best performance, no coldstarts, affordable pricing.

from $0.090 / per run
qwen-image-edit-spicy
Image to Image

qwen-image-edit-spicy

Precisely edit images with text instructions. Add, remove, or modify visual elements, transfer styles, and replace backgrounds for photo retouching and visual design.

from $0.040 / per run
Qwen Image 3.0 Pro Edit | Fast Image Editing
Image to ImageQwen Image 3.0 Pro

Qwen Image 3.0 Pro Edit | Fast Image Editing

Qwen Image 3.0 Pro Edit is a professional-grade image editing model with superior quality and advanced instruction understanding. Up to 2k. Ready-to-use REST inference API, best performance, no coldstarts, affordable pricing.

from $0.078 / per run
OpenAI GPT Image 2.5 Sunburst Edit
Image to ImageOpenAI

OpenAI GPT Image 2.5 Sunburst Edit

High-fidelity image editing for precise transformations using up to 16 reference images.

from $0.220 / per run
OpenAI GPT Image 2.5 Flare Edit
Image to ImageOpenAI

OpenAI GPT Image 2.5 Flare Edit

Fast, balanced image editing from natural-language instructions and up to 16 reference images.

from $0.220 / per run
Nano Banana Image Edit
Image to ImageGoogle

Nano Banana Image Edit

Fast & Affordable Editing. Intuitive object replacement and style transfer without manual masking.

from $0.038 / per run
Nano Banana Pro Image Edit
Image to ImageGoogle

Nano Banana Pro Image Edit

4K Semantic Editing.Modifies existing images via natural language with context awareness and multilingual text editing.

from $0.140 / per run
Nano Banana 2 Image Edit
Image to ImageGoogle

Nano Banana 2 Image Edit

4K Semantic Editing.Modifies existing images via natural language with context awareness and multilingual text editing.

from $0.070 / per run