# Parameter

Jedes Modell behält seine nativen Parameternamen bei, und jede Modellseite listet sie auf. Darüber hinaus akzeptiert die API
**kanonische Namen** für Parameter, die bei jedem Modell dasselbe bedeuten, sodass für ein Modell geschriebener Code
mit weniger Änderungen für das nächste Modell funktioniert.

## Kanonische Namen

| Kanonischer Name | Bedeutung | Typische native Namen |
|---|---|---|
| `image` | Das Eingabe- oder erste Frame-Bild | `image_url`, `start_image_url`, `first_frame_url`, `first_image_url`, `source_image_url` |
| `end_image` | Das letzte Frame-Bild | `end_image_url`, `last_frame_url`, `tail_image_url` |
| `images` | Eine Liste von Referenzbildern | `image_urls`, `reference_image_urls` |
| `video` | Das Eingabevideo | `video_url` |
| `videos` | Eine Liste von Referenzvideos | `video_urls` |
| `audio` | Das Eingabeaudio | `audio_url` |
| `audios` | Eine Liste von Referenz-Audioclips | `audio_urls` |
| `mask` | Ein Maskenbild | `mask_url` |
| `num_outputs` | Wie viele Ergebnisse generiert werden sollen | `num_images` |
| `generate_audio` | Ton mit dem Video generieren | `generate_audio_switch`, `enable_audio` |

Welchem nativen Feld ein kanonischer Name bei jedem aktuellen Modell zugeordnet wird:

| Kanonischer Name | Natives Feld (Modelle, die es verwenden) |
|---|---|
| `audio` | `audio_url` (Modelle: 126) |
| `audios` | `audio_urls` (Modelle: 7), `reference_audio_urls` (Modelle: 1) |
| `end_image` | `end_image_url` (Modelle: 76), `last_frame_url` (Modelle: 12), `tail_image_url` (Modelle: 1) |
| `generate_audio` | `generate_audio_switch` (Modelle: 16), `audio` (Modelle: 3) |
| `image` | `image_url` (Modelle: 529), `start_image_url` (Modelle: 20), `first_frame_url` (Modelle: 12), `first_image_url` (Modelle: 7), `source_image_url` (Modelle: 2) |
| `images` | `image_urls` (Modelle: 148), `reference_image_urls` (Modelle: 31) |
| `mask` | `mask_url` (Modelle: 46) |
| `num_outputs` | `num_images` (Modelle: 337) |
| `video` | `video_url` (Modelle: 197) |
| `videos` | `video_urls` (Modelle: 13), `reference_video_urls` (Modelle: 1) |

Regeln:

- Sende entweder den kanonischen Namen oder den nativen Namen. Wenn du beide mit unterschiedlichen Werten sendest, schlägt der Aufruf mit
  `422 invalid_input` für den kanonischen Namen fehl.
- Ein Parameter, der weder ein nativer noch ein kanonischer Name des Modells ist, wird mit `422 invalid_input`
  ("Unknown parameter") abgelehnt; als Vorschlag wird der ähnlichste gültige Name angegeben. Tippfehler werden niemals stillschweigend akzeptiert.
- Jede Modellseite zeigt beide Namen nebeneinander.

## Typkonvertierung

Werte werden in den vom Modell erwarteten Typ konvertiert, daher funktionieren alle folgenden Varianten:

| Du sendest | Das Modell erwartet | Wird zu |
|---|---|---|
| `5`, `"5"`, `"5s"` | `duration` als String wie `"5"` | `"5"` |
| `"8"` | eine Ganzzahl | `8` |
| `"1080P"`, `"4K"` | `resolution` wie `"1080p"`, `"4k"` | die exakt zulässige Schreibweise |
| `"true"`, `"false"`, `1`, `0` | einen booleschen Wert | `true`, `false` |
| `"https://…/a.jpg"` | eine URL-Liste | `["https://…/a.jpg"]` |
| `42` | einen String | `"42"` |

Zulässige Werte werden zuerst exakt abgeglichen, anschließend ohne Berücksichtigung der Groß-/Kleinschreibung und danach als Zahlen (`5` entspricht `"5"`, `"5s"` und
Werten im Stil von `"5 s"`).

## Standardwerte

Parameter, die du weglässt, verwenden den Standardwert des Modells, der in der Parametertabelle des Modells aufgeführt ist. Der Preis wird
mit denselben Standardwerten berechnet (ein Videomodell, bei dem `generate_audio` standardmäßig `true` ist, wird beispielsweise mit
Ton berechnet, sofern du nicht `"generate_audio": false` sendest).

## Datei-Parameter

Bild-, Video- und Audioparameter akzeptieren eine öffentliche URL, eine `data:`-URI mit bis zu 10 MB oder die `file_url` eines Uploads.
Siehe [Dateien](https://doitong.com/developers/docs/files).