TL;DR
Die Seedance 2.0 API wurde am 2. April 2026 über Volcengine Ark gestartet. Sie übermitteln eine Videoerstellungsaufgabe mit einer POST-Anfrage und fragen dann einen GET-Endpunkt ab, bis der Status "succeeded" erreicht ist. Die API unterstützt Text-zu-Video, Bild-zu-Video, Steuerung des ersten und letzten Frames, multimodale Referenzen und native Audioerzeugung. Ein 5-sekündiges 1080p-Video kostet etwa 0,93 $. Laden Sie das Video innerhalb von 24 Stunden herunter. Die URL läuft danach ab.
Einleitung
Am 2. April 2026 veröffentlichte ByteDance's Volcengine Ark Plattform die offizielle Seedance 2.0 API. Vorher war Seedance 2.0 nur über die Webkonsole nutzbar. Tutorials mit UI zeigen die alte Methode – dieser Artikel zeigt, wie man die API automatisiert und programmatisch ansteuert.
💡
Die API ist asynchron: Sie erstellen eine Aufgabe per POST, erhalten eine Aufgaben-ID und fragen dann zyklisch einen GET-Endpunkt ab, bis der Auftrag abgeschlossen ist. Apidog hilft, diesen Ablauf zu testen: POST-Übermittlung, Aufgaben-ID extrahieren, GET-Abfrage wiederholen, Ergebnis prüfen. Folgen Sie dem Apidog-Abschnitt, um die Testschritte praktisch auszuführen.
Der Artikel behandelt alle Eingabetypen, Token-basierte Kosten und typische Fehlerfälle.
Was ist Seedance 2.0?
Seedance 2.0 ist ByteDances modernes Videogenerierungsmodell auf Volcengine Ark mit den Modell-IDs doubao-seedance-2-0-260128 (Standard) und doubao-seedance-2-0-fast-260128 (schneller, geringere Qualität).
Neuerungen gegenüber 1.5:
- Steuerung von erstem/letztem Frame (Sie geben beide Bilder an)
- Multimodale Eingaben: Text, Bild(er), Video, Audio gemischt
- Native Audioerzeugung: Sprache, Effekte, Musik, Umgebungsgeräusche
- Lippensynchron in 8+ Sprachen
- Kamerasteuerung per Prompt (z.B. Dolly, Tracking)
- Bis zu 15 Sekunden Länge, maximal 2K Auflösung
Ausgabe: 24 fps, Seitenverhältnisse von 1:1 bis 21:9, frei wählbar.
Was sich geändert hat: Leitfaden vs. offizielle API
Frühere Anleitungen wie dieser Leitfaden vom Februar 2026 bezogen sich auf die Webkonsole. Mit der neuen API können Sie Seedance von jedem System, jeder Sprache und in automatisierten Pipelines nutzen – nicht mehr nur manuell per Web.
Voraussetzungen
- Volcengine-Konto unter volcengine.com anlegen.
-
In der Ark-Konsole API-Schlüssel generieren:
https://console.volcengine.com/ark/region:ark+cn-beijing/apikey -
API-Key als Umgebungsvariable speichern:
export ARK_API_KEY="your-api-key-here" -
Jeder API-Request benötigt:
Authorization: Bearer YOUR_ARK_API_KEY
Neue Konten erhalten kostenloses Testguthaben – reicht für ca. 8x 15s-Generierungen in 1080p.
Text-zu-Video: Ihre erste Anfrage
Basis-URL:
https://ark.cn-beijing.volces.com/api/v3
POST für T2V-Aufgabe an /v1/contents/generations/tasks:
cURL-Beispiel
curl -X POST "https://ark.cn-beijing.volces.com/api/v3/contents/generations/tasks" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $ARK_API_KEY" \
-d '{
"model": "doubao-seedance-2-0-260128",
"content": [
{
"type": "text",
"text": "A golden retriever running through a sunlit wheat field, wide tracking shot, cinematic"
}
],
"resolution": "1080p",
"ratio": "16:9",
"duration": 5,
"watermark": false
}'
Antwort:
{"id": "cgt-2025xxxxxxxx-xxxx"}
Python-Beispiel (offizielles SDK)
SDK installieren:
pip install volcenginesdkarkruntime
Aufgabe senden:
import os
from volcenginesdkarkruntime import Ark
client = Ark(api_key=os.environ.get("ARK_API_KEY"))
resp = client.content_generation.tasks.create(
model="doubao-seedance-2-0-260128",
content=[
{
"type": "text",
"text": "A golden retriever running through a sunlit wheat field, wide tracking shot, cinematic"
}
],
resolution="1080p",
ratio="16:9",
duration=5,
watermark=False,
)
print(resp.id)
Speichern Sie die Aufgaben-ID für das Polling.
Das asynchrone Aufgabenmuster: Senden, Abfragen, Herunterladen
Die Generierung dauert (bei 5s/1080p ca. 60–120 Sekunden). Status-Workflow:
queued -> running -> succeeded
-> failed
-> expired
-> cancelled
Abfragen, bis Status ≠ queued/running.
Python-Abfrageschleife
import os
import time
import requests
from volcenginesdkarkruntime import Ark
client = Ark(api_key=os.environ.get("ARK_API_KEY"))
# Schritt 1: Aufgabe senden
resp = client.content_generation.tasks.create(
model="doubao-seedance-2-0-260128",
content=[
{"type": "text", "text": "Aerial shot of a mountain lake at sunrise, slow dolly forward"}
],
resolution="1080p",
ratio="16:9",
duration=5,
watermark=False,
)
task_id = resp.id
print(f"Task submitted: {task_id}")
# Schritt 2: Abfragen mit exponentiellem Backoff
wait = 10
while True:
result = client.content_generation.tasks.get(task_id=task_id)
status = result.status
print(f"Status: {status}")
if status == "succeeded":
video_url = result.content.video_url
print(f"Video URL: {video_url}")
break
elif status in ("failed", "expired", "cancelled"):
print(f"Task ended with status: {status}")
break
time.sleep(wait)
wait = min(wait * 2, 60) # maximal 60 Sekunden
# Schritt 3: Video herunterladen
if status == "succeeded":
response = requests.get(video_url, stream=True)
with open("output.mp4", "wb") as f:
for chunk in response.iter_content(chunk_size=8192):
f.write(chunk)
print("Heruntergeladen: output.mp4")
Exponentieller Backoff verhindert Überlastung, 60s als Maximum ist praxistauglich.
Bild-zu-Video (I2V): Animiertes Standbild
Fügen Sie ein image_url-Objekt zu content hinzu. Das Bild wird erster Frame.
resp = client.content_generation.tasks.create(
model="doubao-seedance-2-0-260128",
content=[
{
"type": "text",
"text": "The woman slowly turns her head and smiles at the camera"
},
{
"type": "image_url",
"image_url": {"url": "https://example.com/portrait.jpg"}
}
],
ratio="adaptive",
duration=5,
watermark=False,
)
Mit ratio: "adaptive" übernimmt das Modell das Bildseitenverhältnis.
- Max. 30 MB pro Bild
- Bis zu 9 Bilder pro Anfrage
Erster und letzter Frame: Start- und Endpunkte steuern
Zwei Bilder plus Text = Animation von Bild A zu Bild B.
resp = client.content_generation.tasks.create(
model="doubao-seedance-2-0-260128",
content=[
{
"type": "text",
"text": "The flower blooms from bud to full open, macro lens, soft light"
},
{
"type": "image_url",
"image_url": {"url": "https://example.com/flower-bud.jpg"}
},
{
"type": "image_url",
"image_url": {"url": "https://example.com/flower-open.jpg"}
}
],
ratio="adaptive",
duration=8,
watermark=False,
)
Reihenfolge: 1. Startbild, 2. Endbild. Optional return_last_frame: true setzen, um das letzte Bild für Folgeanfragen zu erhalten.
Multimodale Referenzen: Bilder, Video, Audio kombinieren
content kann enthalten:
-
{"type": "text", ...}(Prompt) -
{"type": "image_url", ...}(Bild) -
{"type": "video_url", ...}(Video) -
{"type": "audio_url", ...}(Audio)
Grenzwerte:
- Bis 9 Bilder (<30 MB/Bild)
- Bis 3 Videos (2–15s, <50 MB/Clip)
- Bis 3 Audios (MP3, <15 MB/Datei)
Beispiel-Request:
resp = client.content_generation.tasks.create(
model="doubao-seedance-2-0-260128",
content=[
{
"type": "text",
"text": "Match the visual style of the reference clip and add the provided background audio"
},
{
"type": "image_url",
"image_url": {"url": "https://example.com/style-reference.jpg"}
},
{
"type": "video_url",
"video_url": {"url": "https://example.com/motion-reference.mp4"}
},
{
"type": "audio_url",
"audio_url": {"url": "https://example.com/background-music.mp3"}
}
],
duration=10,
ratio="16:9",
watermark=False,
)
Mit Videoreferenz sinkt der Abrechnungssatz auf die V2V-Stufe (~3,90 $/Mio Token).
Native Audioerzeugung
Aktivieren Sie generate_audio: true, um Audio und Video gemeinsam zu generieren (inkl. Dialog, Musik, Effekte, Umgebungsgeräusche, Lippensynchronisation).
resp = client.content_generation.tasks.create(
model="doubao-seedance-2-0-260128",
content=[
{
"type": "text",
"text": "A street musician plays guitar outside a cafe in Paris, crowds passing by, city sounds"
}
],
resolution="1080p",
ratio="16:9",
duration=10,
generate_audio=True,
watermark=False,
)
Audio erhöht die Token-Anzahl geringfügig.
Auflösung, Seitenverhältnis und Dauer steuern
-
resolution:
"480p","720p","1080p","2K"(Standard:"1080p") -
ratio:
"16:9","9:16","4:3","3:4","21:9","1:1","adaptive" - duration: 4–15 Sekunden (Standard: 5)
Das schnelle Modell (doubao-seedance-2-0-fast-260128) ist für Prototyping, das Standardmodell für finale Produktionen.
Seedance 2.0 ist optimal, wenn Sie native Audio/Video-Co-Generierung, Frame-Kontrolle oder multimodale Referenzen benötigen. Für einfaches T2V und geringe Kosten: das schnelle Modell bei 480p verwenden.
Kosten aus der Antwort ablesen
Nach erfolgreicher Aufgabe enthält die Antwort ein usage-Feld:
{
"usage": {
"completion_tokens": 246840,
"total_tokens": 246840
}
}
- 15s/1080p ≈ 308.880 Token
- 5s/1080p ≈ 102.960 Token
Preise (T2V/I2V 1080p): 46 Yuan/Mio Token (~6,40 $/Mio Token).
Schnellübersicht:
- 5s 1080p: ~102.960 Token ≈ 0,93 $
- 10s 1080p: ~205.920 Token ≈ 1,97 $
Mit Videoreferenz (V2V): 28 Yuan/Mio Token (~3,90 $/Mio Token).
Die genaue Token-Anzahl finden Sie in der Antwort – multiplizieren Sie mit Ihrem Stufensatz, um die Kosten zu berechnen.
Wichtig: Video innerhalb von 24 Stunden herunterladen
Die video_url läuft 24h nach erfolgreicher Aufgabe ab (danach 403-Fehler). Laden Sie die Datei sofort nach Status succeeded herunter. Das Feld execution_expires_after gibt das Aufgabenzeitfenster an (z.B. 172800 Sekunden = 48h), die Video-URL ist trotzdem nur 24h gültig. Aufgabenhistorie: 7 Tage.
So testen Sie die Seedance API mit Apidog
Seedance benötigt einen mehrstufigen Testablauf. Mit Apidog können Sie das exakt abbilden.
Schritt-für-Schritt:
1. Test-Szenario anlegen
- In Apidog im Testmodul ein neues Szenario „Seedance 2.0 Video-Generierung“ erstellen.
- Umgebungsvariable
ARK_API_KEYsetzen. - In Requests
{{ARK_API_KEY}}verwenden.
2. Übermittlungsanfrage
- POST an
https://ark.cn-beijing.volces.com/api/v3/contents/generations/tasks. - Authorization:
Bearer {{ARK_API_KEY}}. - JSON-Body nach Bedarf.
- Nach dem Schritt: Aufgaben-ID per JSONPath (
$.id) extrahieren und alsTASK_IDspeichern.
3. Warte-Prozessor
- Nach Extraktion: 30 Sekunden warten.
4. Abfrage in For-Schleife
- For-Block, max. 20 Iterationen.
- GET an
https://ark.cn-beijing.volces.com/api/v3/contents/generations/tasks/{{TASK_ID}}mit Auth. - Nach GET: 10s warten.
- Schleife abbrechen bei
$.status == "succeeded"oder"failed".
- GET an
5. Assertions
- Nach Schleife prüfen:
-
$.status=="succeeded" -
$.content.video_urlnicht leer
-
Apidog generiert einen vollständigen Testbericht. Sie können cURL-Befehle direkt importieren, um Requests anzulegen.
Preisaufschlüsselung: Was ein 10-sekündiges Video kostet
Seedance nutzt Pay-as-you-go, keine monatlichen Lizenzen. Testguthaben für erste Experimente.
| Aufgabentyp | Rate (pro 1 Mio. Token) |
|---|---|
| T2V / I2V bei 1080p | 46 Yuan (~$6.40) |
| V2V (Video-Referenz) | 28 Yuan (~$3.90) |
Ungefähre Kosten bei 1080p:
| Dauer | Ungefähre Token | Kosten (T2V/I2V) |
|---|---|---|
| 5 Sekunden | ~103.000 | ~$0.66 Yuan / ~$0.93 |
| 10 Sekunden | ~206.000 | ~$9.48 Yuan / ~$1.32 |
| 15 Sekunden | ~309.000 | ~$14.21 Yuan / ~$1.97 |
Reduzieren Sie die Auflösung für niedrigere Kosten (480p ist am günstigsten). Beginnen Sie mit 720p für Entwicklung, erhöhen Sie bei Bedarf.
Häufige Fehler und Lösungen
429 Too Many Requests
Zu viele parallele Aufgaben. Exponentiellen Backoff verwenden (Start: 10s, dann verdoppeln bis 60s).
status: "failed"
Meist wegen Sicherheitsfiltern, beschädigten/zu großen Bildern oder ungültigen Parametern. Eingaben prüfen und erneut versuchen.
status: "expired"
Aufgabe zu lange in Warteschlange. Bei Lastspitzen erneut senden.
403 bei video_url
Video-URL abgelaufen (nach 24h). Nur Lösung: neu generieren (ggf. mit gespeichertem Seed).
Seed-Reproduzierbarkeit
Seed aus Antwort speichern und bei identischen Parametern erneut übergeben, um gleiche Ausgabe zu reproduzieren.
Fazit
Die Seedance 2.0 API bietet Ihnen direkten Zugang zu fortschrittlicher Videogenerierung. Das Aufgabenmuster: POST → abfragen → sofort herunterladen. Multimodale Eingaben, native Audiogen und Frame-Steuerung ermöglichen Automatisierungen, die per Weboberfläche unmöglich wären.
Richten Sie Ihre Testflows in Apidog ein, bevor Sie in Produktion gehen – so vermeiden Sie typische Fehler bei Abfragen, Extraktion und URL-Ablauf.
FAQ
F: Was ist der Unterschied zwischen doubao-seedance-2-0-260128 und doubao-seedance-2-0-fast-260128?
A: Standardmodell = höchste Qualität, für Produktion. Fast-Modell = schneller, aber geringere Qualität. Für schnelle Prompt-Iterationen Fast-Modell, für finale Videos Standard verwenden.
F: Kann ich Seedance 2.0 außerhalb Chinas nutzen?
A: Ja, API läuft in Peking – höhere Latenz außerhalb Chinas möglich. Volcengine-Nutzungsbedingungen beachten.
F: Wie verketten ich mehrere Clips zu einem längeren Video?
A: Bei jeder Generierung return_last_frame: true setzen. Das Endbild als ersten Frame für den nächsten Clip nutzen. Finales Video mit einer Videobibliothek zusammenfügen.
F: Kostet die native Audioerzeugung mehr?
A: Ja, der Tokenverbrauch steigt moderat durch gemeinsame Audio-Video-Erzeugung.
F: Kann ich einen Webhook statt Polling nutzen?
A: Ja, mit Parameter callback_url in der POST-Anfrage. Die API ruft Ihre URL bei Statusänderung auf.
F: Was passiert, wenn ich das Limit von 9 Bildern überschreite?
A: Die API gibt einen 400-Fehler zurück. Maximal 9 Bilder pro Anfrage zulässig.
F: Garantiert der Seed-Parameter die exakte Reproduktion?
A: Erhöht Reproduzierbarkeit, garantiert aber keine 100% identische Ausgabe, falls Parameter/Modell sich ändern.
F: Wie verfolge ich die Ausgaben über mehrere Aufgaben hinweg?
A: completion_tokens aus jeder Antwort auslesen, mit aktuellem Tokenpreis multiplizieren und loggen. Ein zentrales Dashboard gibt es nicht, eigene Kostenüberwachung implementieren.


Top comments (0)