API Pembangun masih dalam peringkat beta dan boleh berubah pada bila-bila masa. Pada peringkat ini, API lebih sesuai untuk ujian dan percubaan peribadi dan belum disyorkan untuk kegunaan produksi.
Playground
Gantikan satu wajah yang dikesan dalam foto sasaran dengan wajah daripada foto rujukan. Pengesanan dan pemotongan wajah dikendalikan secara automatik.
POST /api/v1/face-swap/submit → /queryAkses API hanya tersedia kepada pelanggan. Kredit langganan anda dikongsi antara laman web dan API.
Lihat pelanIndeks berasaskan sifar bagi wajah sasaran yang hendak digantikan.
Indeks berasaskan sifar bagi wajah dikesan yang hendak digunakan daripada foto rujukan.
#!/usr/bin/env bash
set -euo pipefail
SUBMIT_RESPONSE="$(curl --fail-with-body --silent --show-error -X POST "https://vidmage.ai/api/v1/face-swap/submit" \
-H "Authorization: Bearer ${VIDMAGE_API_KEY}" \
-H "Content-Type: application/json" \
--data-raw '{
"targetImageUrl": "https://vidmage.ai/assets/images/samples/blue-eyed-woman-sunlight.webp",
"referenceFaceImageUrl": "https://vidmage.ai/assets/images/samples/smiling-man-sweater.webp"
}')"
TASK_ID="$(printf '%s' "$SUBMIT_RESPONSE" | jq -er '.["taskId"]')"
while true; do
QUERY_RESPONSE="$(curl --fail-with-body --silent --show-error -X POST "https://vidmage.ai/api/v1/face-swap/query" \
-H "Authorization: Bearer ${VIDMAGE_API_KEY}" \
-H "Content-Type: application/json" \
--data-raw "{\"taskId\":\"${TASK_ID}\"}")"
STATUS="$(printf '%s' "$QUERY_RESPONSE" | jq -r '(.status // .data.status // "") | ascii_downcase')"
case "$STATUS" in
success|succeeded|completed)
printf '%s' "$QUERY_RESPONSE" | jq -r '(.result // .["imageUrl"] // .data["imageUrl"] // empty)'
break
;;
failed|error)
printf '%s' "$QUERY_RESPONSE" | jq -r '(.message // .error // .data.error // "Task failed")' >&2
exit 1
;;
esac
sleep 5
done