開發者 API 目前仍處於 Beta 階段,介面可能隨時調整,現階段更適合個人測試與體驗,暫不建議用於正式環境。
線上測試
可透過 REST API 和 MCP 呼叫。請查看下方的請求參數與可接受值。
POST /api/v1/happyhorse-ai-model/submit → /queryAPI 僅開放給訂閱用戶。網站與 API 共用相同的訂閱點數餘額。
查看訂閱方案必填請求參數。請遵循表格所示的類型和可接受值。
選填請求參數。請遵循表格所示的類型、預設值和可接受值。
選填請求參數。請遵循表格所示的類型、預設值和可接受值。
選填請求參數。請遵循表格所示的類型、預設值和可接受值。
選填請求參數。請遵循表格所示的類型、預設值和可接受值。
#!/usr/bin/env bash
set -euo pipefail
SUBMIT_RESPONSE="$(curl --fail-with-body --silent --show-error -X POST "https://vidmage.ai/api/v1/happyhorse-ai-model/submit" \
-H "Authorization: Bearer ${VIDMAGE_API_KEY}" \
-H "Content-Type: application/json" \
--data-raw '{
"prompt": "A joyful horse runs through a wildflower meadow at sunrise, flowing mane and smooth slow motion",
"duration": "5",
"aspectRatio": "16:9",
"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/happyhorse-ai-model/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