PopNowAPI Docs
Main content

Face Swap API reference

Swap just the face, keep hair, pose and background

Call Face Swap from your own code with one PopNow API key. Below are the exact model IDs to send, every input field the model accepts, what each request costs in credits, and a request you can paste into a terminal.

At a glance

Made by
PopNow
Output
Image
From
1.95 credits per image ($0.0195)
Typical time
about 16 s

1 credit = $0.01. A task holds the highest possible charge when it is accepted and settles the real amount when it finishes, rounded up to whole credits; failed tasks are not charged. Ask POST /api/v1/jobs/quote for the exact figure before you run.

Face Swap

popnow/face-swap-v1/edit

Price

OptionCredits (per image)US dollars
Default1.95$0.0195

Parameters

FieldTypeDefaultAllowedWhat it does
image_urlRequiredstring——Target image. The face of the person in this image is the one that gets replaced.
reference_image_urlRequiredstring——Reference face image. The facial features from this image are transferred onto the target.
face_mappingOptionalarray<object>—up to 10 itemsMulti-person swap: which face in the reference image goes onto which face in the target, one entry per face. Faces are numbered from 0 in detection order. Leave it out to swap a single face.
styleOptionalstringrealisticrealistic, beautify, losslessFinish applied to the swapped face: realistic keeps natural skin tone and texture, beautify smooths and brightens the skin, lossless holds on to the most facial detail.
face_enhanceOptionalbooleanfalse—Run a face-enhancement pass on the swapped face for a sharper, more detailed result.
seedOptionalinteger—0 to 2147483647Random seed; zero requests a random seed.

Example request

This request runs as it is; any field you leave out uses its default. Put your key in POPNOW_API_KEY first.

The example uses PopNow sample files in image_url, reference_image_url. Replace them with your own public HTTPS links, uploads or saved assets.

POST /api/v1/jobs/createTask?wait=60
curl -X POST "https://api.popnow.ai/api/v1/jobs/createTask?wait=60" \
  -H "Authorization: Bearer $POPNOW_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{
  "model": "popnow/face-swap-v1/edit",
  "input": {
    "image_url": "https://media.popnow.ai/influencer/examples/marco.webp",
    "reference_image_url": "https://media.popnow.ai/influencer/examples/ava.webp"
  }
}'

The response carries a taskId straight away. Read the result with GET /api/v1/jobs/recordInfo, or add callBackUrl to be notified.

GET /api/v1/jobs/recordInfo
curl "https://api.popnow.ai/api/v1/jobs/recordInfo?taskId=TASK_ID_FROM_CREATE_TASK" \
  -H "Authorization: Bearer $POPNOW_API_KEY"

Next steps

On this page