> ## Documentation Index
> Fetch the complete documentation index at: https://docs.tokenlab.sh/llms.txt
> Use this file to discover all available pages before exploring further.

# Videoerstellung

> Generieren Sie Videos mit expliziten öffentlichen Operationen, asynchronem Polling und modell-spezifischen Medieninputs.

Die Videoerstellung ist asynchron. `POST /v1/videos/generations` gibt eine öffentliche Aufgabenidentität und normalerweise eine `poll_url` zurück; das endgültige Video erscheint in späteren Statusantworten.

Wenn das ausgewählte Seedance-Modell die TokenLab-Materialbibliothek verwenden kann, werden Bild-URLs und unterstützte Inline-data-URLs vor der Generierung als wiederverwendbare TokenLab-Materialien vorbereitet. Dauert die Vorbereitung länger als 60 Sekunden, versuchen Sie es erneut, sobald die zurückgegebenen `auto_material_asset_ids` `ACTIVE` sind. Kann das ausgewählte Modell die Materialbibliothek nicht verwenden, laufen normale Bildeingaben über den regulären Bildpfad.

## Unterstützte Operationen

Verwenden Sie explizite `operation` in der Produktion. TokenLab kann einige Operationen aus den Eingaben ableiten, aber explizite Betriebswerte machen Validierung, Unterstützung und Wiederholungen klarer.

| Operation            | Erforderliche oder typische Eingabe                                                     | Anwendungsfall                                           |
| -------------------- | --------------------------------------------------------------------------------------- | -------------------------------------------------------- |
| `text-to-video`      | `prompt`                                                                                | Nur aus Text generieren                                  |
| `image-to-video`     | `image_url` oder kompatibles `image`                                                    | Ein Startbild animieren                                  |
| `reference-to-video` | `reference_images` und optionale `video_urls` / `audio_urls` bei unterstützten Modellen | Identität, Stil oder Asset-Referenzen beibehalten        |
| `start-end-to-video` | `start_image`, `end_image`                                                              | Erste und letzte Frames steuern                          |
| `video-to-video`     | `video_url` oder modell-spezifische `task_id`                                           | Einen bestehenden Clip transformieren oder hochskalieren |
| `motion-control`     | `image_url` plus `video_url`                                                            | Bewegungsreferenz auf ein Subjekt anwenden               |
| `audio-to-video`     | `audio_url`                                                                             | Audio-konditionierte Videoabläufe                        |
| `video-extension`    | `task_id`, `extend_at` oder modell-spezifische Erweiterungsfelder                       | Ein generiertes Video fortsetzen                         |

## Modellerkennung

```bash theme={null}
curl "https://api.tokenlab.sh/v1/models?recommended_for=video" \\
  -H "Authorization: Bearer sk-your-api-key"
```

Verwenden Sie in `model` die von TokenLab angezeigten Modell-IDs und wählen Sie Funktionsvarianten mit `operation` und den passenden Medieneingaben. Beispiele sind `wan-2.7`, `happyhorse-1.0`, `viduq3`, `viduq3-mix`, `pixverse-v6`, `kling-3.0-video`, `veo3.1` und `seedance-2.0`; verwenden Sie keine operationsspezifischen Suffixe als TokenLab-Modellnamen.

Lesen Sie die Details des ausgewählten Modells, bevor Sie sich auf spezialisierte Felder wie `reference_images`, `kling_elements`, `output_audio`, `duration`, `resolution` oder `aspect_ratio` verlassen.

## Anfrage erstellen

```bash theme={null}
curl https://api.tokenlab.sh/v1/videos/generations \\
  -H "Authorization: Bearer sk-your-api-key" \\
  -H "Content-Type: application/json" \\
  -d '{
    "model": "veo3.1",
    "operation": "text-to-video",
    "prompt": "Eine ruhige filmische Aufnahme einer Katze, die durch einen sonnigen Garten läuft",
    "duration": 4,
    "aspect_ratio": "16:9"
  }'
```

Für Produktionsmedieneingaben bevorzugen Sie öffentliche `https` URLs gegenüber Inline-`data:` URLs. Wenn Sie temporäre URLs verwenden, halten Sie diese gültig, bis TokenLab die Aufgabe erstellt hat.

## Eingaben und modell-spezifische Felder

* Anfragen der Veo 3 Familie sind standardmäßig auf Audio-an, wenn `output_audio` weggelassen wird. Setzen Sie es explizit, wenn das Modell den Schalter unterstützt und Ihre UX von Ton abhängt.
* `kling_elements` ist für `kling-3.0-video` bildkonditionierte Anfragen. Referenzieren Sie jedes Element im `prompt` als `@name`; kombinieren Sie es nicht mit `output_audio=true`.
* Lesen Sie für die Seedance 2.0 Familie den [Leitfaden zu Seedance 2.0 Videomodellen](/de/guides/seedance-2-video), bevor Sie 4K-Ausgabe, Fast/Mini-Auflösungsgrenzen oder multimodale Referenzeingaben verwenden.
* Für `grok-imagine-video` verwendet video-to-video eine öffentliche `.mp4` `video_url`; modell-spezifische Einschränkungen wie `duration` und `resolution` müssen aus dem Modelldetails stammen.

