> ## 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.

# Wan3.0 Vollständige Parameterreferenz

> Einheitliche API für Wan 3.0 (Allround-Referenzvideo), der Modus wird über den Parameter `model` gewählt

**3 Generierungsmodi:**
- **Text-to-Video** (`wan3.0-text-to-video`): Video allein aus einem Text-Prompt
- **Image-to-Video** (`wan3.0-image-to-video`): Startbild / Start- und Endbild steuern streng Anfang und Ende des Bildes
- **Reference-to-Video** (`wan3.0-reference-video`): gemischte multimodale Referenzen — Referenzbilder + Referenzvideos + Referenzaudio + Dateien / Webseiten

**Gemeinsame Funktionen:**
- Videos von bis zu **30 Sekunden**
- Asynchroner Verarbeitungsmodus, verwenden Sie die zurückgegebene Task-ID für die [Statusabfrage](/de/api-manual/task-management/get-task-detail)
- Generierte Videolinks sind 24 Stunden gültig, bitte zeitnah speichern

## Abrechnung

- **Abrechnungsformel**: abgerechnete Dauer = Dauer des Eingabevideos + Dauer des Ausgabevideos, sekundengenaue Abrechnung
- **Auflösungsmultiplikator**: `480p` = 1x (Basis), `720p` = 2x, `1080p` = 4x
- Referenzbilder, Referenzaudio, Referenzdateien und Weblinks werden **nicht abgerechnet**
- Bei `duration` = `-1` (intelligente Dauer) wird zum Höchstwert von `30` Sekunden vorab reserviert; nach erfolgreicher Aufgabe wird nach der tatsächlichen Ausgabedauer abgerechnet und die Differenz automatisch zurückerstattet
- Das Ein- oder Ausschalten der `audio`-Spur **kostet gleich viel**
- **Fehlgeschlagene Aufgaben werden nicht abgerechnet**, das eingefrorene Guthaben wird vollständig zurückerstattet



## OpenAPI

````yaml de/api-manual/video-series/wan3.0/wan3.0-overview.json POST /v1/videos/generations
openapi: 3.1.0
info:
  title: Wan3.0 Alle Modelle API
  description: >-
    Wan 3.0 Allround-Referenzvideogenerierung, eine Schnittstelle für
    Text-to-Video, Image-to-Video und Reference-to-Video
  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: Wan3.0 Alle Modelle API
      description: >-
        Einheitliche API für Wan 3.0 (Allround-Referenzvideo), der Modus wird
        über den Parameter `model` gewählt


        **3 Generierungsmodi:**

        - **Text-to-Video** (`wan3.0-text-to-video`): Video allein aus einem
        Text-Prompt

        - **Image-to-Video** (`wan3.0-image-to-video`): Startbild / Start- und
        Endbild steuern streng Anfang und Ende des Bildes

        - **Reference-to-Video** (`wan3.0-reference-video`): gemischte
        multimodale Referenzen — Referenzbilder + Referenzvideos + Referenzaudio
        + Dateien / Webseiten


        **Gemeinsame Funktionen:**

        - Videos von bis zu **30 Sekunden**

        - Asynchroner Verarbeitungsmodus, verwenden Sie die zurückgegebene
        Task-ID für die
        [Statusabfrage](/de/api-manual/task-management/get-task-detail)

        - Generierte Videolinks sind 24 Stunden gültig, bitte zeitnah speichern


        ## Abrechnung


        - **Abrechnungsformel**: abgerechnete Dauer = Dauer des Eingabevideos +
        Dauer des Ausgabevideos, sekundengenaue Abrechnung

        - **Auflösungsmultiplikator**: `480p` = 1x (Basis), `720p` = 2x, `1080p`
        = 4x

        - Referenzbilder, Referenzaudio, Referenzdateien und Weblinks werden
        **nicht abgerechnet**

        - Bei `duration` = `-1` (intelligente Dauer) wird zum Höchstwert von
        `30` Sekunden vorab reserviert; nach erfolgreicher Aufgabe wird nach der
        tatsächlichen Ausgabedauer abgerechnet und die Differenz automatisch
        zurückerstattet

        - Das Ein- oder Ausschalten der `audio`-Spur **kostet gleich viel**

        - **Fehlgeschlagene Aufgaben werden nicht abgerechnet**, das
        eingefrorene Guthaben wird vollständig zurückerstattet
      operationId: createWan30Video
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/VideoGenerationRequest'
            examples:
              text_to_video:
                summary: Text-zu-Video
                value:
                  model: wan3.0-text-to-video
                  prompt: >-
                    A kitten runs across a rooftop in the moonlight, city neon
                    flickers in the distance, cinematic quality, smooth camera
                    work.
                  duration: 5
                  quality: 720p
                  aspect_ratio: '16:9'
                  generate_audio: true
              image_to_video:
                summary: Bild-zu-Video (Start- und Endbild)
                value:
                  model: wan3.0-image-to-video
                  prompt: >-
                    A young girl's smile gradually turns into a big laugh, the
                    camera slowly pushes in, and the background light shifts
                    from cool tones to warm tones.
                  image_start: https://example.com/first_frame.jpg
                  image_end: https://example.com/last_frame.jpg
                  duration: 5
                  quality: 720p
              reference_to_video:
                summary: Referenz-zu-Video (multimodales Material)
                value:
                  model: wan3.0-reference-video
                  prompt: >-
                    The character in Video 1 holds Image 3 and plays a soft
                    country folk tune on the chair in Image 4, saying: “What
                    lovely sunshine today.”
                  image_urls:
                    - https://example.com/role.jpg
                    - https://example.com/object.png
                    - https://example.com/guitar.png
                    - https://example.com/chair.png
                  video_urls:
                    - https://example.com/ref_role.mp4
                  duration: 10
                  quality: 720p
                  aspect_ratio: adaptive
              smart_duration:
                summary: Intelligente Dauer (das Modell bestimmt die Länge)
                value:
                  model: wan3.0-text-to-video
                  prompt: >-
                    A high-end smart glasses product ad, minimalist and
                    futuristic, the camera glides over the lens and hinge
                    details and finally settles on the brand logo.
                  duration: -1
                  quality: 1080p
                  aspect_ratio: '16:9'
      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 autorisiert, ungültiges oder abgelaufenes Token
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: unauthorized
                  message: Invalid or expired token
                  type: authentication_error
        '402':
          description: Unzureichendes Kontingent, 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: wan3.0-text-to-video'
                  type: invalid_request_error
        '429':
          description: Ratenlimit ü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
