Die Entwickler-APIs befinden sich weiterhin in der Beta-Phase und können jederzeit geändert werden. Derzeit eignen sie sich eher für persönliche Tests und Experimente und werden noch nicht für den Produktionseinsatz empfohlen.
Playground
Über REST API und MCP verfügbar. Beachte die folgenden Anfrageparameter und zulässigen Werte.
POST /api/v1/kling-ai-video-generator/submit → /queryDer API-Zugriff ist Abonnenten vorbehalten. Website und API verwenden dasselbe Guthaben deines Abonnements.
Tarife ansehenErforderlicher Anfrageparameter. Beachte Typ und zulässige Werte in dieser Tabelle.
Optionaler Anfrageparameter. Beachte Typ, Standardwert und zulässige Werte in dieser Tabelle.
Optionaler Anfrageparameter. Beachte Typ, Standardwert und zulässige Werte in dieser Tabelle.
Optionaler Anfrageparameter. Beachte Typ, Standardwert und zulässige Werte in dieser Tabelle.
Optionaler Anfrageparameter. Beachte Typ, Standardwert und zulässige Werte in dieser Tabelle.
#!/usr/bin/env bash
set -euo pipefail
SUBMIT_RESPONSE="$(curl --fail-with-body --silent --show-error -X POST "https://vidmage.ai/api/v1/kling-ai-video-generator/submit" \
-H "Authorization: Bearer ${VIDMAGE_API_KEY}" \
-H "Content-Type: application/json" \
--data-raw '{
"prompt": "A cinematic tracking shot follows a cyclist through a quiet forest as morning fog drifts between the trees",
"duration": "5",
"aspectRatio": "16:9",
"sound": false
}')"
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/kling-ai-video-generator/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