## PixVerse und HappyHorse

| Modell                       | Operationen                                                                   | Eingaben                                                                    | Auflösung               | Dauer                                                                                           | Audio-Auswahl                    |
| ---------------------------- | ----------------------------------------------------------------------------- | --------------------------------------------------------------------------- | ----------------------- | ----------------------------------------------------------------------------------------------- | -------------------------------- |
| `pixverse-c1`, `pixverse-v6` | `text-to-video`, `image-to-video`, `start-end-to-video`, `reference-to-video` | `prompt`; `image_url`; `start_image` + `end_image`; `reference_images`      | 360p, 540p, 720p, 1080p | Beliebige Ganzzahl von 1 bis 15 Sekunden                                                        | `output_audio`, Standard `false` |
| `pixverse-v5.6`              | `text-to-video`, `image-to-video`, `start-end-to-video`, `reference-to-video` | Gleiche Felder wie C1 und V6                                                | 360p, 540p, 720p, 1080p | 5, 8 oder 10 Sekunden; 1080p unterstützt 5 oder 8 Sekunden                                      | `output_audio`, Standard `false` |
| `happyhorse-1.0`             | `text-to-video`, `image-to-video`, `reference-to-video`, `video-to-video`     | `prompt`; `image_url`; `reference_images`; `video_url` + `reference_images` | 720p, 1080p             | 3 bis 15 Sekunden für Generierungsvorgänge; video-to-video-Ausgabe ist auf 15 Sekunden begrenzt | Senden Sie `output_audio` nicht  |

Auf TokenLab akzeptieren die obigen PixVerse-Modelle `operation=video-extension` nicht.

```bash theme={null}
curl https://api.tokenlab.sh/v1/videos/generations \
  -H "Authorization: Bearer sk-your-api-key" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "pixverse-v6",
    "operation": "image-to-video",
    "prompt": "A slow camera move through a neon-lit street",
    "image_url": "https://example.com/start.jpg",
    "resolution": "1080p",
    "duration": 5,
    "output_audio": true
  }'
```

## Ergebnisse abfragen

Verwenden Sie zuerst die zurückgegebene `poll_url`. Wenn Sie einen festen Endpunkt benötigen, verwenden Sie `GET /v1/tasks/{id}` mit derselben `id` / `task_id` aus der Erstellungsantwort.

Abgeschlossene Videoaufgaben können je nach Modell und Ausgabemenge `video_url`, `video` oder `videos` zurückgeben. Behandeln Sie `billing_transaction_id` als Abrechnungsidentifikator, nicht als Aufgabenidentifikator.

## Häufige Fallstricke

* Kodieren Sie keine alten Video-Statuspfade; bevorzugen Sie `poll_url`.
* Kombinieren Sie keine ersten Frame-Felder mit speziellen Referenzbildabläufen, es sei denn, der Modelldetails erlaubt dies.
* Gehen Sie nicht davon aus, dass `duration` die Länge des Eingangsreferenzvideos beschreibt; es steuert normalerweise die Länge des generierten Outputs.
* Wiederholen Sie keine Erstellungsanfragen nach einem Timeout, ohne zu überprüfen, ob bereits eine Aufgabe erstellt wurde.

## API-Referenz

| Thema                        | Referenz                                                          |
| ---------------------------- | ----------------------------------------------------------------- |
| Video erstellen              | [Video erstellen](/de/api-reference/video/create-video)           |
| Video-Status abrufen         | [Video-Status abrufen](/de/api-reference/video/get-video-status)  |
| Aufgabenstatus abrufen       | [Aufgabenstatus abrufen](/de/api-reference/tasks/get-task-status) |
| Aufgabe abbrechen            | [Aufgabe abbrechen](/de/api-reference/tasks/cancel-task)          |
| Abrechnung & Preisgestaltung | [Abrechnung & Preisgestaltung](/de/guides/billing)                |

## OpenAI-Style und Volc-kompatible Video-APIs

Verwenden Sie `/v1/videos/generations` für die einheitliche TokenLab Video-API über mehrere Modelle hinweg. Wenn Sie eine bestehende Seedance-2.0-Integration migrieren, die bereits Volc-ähnliche `content[]`- oder Action-Anfragen nutzt, verwenden Sie die Seedance-Kompatibilitätsendpunkte unter `/api/v3`. Beide Varianten verwenden TokenLab Bearer API Keys und asynchrones Polling, aber Anfrage- und Antwortformate unterscheiden sich.
