Video Face Swap API reference
Carry one face through every frame of a clip
Call Video 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
- Video
- From
- 3.9 credits per second of output ($0.039)
- Typical time
- about 37 s
- Model IDs
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.
Character Swap
popnow/face-swap-video-v1/video-edit
Price
| Option | Credits (per second of output) | US dollars |
|---|---|---|
Default | 3.9 | $0.039 |
Parameters
| Field | Type | Default | Allowed | What it does |
|---|---|---|---|---|
video_urlRequired | string | — | — | Target video. The face of the person in this clip is the one that gets replaced. |
reference_image_urlRequired | string | — | — | Reference face image. The facial features from this image are carried onto the person in the video. |
face_mappingOptional | array<object> | — | up to 10 items | Multi-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. |
face_enhanceOptional | boolean | false | — | Run a face-enhancement pass on the swapped face for a sharper, more detailed result. |
styleOptional | string | realistic | realistic, beautify, lossless | Finish 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. |
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 reference_image_url, video_url. Replace them with your own public HTTPS links, uploads or saved assets.
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-video-v1/video-edit",
"input": {
"video_url": "https://media.popnow.ai/effects/flower-bloom-1abd6efb.mp4",
"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.
curl "https://api.popnow.ai/api/v1/jobs/recordInfo?taskId=TASK_ID_FROM_CREATE_TASK" \
-H "Authorization: Bearer $POPNOW_API_KEY"
