Claude Opus 5.5 ist auf SeedRouter verfügbar
LogoSeedRouter

Modelle nach Namen suchen, z. B. „nano banana“

Modelle nach Namen suchen, z. B. „nano banana“

So nutzt du die Kling 3.0 API: Schlüssel, Anfrage, Abfrage, Frames und Multi-Shot

Kling 3.0 API Schritt für Schritt: Schlüssel erstellen, Videoaufgabe senden, Video-URL abfragen, mit erstem und letztem Frame starten, Multi-Shot-Clips bauen.

Als Markdown lesen

Um die Kling 3.0 API zu nutzen, erstellst du einen API-Schlüssel, sendest per POST einen JSON-Body mit der Modell-ID kling-3-0 und deinem Prompt und fragst die zurückgegebene Aufgabe ab, bis die Video-URL bereitsteht. Ein Endpunkt deckt Text zu Video, Video aus erstem und letztem Frame, Multi-Shot-Clips und Element-Referenzen ab; die Felder im Body entscheiden, was davon.

Dieser Guide geht jeden Schritt mit funktionierendem Code durch und zeigt dann Frames, Multi-Shot-Clips, Elemente und die Anfragen, die abgelehnt werden, bevor etwas berechnet wird.

Was brauchst du vor der ersten Anfrage?

  1. Einen API-Schlüssel. Erstelle ihn auf der Seite API-Schlüssel und bewahre ihn auf deinem Server auf. Leg ihn nie in Browser-Code.
  2. Guthaben. Lade auf der Abrechnungsseite ein Guthaben auf. Guthaben verfällt nie, und fehlgeschlagene Aufgaben werden nicht berechnet.
  3. Die Modell-ID kling-3-0.
export SEEDROUTER_API_KEY="your-key"

Wie sendest du eine Kling 3.0 Anfrage?

Sende die Aufgabe per POST an /v1/videos/generations:

curl https://api.seedrouter.ai/v1/videos/generations \
  -H "Authorization: Bearer $SEEDROUTER_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "kling-3-0",
    "prompt": "A red paper boat drifting on a calm pond at sunrise, soft mist on the water, slow push-in, no text, no logos.",
    "mode": "std",
    "duration": 5,
    "aspect_ratio": "16:9"
  }'

Die Antwort ist eine Aufgabe, kein Video:

{"id": "task_...", "model": "kling-3-0", "status": "processing", "created_at": 1789689600}

Jedes Feld außer model und prompt hat einen Standardwert:

FeldStandardwertWerte
modeprostd (720p), pro (1080p), 4K
duration53–15 Sekunden
aspect_ratio16:916:9, 9:16, 1:1
soundfalsetrue erzeugt nativen Ton

Das Schema ist strikt: Ein unbekanntes Feld wird mit HTTP 400 abgelehnt, bevor eine Aufgabe entsteht. Ein Tippfehler wird also nie zu einem bezahlten Clip, bei dem die Einstellung stillschweigend ignoriert wurde.

Wie bekommst du das Video?

Frag GET /v1/tasks/{id} alle 10–20 Sekunden ab, bis status den Wert completed oder failed hat. In unseren Tests war ein 3-Sekunden-Clip in std nach etwa zwei Minuten fertig und ein 5-Sekunden-Clip in pro mit Ton nach etwa zweieinhalb.

import os
import time
import requests

API = "https://api.seedrouter.ai/v1"
HEADERS = {"Authorization": f"Bearer {os.environ['SEEDROUTER_API_KEY']}"}

task = requests.post(
    f"{API}/videos/generations",
    headers=HEADERS,
    json={
        "model": "kling-3-0",
        "prompt": "A red paper boat drifting on a calm pond at sunrise, slow push-in, no text, no logos.",
        "mode": "std",
        "duration": 5,
    },
    timeout=60,
)
task.raise_for_status()
task_id = task.json()["id"]

while True:
    result = requests.get(f"{API}/tasks/{task_id}", headers=HEADERS, timeout=60).json()
    if result["status"] in ("completed", "failed"):
        break
    time.sleep(15)

if result["status"] == "completed":
    print(result["output"]["video_url"])
else:
    print(result["error"])

Eine fertige Aufgabe sieht so aus:

{
  "id": "task_...",
  "model": "kling-3-0",
  "status": "completed",
  "output": {"video_url": "https://static.seedrouter.ai/media/tasks/task_example/0.mp4"}
}

std kam mit 1280 × 720 zurück und pro mit 1920 × 1080, beide als MP4 (H.264); mit aktiviertem sound enthält die Datei eine Stereo-Audiospur. Lade die Datei in deinen eigenen Speicher herunter: Gehostete Links sind nicht dauerhaft. Eine Zeitüberschreitung des Netzwerks während der Abfrage bedeutet nicht, dass die Erzeugung fehlgeschlagen ist. Behalte also die Aufgaben-ID und prüfe sie erneut, statt eine neue Aufgabe zu senden.

Wie startest du mit einem ersten und letzten Frame?

Übergib eine oder zwei Bild-URLs in image_urls. Das erste Bild eröffnet den Clip, ein zweites ist das Ende. Ohne Bilder entsteht der Clip allein aus dem Prompt.

{
  "model": "kling-3-0",
  "prompt": "The camera glides from the empty street to the lit shop window",
  "image_urls": ["https://example.com/start.png", "https://example.com/end.png"],
  "mode": "pro",
  "duration": 6
}

Bilder müssen öffentliche HTTP(S)-URLs sein, JPG oder PNG. Base64-Daten werden abgelehnt; lade die Datei zuerst in deinen eigenen Speicher hoch.

