API dành cho nhà phát triển vẫn đang ở giai đoạn beta và có thể thay đổi bất cứ lúc nào. Hiện tại, API phù hợp hơn cho việc thử nghiệm và trải nghiệm cá nhân và chưa được khuyến nghị sử dụng trong môi trường production.
Playground
Hoán đổi đầu trong video bằng AI - thay thế khuôn mặt liền mạch chỉ bằng một ảnh tham chiếu.
POST /api/v1/video-head-swap/submit → /queryQuyền truy cập API chỉ dành cho người đăng ký. Điểm tín dụng của gói đăng ký được dùng chung giữa trang web và API.
Xem các góiTham số yêu cầu bắt buộc. Hãy dùng đúng kiểu và các giá trị được chấp nhận trong bảng.
Tham số yêu cầu không bắt buộc. Hãy dùng đúng kiểu, giá trị mặc định và các giá trị được chấp nhận trong bảng.(Tùy chọn)
#!/usr/bin/env bash
set -euo pipefail
SUBMIT_RESPONSE="$(curl --fail-with-body --silent --show-error -X POST "https://vidmage.ai/api/v1/video-head-swap/submit" \
-H "Authorization: Bearer ${VIDMAGE_API_KEY}" \
-H "Content-Type: application/json" \
--data-raw '{
"targetVideoUrl": "https://vidmage.ai/assets/models/hailuo-ai-video-generator/skincare-ad.mp4",
"referenceImageUrls": [
"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/video-head-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 // .["videoUrl"] // .data["videoUrl"] // empty)'
break
;;
failed|error)
printf '%s' "$QUERY_RESPONSE" | jq -r '(.message // .error // .data.error // "Task failed")' >&2
exit 1
;;
esac
sleep 5
done