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

# Seedance 2.5 Text-to-Video

> - Videogenerierung aus reinen Textprompts, unterstützt Websuche zur Verbesserung der Aktualität
- **Unterstützt jetzt AIGC-Real-Person-Materialien**
- Unterstützt den **Entwurfsmodus**: Mit `draft: true` erstellen Sie zunächst einen 480p-Entwurf. Wenn Sie zufrieden sind, wandeln Sie ihn mit [Draft-to-Video](/de/api-manual/video-series/seedance/seedance-2.5/seedance-2.5-draft-to-video) in ein finales 1080p-Video um. Beide Anfragen werden separat abgerechnet
- Asynchroner Verarbeitungsmodus, verwenden Sie die zurückgegebene Aufgaben-ID [zur Abfrage](/de/api-manual/task-management/get-task-detail)
- Der generierte Video-Link ist 24 Stunden gültig, bitte speichern Sie ihn rechtzeitig



## OpenAPI

````yaml de/api-manual/video-series/seedance/seedance-2.5/seedance-2.5-text-to-video.json POST /v1/videos/generations
openapi: 3.1.0
info:
  title: Seedance 2.5 Text-to-Video API
  description: >-
    Seedance 2.5 Text-to-Video-API, unterstützt die Videogenerierung aus reinen
    Textprompts mit Websuche zur Verbesserung der Aktualität
  license:
    name: MIT
  version: 1.0.0
servers:
  - url: https://api.evolink.ai
    description: Produktionsumgebung
security:
  - bearerAuth: []
tags:
  - name: Videogenerierung
    description: API-Schnittstellen für KI-Videogenerierung
paths:
  /v1/videos/generations:
    post:
      tags:
        - Videogenerierung
      summary: Seedance 2.5 Text-to-Video
      description: >-
        - Videogenerierung aus reinen Textprompts, unterstützt Websuche zur
        Verbesserung der Aktualität

        - **Unterstützt jetzt AIGC-Real-Person-Materialien**

        - Unterstützt den **Entwurfsmodus**: Mit `draft: true` erstellen Sie
        zunächst einen 480p-Entwurf. Wenn Sie zufrieden sind, wandeln Sie ihn
        mit
        [Draft-to-Video](/de/api-manual/video-series/seedance/seedance-2.5/seedance-2.5-draft-to-video)
        in ein finales 1080p-Video um. Beide Anfragen werden separat abgerechnet

        - Asynchroner Verarbeitungsmodus, verwenden Sie die zurückgegebene
        Aufgaben-ID [zur
        Abfrage](/de/api-manual/task-management/get-task-detail)

        - Der generierte Video-Link ist 24 Stunden gültig, bitte speichern Sie
        ihn rechtzeitig
      operationId: createSeedance25TextToVideo
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/VideoGenerationRequest'
            examples:
              basic:
                summary: Einfaches Text-to-Video
                value:
                  model: seedance-2.5-text-to-video
                  prompt: >-
                    A macro lens focuses on a green glass frog on a leaf. The
                    focus gradually shifts from its smooth skin to its
                    completely transparent abdomen, where a bright red heart is
                    beating powerfully and rhythmically.
                  duration: 8
                  quality: 720p
                  aspect_ratio: '16:9'
                  generate_audio: true
                  content_filter: true
              web_search:
                summary: Text-to-Video mit Websuche
                value:
                  model: seedance-2.5-text-to-video
                  prompt: >-
                    Today's New York weather forecast, with city skyline
                    animation and temperature overlay display
                  duration: 8
                  quality: 720p
                  aspect_ratio: '16:9'
                  model_params:
                    web_search: true
              draft:
                summary: Entwurfsmodus (480p)
                value:
                  model: seedance-2.5-text-to-video
                  prompt: >-
                    Eine Makrokamera fokussiert einen grünen Glasfrosch auf
                    einem Blatt. Der Fokus wandert langsam von seiner glatten
                    Haut zu seinem vollständig durchsichtigen Bauch, in dem ein
                    leuchtend rotes Herz kräftig und rhythmisch schlägt.
                  duration: 8
                  quality: 480p
                  aspect_ratio: '16:9'
                  generate_audio: true
                  content_filter: true
                  draft: true
      responses:
        '200':
          description: Videogenerierungsaufgabe erfolgreich erstellt
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VideoGenerationResponse'
        '400':
          description: Ungültige Anfrageparameter
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: invalid_parameter
                  message: Invalid request parameters
                  type: invalid_request_error
        '401':
          description: Nicht authentifiziert, Token ungültig oder abgelaufen
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: unauthorized
                  message: Invalid or expired token
                  type: authentication_error
        '402':
          description: Unzureichendes Guthaben, Aufladung erforderlich
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: insufficient_quota
                  message: Insufficient quota. Please top up your account.
                  type: insufficient_quota
        '403':
          description: Zugriff verweigert
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: model_access_denied
                  message: >-
                    Token does not have access to model:
                    seedance-2.5-text-to-video
                  type: invalid_request_error
        '429':
          description: Anfragelimit überschritten
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: rate_limit_exceeded
                  message: Too many requests, please try again later
                  type: rate_limit_error
        '500':
          description: Interner Serverfehler
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: internal_error
                  message: Internal server error
                  type: api_error
        '503':
          description: >-
            Dienst vorübergehend nicht verfügbar; bei nicht verfügbarem
            Entwurfsmodus kann draft_unavailable zurückgegeben werden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                draft_unavailable:
                  summary: Entwurfsmodus vorübergehend nicht verfügbar
                  value:
                    error:
                      code: draft_unavailable
                      message: >-
                        Draft mode is not available on the selected service
                        right now. Retry later or send the request without
                        draft.
                      type: invalid_request_error