components:
  schemas:
    VideoGenerationRequest:
      type: object
      required:
        - model
      properties:
        model:
          type: string
          description: Name des Videogenerierungsmodells
          enum:
            - wan3.0-text-to-video
            - wan3.0-image-to-video
            - wan3.0-reference-video
          example: wan3.0-text-to-video
        prompt:
          type: string
          description: >-
            Text-Prompt für die Videogenerierung. Chinesisch und Englisch werden
            unterstützt, **jedes chinesische Zeichen / jeder Buchstabe zählt als
            1 Zeichen**, maximale Länge `20000` Zeichen; alles darüber hinaus
            wird automatisch abgeschnitten (ohne Fehler)


            **Pflichtangabe:** für `wan3.0-text-to-video` erforderlich; für
            `wan3.0-reference-video` mindestens eines von Prompt und
            Referenzmaterial; für `wan3.0-image-to-video` empfohlen, um die
            Bildveränderung zu beschreiben


            **Regeln für Materialverweise (Reference-to-Video):**

            - Mit "Image 1", "Video 1" und "Audio 1" wird auf das Material im
            jeweiligen Array verwiesen (1-basiert)

            - Bilder, Videos und Audio werden **unabhängig voneinander
            gezählt**, "Image 1" und "Video 1" können also gleichzeitig
            vorkommen
          example: >-
            The character in Video 1 holds Image 3 and plays a soft country folk
            tune on the chair in Image 4, saying: “What lovely sunshine today.”
        image_start:
          type: string
          format: uri
          description: >-
            URL des Startbilds, wird streng als erstes Bild des generierten
            Videos verwendet. **Nur für `wan3.0-image-to-video` verfügbar**


            **Bildgrenzen:**

            - Formate: JPEG, JPG, PNG (Transparenz nicht unterstützt), BMP, WEBP

            - Auflösung: Breite und Höhe in `[240, 8000]` Pixel

            - Seitenverhältnis: 1:8 ~ 8:1

            - Dateigröße: max. `20MB`
          example: https://example.com/first_frame.jpg
        image_end:
          type: string
          format: uri
          description: >-
            URL des Endbilds, wird streng als letztes Bild des generierten
            Videos verwendet. **Nur für `wan3.0-image-to-video` verfügbar**


            **Einschränkung:** muss zusammen mit `image_start` verwendet werden,
            nur ein Endbild zu übergeben wird nicht unterstützt.


            **Bildgrenzen:**

            - Formate: JPEG, JPG, PNG (Transparenz nicht unterstützt), BMP, WEBP

            - Auflösung: Breite und Höhe in `[240, 8000]` Pixel

            - Seitenverhältnis: 1:8 ~ 8:1

            - Dateigröße: max. `20MB`
          example: https://example.com/last_frame.jpg
        image_urls:
          type: array
          items:
            type: string
            format: uri
          maxItems: 10
          description: >-
            Array mit URLs von Referenzbildern, **höchstens 10 Bilder**, **nur
            für `wan3.0-reference-video` verfügbar**. Es kann Subjekte
            (Personen/Tiere/Objekte) oder Szenenhintergründe liefern; bei
            Subjekten sollte jedes Bild nur **einen** Charakter enthalten


            Die Reihenfolge im Array entspricht "Bild 1, Bild 2 ..." im Prompt


            **Hinweis:** Für Start- und Endbild von Image-to-Video `image_start`
            / `image_end` verwenden, nicht dieses Feld


            **Bildgrenzen:**

            - Formate: JPEG, JPG, PNG (Transparenz nicht unterstützt), BMP, WEBP

            - Auflösung: Breite und Höhe in `[240, 8000]` Pixel

            - Seitenverhältnis: 1:8 ~ 8:1

            - Dateigröße: max. `20MB`
          example:
            - https://example.com/ref1.jpg
            - https://example.com/ref2.png
        video_urls:
          type: array
          items:
            type: string
            format: uri
          maxItems: 5
          description: >-
            Array mit URLs von Referenzvideos, **höchstens 5 Clips**, **nur für
            `wan3.0-reference-video` verfügbar**. Die Reihenfolge im Array
            entspricht "Video 1, Video 2 ..." im Prompt


            **Dauerbegrenzung:**

            - `1 ~ 15` Sekunden pro Clip

            - **insgesamt höchstens 15 Sekunden**

            - Gesamtdauer der Referenzvideos + Dauer des Ausgabevideos **darf 30
            Sekunden nicht überschreiten**


            **🔴 Referenzvideos zählen zur Abrechnung**: abgerechnete Dauer =
            Dauer des Eingabevideos + Dauer des Ausgabevideos. Referenzbilder,
            Referenzaudio, Dateien und Webseiten werden nicht abgerechnet


            **Videogrenzen:**

            - Formate: mp4, mov

            - Auflösung: Breite und Höhe in `[240, 4096]` Pixel

            - Seitenverhältnis: 1:8 ~ 8:1

            - Größe pro Datei: max. `100MB`
          example:
            - https://example.com/ref_video.mp4
        audio_urls:
          type: array
          items:
            type: string
            format: uri
          maxItems: 5
          description: >-
            Array mit URLs von Referenzaudio, **höchstens 5 Clips**, **nur für
            `wan3.0-reference-video` verfügbar**. Die Reihenfolge im Array
            entspricht "Audio 1, Audio 2 ..." im Prompt


            **⚠️ Andere Semantik als in Wan2.7:** In Wan2.7 war `audio_urls`
            eine **Stimme**, die an ein bestimmtes Referenzbild / Referenzvideo
            gebunden war; in Wan3.0 ist Referenzaudio **eigenständiges
            Material**, das im Prompt direkt mit "Audio 1" angesprochen wird,
            und das Stimmbindungs-Protokoll `model_params.voice_bindings` wird
            **nicht unterstützt**. Beim Umstieg von Wan2.7 bitte entsprechend
            anpassen.


            **Dauerbegrenzung:**

            - `1 ~ 15` Sekunden pro Clip, insgesamt höchstens 15 Sekunden

            - Referenzaudio wird **nicht abgerechnet**


            **Audiogrenzen:**

            - Formate: wav, mp3

            - Dateigröße: max. `15MB`
          example:
            - https://example.com/ref_audio.mp3
        duration:
          type: integer
          description: >-
            Dauer des generierten Videos (Sekunden), Standard `5`


            **Zulässige Werte:**

            - Eine beliebige ganze Zahl zwischen `2` und `30`

            - `-1`: intelligente Dauer, das Modell bestimmt die Ausgabelänge
            anhand von Prompt und Eingabematerial


            **Abrechnung der intelligenten Dauer:** Bei der Übermittlung ist
            nicht bekannt, wie lang das Ergebnis wird, daher wird zum Höchstwert
            von `30` Sekunden **vorab reserviert**; nach erfolgreicher Aufgabe
            wird nach der tatsächlichen Ausgabedauer abgerechnet und der zu viel
            eingefrorene Anteil automatisch freigegeben. Reicht das Guthaben für
            die volle Reservierung nicht aus, geben Sie stattdessen eine
            konkrete Sekundenzahl an.


            **Zusätzliche Einschränkung bei übergebenen Referenzvideos:**

            - Gesamtdauer der Referenzvideos + Dauer des Ausgabevideos **darf 30
            Sekunden nicht überschreiten**

            - Beispiel: bei insgesamt 10 Sekunden Referenzvideo kann `duration`
            höchstens 20 betragen
          default: 5
          example: 5
        quality:
          type: string
          description: >-
            Videoauflösung, Standard `720p`


            **Optionen:**

            - `480p`: geringere Schärfe, niedrigster Preis (Abrechnungsbasis)

            - `720p`: Standardschärfe, dies ist der Standardwert, Preis 2x von
            `480p`

            - `1080p`: hohe Schärfe, Preis 4x von `480p`
          enum:
            - 480p
            - 720p
            - 1080p
          default: 720p
          example: 720p
        aspect_ratio:
          type: string
          description: >-
            Seitenverhältnis des Videos, Standard `adaptive`


            **Optionen:**

            - `adaptive`: adaptiv, das Modell empfiehlt anhand des Verhältnisses
            des Eingabematerials und der Absicht des Prompts ein passendes
            Seitenverhältnis, dies ist der Standardwert

            - `16:9` (Querformat), `9:16` (Hochformat), `1:1` (quadratisch),
            `4:3`, `3:4`
          enum:
            - adaptive
            - '16:9'
            - '9:16'
            - '1:1'
            - '4:3'
            - '3:4'
          default: adaptive
          example: '16:9'
        generate_audio:
          type: boolean
          description: >-
            Ob das Ausgabevideo eine Tonspur enthält, Standard `true`


            **Optionen:**

            - `true`: das Ausgabevideo enthält Ton (Stimmen, Soundeffekte,
            Hintergrundmusik), dies ist der Standardwert

            - `false`: stummes Video


            **Ton an oder aus kostet gleich viel**, es fallen keine Zusatzkosten
            an.
          default: true
          example: true
        seed:
          type: integer
          description: >-
            Zufallsseed zur Reproduktion von Ergebnissen, standardmäßig zufällig


            **Hinweise:**

            - Bereich: `0` ~ `2147483647`

            - Ein fester Seed reduziert beim Iterieren am Prompt die Variation
            und verbessert die Reproduzierbarkeit
          minimum: 0
          maximum: 2147483647
          example: 42
        model_params:
          type: object
          description: >-
            Modellerweiterungsparameter, **nur für `wan3.0-reference-video`
            verfügbar**. `file_url` und `link_url` schließen sich **gegenseitig
            aus**, es ist nur eines von beiden möglich
          properties:
            file_url:
              type: string
              format: uri
              description: >-
                URL der Referenzdatei, **höchstens 1**. Das Modell versteht den
                Dateiinhalt automatisch und generiert daraus das Video (zum
                Beispiel wird aus einem Produkt-Deck ein Werbefilm)


                **Schließt sich mit `link_url` gegenseitig aus**, beide können
                nicht zusammen übergeben werden


                **Dateigrenzen:**

                - Formate: docx, doc, xlsx, xls, pptx, ppt, pdf, txt, key,
                pages, numbers, md

                - Dateigröße: max. `100MB`

                - Seitenzahl: höchstens 50 Seiten
              example: https://example.com/product-deck.pptx
            link_url:
              type: string
              format: uri
              description: >-
                Link zu einer Referenz-Webseite, **höchstens 1**. Das Modell
                ruft die Seite automatisch ab, versteht deren Inhalt und
                generiert daraus das Video


                **Schließt sich mit `file_url` gegenseitig aus**, beide können
                nicht zusammen übergeben werden


                **Einschränkung:** Es können nur öffentliche Seiten **ohne
                Login** ausgewertet werden (Nachrichten, Blogs, Artikel aus
                Newslettern usw.)
              example: https://example.com/article/12345
        callback_url:
          type: string
          description: >-
            HTTPS-Callback-URL nach Aufgabenabschluss


            **Callback-Zeitpunkte:**

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

            - 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: wan3.0-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: Aufgaben-Ausgabetyp
          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: Ob die Aufgabe abgebrochen werden kann
          example: true
        estimated_time:
          type: integer
          description: Geschätzte Abschlusszeit (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 Guthabenverbrauch
          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

        ```

````