Wie erstellst du einen Multi-Shot-Clip?

Setze multi_shots auf true und beschreibe jede Einstellung in multi_prompt, bis zu fünf Einstellungen mit je 1–12 Sekunden. Die Dauern der Einstellungen müssen zusammen 3–15 Sekunden ergeben, und diese Summe ist die Cliplänge, die dir berechnet wird; duration wird nicht verwendet.

{
  "model": "kling-3-0",
  "mode": "pro",
  "sound": true,
  "multi_shots": true,
  "multi_prompt": [
    {"prompt": "Wide shot of a small open kitchen, a chef tosses vegetables in a wok, flames rising, warm light.", "duration": 3},
    {"prompt": "Close-up of the wok, vegetables flipping through the flames, oil sizzling, steam drifting.", "duration": 3}
  ]
}

Das ist der Clip, den diese Anfrage in unserem Test erzeugt hat, ein 6-Sekunden-Video, das von einer Totalen auf eine Nahaufnahme schneidet:

Kling 3.0, pro (1080p), Multi-Shot 3 + 3 Sekunden, mit Ton.

Wie hältst du eine Person oder ein Produkt gleich?

Füge es zu kling_elements hinzu: einen name, eine kurze description und 2–4 Bild-URLs des Motivs, bis zu drei Elemente pro Anfrage. Nenne das Element im Prompt beim Namen.

{
  "model": "kling-3-0",
  "prompt": "@hero slowly turns toward the camera in soft window light",
  "kling_elements": [
    {
      "name": "hero",
      "description": "a young woman with short black hair and a yellow raincoat",
      "element_input_urls": ["https://example.com/hero-front.png", "https://example.com/hero-side.png"]
    }
  ]
}

Welche Anfragen werden abgelehnt, bevor etwas berechnet wird?

Diese kommen beim Senden als HTTP 400 zurück, ohne dass eine Aufgabe entsteht oder etwas berechnet wird:

AnfrageGrund
Ein Multi-Shot-Clip, dessen Einstellungen zusammen weniger als 3 oder mehr als 15 Sekunden ergebenKling 3.0 erzeugt Clips von 3–15 Sekunden
Ein Element ohne descriptionJedes Element braucht eine
Mehr als 2 image_urls, mehr als 5 Einstellungen oder mehr als 3 ElementeAußerhalb der Grenzen des Modells
mode: "4k" in KleinbuchstabenDer Wert ist 4K
Base64-Bilder oder ein Feld, das nicht in der Tabelle oben stehtMedien werden als URLs übergeben; das Schema ist strikt

Eine Aufgabe, die angenommen wird und dann fehlschlägt, etwa an der Inhaltsrichtlinie des Modells, gibt status: "failed" mit einem error-Code zurück und wird nicht berechnet. Der Fehlerkatalog listet die Codes auf.

Worin unterscheidet sich das von der eigenen API von Kling?

Die Entwickler-API von Kling nutzt eigene Feldnamen, und ihre Legacy-Version und die aktuelle Version unterscheiden sich voneinander.[1][2] Wenn du eine Integration umziehst, ordne die Felder so zu:

SeedRouterKling Legacy-API
model: "kling-3-0"model_name: "kling-v3"
sound: true / falsesound: "on" / "off"
duration: 5 (Integer)duration: "5" (String)
mode: "4K"mode: "4k"
image_urls: [first, last]image und image_tail
multi_shots + multi_prompt: [{prompt, duration}]multi_shot + shot_type: "customize" + multi_prompt: [{index, prompt, duration}]
kling_elements: [{name, description, element_input_urls}]element_list: [{element_id}], vorab erstellt

SeedRouter liefert Ergebnisse als Aufgabe, die du abfragst; callback_url wird nicht angeboten.

Kann ein Coding-Agent das für dich erledigen?

Ja. Die Kling 3.0 Seite hat einen fertigen Prompt für Claude Code, Codex oder Cursor, der den Schlüssel aus deiner Umgebung liest, dir die Anfrage und ihre Kosten zeigt, auf deine Freigabe wartet und dann sendet, abfragt und den Clip herunterlädt. Dieselbe Seite hat einen Playground, der genau den Body sendet, den dein Code senden würde.

Fragen zur Kling 3.0 API

Gibt es eine offizielle Kling 3.0 API?

Ja. Kling veröffentlicht eine Entwickler-API mit eigenen Schlüsseln, Abrechnung in Einheiten und eigenem Anfrageformat.[1][3] SeedRouter ist ein separater Weg, Kling 3.0 mit einem Schlüssel und einem Guthaben aufzurufen, das du mit anderen Modellen teilst.

Was kostet die Kling 3.0 API?

Sie wird pro Sekunde Video abgerechnet, nach Modus und danach, ob Ton aktiv ist. Der Preisguide zur Kling 3.0 API rechnet die Clipkosten durch, und die Modellseite zeigt die aktuellen Tarife.

Kann ich eine Aufgabe abbrechen?

Nein. Einmal angenommen, läuft eine Aufgabe bis zum Abschluss oder Fehlschlag. Fehlgeschlagene Aufgaben werden nicht berechnet.

Quellen

  1. Kling AI. Kling 3.0: Text to Video (API-Referenz, Legacy-Version). Abgerufen am 6. Oktober 2026 von kling.ai.
  2. Kling AI. Kling 3.0: Image to Video (API-Referenz, Legacy-Version). Abgerufen am 6. Oktober 2026 von kling.ai.
  3. Kling AI. Pricing: Video (Entwickler-API). Abgerufen am 6. Oktober 2026 von kling.ai.

Verwandte Leitfäden