components:
  schemas:
    VideoGenerationRequest:
      type: object
      required:
        - model
        - prompt
      properties:
        model:
          type: string
          description: Name des Videogenerierungsmodells
          enum:
            - seedance-2.5-text-to-video
          default: seedance-2.5-text-to-video
          example: seedance-2.5-text-to-video
        prompt:
          type: string
          description: >-
            Textprompt zur Beschreibung des gewünschten Videos. Unterstützt
            Chinesisch und Englisch, empfohlen max. 500 Zeichen auf Chinesisch,
            max. 1000 Wörter auf Englisch. Maximale Prompt-Länge: 10000 Tokens


            **Hinweis:**

            - Dieses Modell ist ein reines Text-to-Video-Modell und unterstützt
            keine Eingabe von `image_urls`, `video_urls` oder `audio_urls`
          example: >-
            A macro lens focuses on a green glass frog on a leaf. The focus
            gradually shifts from its smooth skin to its completely transparent
            abdomen, where a bright red heart is beating powerfully and
            rhythmically.
        duration:
          type: integer
          description: >-
            Videodauer (Sekunden), Standard ist `5` Sekunden


            **Hinweise:**

            - Unterstützt beliebige Ganzzahlwerte zwischen `4` und `30` Sekunden

            - `-1`: automatische Dauer, das Modell wählt eine Länge zwischen
            `4`–`30` Sekunden, abgerechnet wird nach der tatsächlichen
            Ausgabelänge

            - Die Dauer wirkt sich direkt auf die Abrechnung aus
          default: 5
          example: 8
        quality:
          type: string
          description: >-
            Videoauflösung, Standard ist `720p`


            **Verfügbare Werte:**

            - `480p`: Niedrigere Auflösung, günstigerer Preis

            - `720p`: Standardauflösung, dies ist der Standardwert

            - `1080p`: Ultra-HD-Auflösung


            **Entwurfsmodus:** Wenn `draft` auf `true` gesetzt ist, wird nur
            `480p` unterstützt. Wird `quality` weggelassen, wird automatisch
            `480p` verwendet
          enum:
            - 480p
            - 720p
            - 1080p
          default: 720p
          example: 720p
        draft:
          type: boolean
          default: false
          description: >-
            Schalter für den Entwurfsmodus, Standard ist `false`


            **Details:**

            - `true`: Erstellt zunächst einen 480p-Entwurf mit kürzerer
            Generierungszeit und regulärer 480p-Abrechnung

            - Bei aktiviertem Entwurfsmodus muss `quality` entweder `480p` sein
            oder weggelassen werden. Andere Auflösungen führen zu einem
            400-Parameterfehler

            - Darf nur auf der obersten Ebene des Anfragekörpers stehen.
            Innerhalb von `model_params` führt das Feld zu einem
            400-Parameterfehler


            **In ein finales Video umwandeln:**

            - Sobald der Entwurf fertig ist, liefert die
            [Aufgabenabfrage](/de/api-manual/task-management/get-task-detail)
            das Feld `draft_expires_at`

            - Übergeben Sie vor diesem Zeitpunkt die Aufgaben-ID des Entwurfs an
            [Seedance 2.5
            Draft-to-Video](/de/api-manual/video-series/seedance/seedance-2.5/seedance-2.5-draft-to-video),
            um ein finales 1080p-Video mit demselben Inhalt zu erstellen

            - Das finale Video und der Entwurf werden separat abgerechnet. Wenn
            Sie mit dem Entwurf nicht zufrieden sind, können Sie auf die
            Konvertierung verzichten und zahlen nur für den Entwurf

            - Die Gültigkeitsdauer beträgt standardmäßig 24 Stunden ab
            Fertigstellung des Entwurfs; maßgeblich ist `draft_expires_at`.
            Senden Sie die Konvertierungsanfrage frühzeitig: Läuft der Entwurf
            in der Warteschlange ab, schlägt die Konvertierung ebenfalls fehl


            **Vorübergehend nicht verfügbar:** Wenn der Dienst vorübergehend
            nicht verfügbar ist, kann ein 503-Fehler zurückgegeben werden. Bei
            Fehlercode `draft_unavailable` versuchen Sie es später erneut oder
            entfernen Sie `draft`, um den normalen Generierungsmodus zu
            verwenden
          example: false
        aspect_ratio:
          type: string
          description: >-
            Video-Seitenverhältnis, Standard ist `adaptive`


            **Verfügbare Werte:**

            - `16:9` (Querformat), `9:16` (Hochformat), `1:1` (Quadrat), `4:3`,
            `3:4`, `21:9` (Ultraweitbild)

            - `adaptive`: Das Modell wählt intelligent das beste
            Seitenverhältnis basierend auf dem Prompt


            **Pixelwerte pro Auflösung:**


            | Seitenverhältnis | 480p | 720p | 1080p |

            |:------:|:----:|:----:|:----:|

            | 16:9 | 854×480 | 1280×720 | 1920×1080 |

            | 4:3 | 752×560 | 1112×834 | 1664×1248 |

            | 1:1 | 640×640 | 960×960 | 1440×1440 |

            | 3:4 | 560×752 | 834×1112 | 1248×1664 |

            | 9:16 | 480×854 | 720×1280 | 1080×1920 |

            | 21:9 | 992×432 | 1470×630 | 2206×946 |
          enum:
            - '16:9'
            - '9:16'
            - '1:1'
            - '4:3'
            - '3:4'
            - '21:9'
            - adaptive
          default: adaptive
          example: '16:9'
        generate_audio:
          type: boolean
          description: >-
            Ob synchronisiertes Audio generiert werden soll, Standard ist `true`


            **Verfügbare Werte:**

            - `true`: Video enthält synchronisiertes Audio (Stimmen,
            Soundeffekte, Hintergrundmusik), keine zusätzlichen Kosten. Es wird
            empfohlen, Dialogteile in Anführungszeichen zu setzen, um die
            Audiogenerierung zu optimieren

            - `false`: Stummes Video ausgeben
          default: true
          example: true
        content_filter:
          type: boolean
          description: >-
            Inhaltsfilter, Standard ist `true`


            **Verfügbare Werte:**

            - `true`: Standardmäßige Inhaltssicherheitsprüfung, dies ist der
            Standard

            - `false`: Lockert die Inhaltsbeschränkungen, Abrechnung mit +10%
            (`1.1x`). Illegale und verbotene Inhalte werden unabhängig von
            dieser Einstellung immer durchgesetzt


            **Nicht mit der Websuche kombinierbar:**

            - `content_filter: false` und `model_params.web_search: true` können
            nicht zusammen verwendet werden; werden beide gesendet, wird ein
            400-Parameterfehler zurückgegeben

            - Behalten Sie `content_filter: true` (Standard) bei, wenn die
            Websuche benötigt wird
          default: true
          example: true
        output_format:
          type: string
          description: >-
            Ausgabe-Containerformat, Standard ist `mp4`


            **Verfügbare Werte:**

            - `mp4`: H.264-Kodierung mit bester Kompatibilität und
            standardmäßiger Farbpräzision, dies ist der Standard

            - `mov`: H.264 + yuv444p-Chroma-Sampling + PCM-Audio für höhere
            Farbtreue, empfohlen für Color-Grading-, Keying- und
            Compositing-Workflows. Die Wiedergabe im Browser wird möglicherweise
            nicht unterstützt; laden Sie die Datei herunter und spielen Sie sie
            mit VLC / mpv / ffplay ab. Keine zusätzlichen Kosten
          enum:
            - mp4
            - mov
          default: mp4
          example: mp4
        model_params:
          type: object
          description: Erweiterte Modellparameter
          properties:
            web_search:
              type: boolean
              description: >-
                Websuche, Standard ist `false`


                **Hinweise:**

                - Nach der Aktivierung entscheidet das Modell eigenständig
                anhand des Prompts, ob Internetinhalte durchsucht werden sollen
                (z.B. Produkte, Wetter usw.), um die Aktualität zu verbessern

                - Erhöht die Latenz geringfügig

                - Kosten fallen nur an, wenn die Suche tatsächlich ausgelöst
                wird; nach der Aktivierung können mehrere Aufrufe erfolgen


                **Nicht mit dem Inhaltsfilter kombinierbar:**

                - Behalten Sie `content_filter: true` bei, wenn die Websuche
                aktiviert ist; die Kombination mit `content_filter: false` gibt
                einen 400-Parameterfehler zurück
              default: false
              example: false
        callback_url:
          type: string
          description: >-
            HTTPS-Callback-URL nach Aufgabenabschluss


            **Callback-Zeitpunkte:**

            - Wird bei Aufgabenabschluss (completed) oder Fehler (failed)
            ausgelöst

            - Wird nach Bestätigung der Abrechnung gesendet


            **Sicherheitseinschränkungen:**

            - Nur HTTPS-Protokoll unterstützt

            - Callbacks an interne IP-Adressen sind verboten (127.0.0.1,
            10.x.x.x, 172.16-31.x.x, 192.168.x.x usw.)

            - URL-Länge maximal `2048` Zeichen


            **Callback-Mechanismus:**

            - Timeout: `10` Sekunden

            - Maximal `3` Wiederholungsversuche nach Fehler (jeweils nach
            `1`/`2`/`4` Sekunden)

            - Das Format des Callback-Antwortkörpers entspricht dem
            Rückgabeformat der Aufgabenabfrage-Schnittstelle

            - Ein 2xx-Statuscode gilt als Erfolg, andere Statuscodes lösen
            Wiederholungsversuche aus
          format: uri
          example: https://your-domain.com/webhooks/video-task-completed
    VideoGenerationResponse:
      type: object
      properties:
        created:
          type: integer
          description: Zeitstempel der Aufgabenerstellung
          example: 1761313744
        id:
          type: string
          description: Aufgaben-ID
          example: task-unified-1774857405-abc123
        model:
          type: string
          description: Tatsächlich verwendeter Modellname
          example: seedance-2.5-text-to-video
        object:
          type: string
          enum:
            - video.generation.task
          description: Spezifischer Aufgabentyp
        progress:
          type: integer
          description: Aufgabenfortschritt in Prozent (0-100)
          minimum: 0
          maximum: 100
          example: 0
        status:
          type: string
          description: Aufgabenstatus
          enum:
            - pending
            - processing
            - completed
            - failed
          example: pending
        task_info:
          $ref: '#/components/schemas/VideoTaskInfo'
          description: Detaillierte Informationen zur Videoaufgabe
        type:
          type: string
          enum:
            - text
            - image
            - audio
            - video
          description: Ausgabetyp der Aufgabe
          example: video
        usage:
          $ref: '#/components/schemas/VideoUsage'
          description: Nutzungs- und Abrechnungsinformationen
    ErrorResponse:
      type: object
      properties:
        error:
          type: object
          properties:
            code:
              type: string
              description: Fehlercode-Bezeichner
            message:
              type: string
              description: Fehlerbeschreibung
            type:
              type: string
              description: Fehlertyp
    VideoTaskInfo:
      type: object
      properties:
        can_cancel:
          type: boolean
          description: >-
            Gibt an, ob die Aufgabe abgebrochen werden kann. Seedance 2.5
            unterstützt keinen Abbruch durch Benutzer; dieses Feld gibt immer
            `false` zurück.
          example: false
        estimated_time:
          type: integer
          description: Geschätzte Fertigstellungszeit (Sekunden)
          minimum: 0
          example: 165
        video_duration:
          type: integer
          description: Videodauer (Sekunden)
          example: 8
    VideoUsage:
      type: object
      description: Nutzungs- und Abrechnungsinformationen
      properties:
        billing_rule:
          type: string
          description: Abrechnungsregel
          enum:
            - per_call
            - per_token
            - per_second
          example: per_second
        credits_reserved:
          type: number
          description: Geschätzter Credit-Verbrauch
          minimum: 0
          example: 50
        user_group:
          type: string
          description: Benutzergruppenkategorie
          example: default
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: >-
        ##Alle Schnittstellen erfordern eine Authentifizierung mit Bearer
        Token##


        **API Key erhalten:**


        Besuchen Sie die
        [API-Key-Verwaltungsseite](https://evolink.ai/dashboard/keys), um Ihren
        API Key zu erhalten


        **Fügen Sie ihn im Anfrage-Header hinzu:**

        ```

        Authorization: Bearer YOUR_API_KEY

        ```

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.