Les API pour développeurs sont encore en version bêta et peuvent changer à tout moment. À ce stade, elles conviennent davantage aux tests et expérimentations personnels et ne sont pas encore recommandées pour une utilisation en production.
Playground
Transformez vos photos en vidéos époustouflantes avec l'IA - créez du contenu vidéo dynamique à partir d'images statiques.
POST /api/v1/image-to-video/submit → /queryL’accès à l’API est réservé aux abonnés. Le site et l’API utilisent le même solde de crédits.
Voir les offresParamètre de requête obligatoire. Respectez le type et les valeurs acceptées indiqués dans ce tableau.
Paramètre de requête facultatif. Respectez le type, la valeur par défaut et les valeurs acceptées indiqués dans ce tableau.
Paramètre de requête obligatoire. Respectez le type et les valeurs acceptées indiqués dans ce tableau.
Paramètre de requête facultatif. Respectez le type, la valeur par défaut et les valeurs acceptées indiqués dans ce tableau.
Paramètre de requête facultatif. Respectez le type, la valeur par défaut et les valeurs acceptées indiqués dans ce tableau.
Paramètre de requête facultatif. Respectez le type, la valeur par défaut et les valeurs acceptées indiqués dans ce tableau.
#!/usr/bin/env bash
set -euo pipefail
SUBMIT_RESPONSE="$(curl --fail-with-body --silent --show-error -X POST "https://vidmage.ai/api/v1/image-to-video/submit" \
-H "Authorization: Bearer ${VIDMAGE_API_KEY}" \
-H "Content-Type: application/json" \
--data-raw '{
"firstFrameImageUrl": "https://vidmage.ai/assets/images/samples/blue-eyed-woman-sunlight.webp",
"prompt": "The subject gently turns toward the camera as a light breeze moves the hair and background leaves",
"duration": "5",
"ratio": "adaptive",
"resolution": "720p"
}')"
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/image-to-video/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