Skip to main content
POST

Autorisierungen

Authorization
string
header
erforderlich

Alle Endpunkte erfordern die Authentifizierung mit einem Bearer-Token.

API Key erhalten:

Besuchen Sie die API-Key-Verwaltung, um Ihren API Key zu erhalten.

Fügen Sie bei Anfragen folgenden Header hinzu:

Body

application/json
model
enum<string>
Standard:gpt-image-2.6-sunburst
erforderlich

Name des Bildgenerierungsmodells, mit besserer Stabilität und Steuerbarkeit für kommerzielle Anwendungen

Beide Modelle haben exakt dieselben Parameter. Bei derselben quality-Stufe kann der tatsächliche Token-Verbrauch leicht abweichen; maßgeblich ist das zurückgegebene usage.

Verfügbare Optionen:
gpt-image-2.6-sunburst,
gpt-image-2.6-flare
Beispiel:

"gpt-image-2.6-sunburst"

prompt
string
erforderlich

Prompt, der das zu generierende Bild beschreibt oder wie das Eingabebild bearbeitet werden soll

Längenbegrenzungen (beide müssen eingehalten werden):

  • Maximal 32.000 Zeichen (gezählt als Unicode-Codepunkte)
  • Der Text von prompt selbst darf nach der UTF-8-Kodierung höchstens 60.000 Bytes umfassen

Verschiedene Zeichen belegen unterschiedlich viele UTF-8-Bytes. Maßgeblich ist die tatsächliche Byteanzahl nach der Kodierung.

Wenn eine der Grenzen überschritten wird, kürzen Sie den Prompt vor dem erneuten Senden.

Empfehlung: Wenn der Prompt 8000 Tokens überschreitet, entspricht das generierte Bild möglicherweise nicht den Erwartungen; eine Kürzung des Prompts wird empfohlen.

Maximum string length: 32000
Beispiel:

"Ein wunderschöner bunter Sonnenuntergang über dem Ozean"

image_urls
string<uri>[]

Liste der Referenzbilder für Bild-zu-Bild und Bildbearbeitung. Unterstützt öffentliche URLs.

Hinweise:

  • Anzahl der Eingabebilder pro Anfrage: 1–16
  • Dateigröße pro Bild: maximal 50MB
  • Pixelzahl pro Bild: Breite × Höhe maximal 178.956.970 px
  • Seitenlänge pro Bild: Breite und Höhe jeweils maximal 23170 px; größere Werte können Probleme verursachen
  • Unterstützte Formate: .jpeg, .jpg, .png, .webp
  • Bei URLs muss der Server direkt auf das Bild zugreifen können, oder beim Aufruf muss der Download direkt beginnen. Solche URLs enden häufig mit einer Bilddateiendung wie .png oder .jpg.
  • Bei Bild-zu-Bild und Bildbearbeitung verursachen die Referenzbilder zusätzlichen Verbrauch von Bild-Eingabe-Tokens.
  • Bei Verwendung von markup_url beziehen sich die Markierungen auf das erste Bild; weitere Bilder dienen als Referenzen. Die Pixelzahl des ersten Bildes darf 16.777.216 px nicht überschreiten.
  • Bei output_format=svg werden keine Referenzbilder unterstützt.
Beispiel:
mask_url
string<uri>

Inpainting-Maske URL — markiert die Region des Referenzbildes, die neu generiert werden soll. Nur im Bildbearbeitungsmodus wirksam (muss zusammen mit image_urls verwendet werden); bei reiner Text-zu-Bild-Generierung wird die Maske stillschweigend ignoriert.

Format-Anforderungen:

  • Muss ein PNG mit Alphakanal sein: transparente Pixel (alpha < 255) = neu zu generierende Bereiche, undurchsichtige Pixel = bleiben erhalten
  • Maskenabmessungen müssen exakt mit dem Referenzbild übereinstimmen (Breite × Höhe in Pixeln)
  • Eine Maske pro Anfrage

Hinweis:

  • Mindestens ein Referenzbild in image_urls ist erforderlich; eine Maske allein hat keine Wirkung
  • Häufige Fehler:
    • Invalid mask image format - mask image missing alpha channel: Das hochgeladene Bild hat keinen Alphakanal (JPEG, undurchsichtiges PNG usw.). Exportieren Sie die Maske erneut als PNG mit transparenten Bereichen.
    • Invalid mask image format - mask size does not match image size: Die Maskenabmessungen stimmen nicht mit dem Referenzbild überein. Skalieren Sie die Maske auf die gleichen Pixelabmessungen wie Ihr Referenzbild.
  • Nicht zusammen mit markup_url verwendbar.
Beispiel:

"https://example.com/mask.png"

markup_url
string<uri>

Öffentliche URL der Markierungsebene. Markieren Sie zu bearbeitende Stellen im Referenzbild mit Kreisen, Pfeilen oder Skizzen und beschreiben Sie die Änderung in prompt. Nur im Bildbearbeitungsmodus verfügbar (image_urls muss ebenfalls angegeben werden).

Format-Anforderungen:

  • PNG mit transparenten Pixeln erforderlich: Zeichnen Sie nur die Markierungen und lassen Sie den Rest transparent. Zeichnen Sie nicht direkt auf das Originalbild.
  • Die Abmessungen müssen exakt mit denen des ersten Referenzbildes übereinstimmen (Breite × Höhe in Pixeln).
  • Das erste Referenzbild und die Markierungsebene dürfen jeweils höchstens 16.777.216 px enthalten.
  • Dateigröße: maximal 50MB

Hinweise:

  • Die Markierungen beziehen sich auf das erste Bild in image_urls; weitere Bilder dienen als Referenzen.
  • Nicht zusammen mit mask_url verwendbar.
  • Unterstützt die Bearbeitung normaler Bilder und GIFs, nicht jedoch SVG.
  • Kann auch unter model_params.markup_url angegeben werden. Sind beide Werte vorhanden, hat der Wert auf oberster Ebene Vorrang.
  • Beschreiben Sie in prompt auch, was erhalten bleiben soll, beispielsweise „Lasse den Rest unverändert und entferne den roten Kreis“.
Beispiel:

"https://example.com/markup.png"

size
string
Standard:auto

Abmessungen des generierten Bildes, standardmäßig auto. Normale Bilder und SVG-Referenzbilder verwenden die folgenden Regeln; für GIFs gelten die separaten Regeln in Abschnitt ④.

① Normale Bilder / SVG-Referenzbilder: Seitenverhältnis (15 Varianten)

  • 1:1: quadratisch
  • 1:2 / 2:1: sehr hoch / sehr breit
  • 1:3 / 3:1: extrem hoch / extrem breit (Grenze 3:1)
  • 2:3 / 3:2: Standard-Hochformat / -Querformat
  • 3:4 / 4:3: klassisches Hochformat / Querformat
  • 4:5 / 5:4: häufig für soziale Medien verwendet
  • 9:16 / 16:9: Smartphone- / Desktop-Breitbild
  • 9:21 / 21:9: ultrabreit

② Normale Bilder / SVG-Referenzbilder: explizite Pixelabmessungen: WxH (oder W×H), z. B. 1024x1024, 1536x1024, 3840×2160

  • Breite und Höhe müssen Vielfache von 16 sein.
  • Bereich pro Seite: [16, 3840]
  • Pixelbudget: 655.360 ≤ width × height ≤ 8.294.400 (ca. 0,65 MP bis 8,29 MP)
  • Seitenverhältnis: ≤ 3:1

③ Normale Bilder / SVG-Referenzbilder: auto: Das Modell bestimmt die Abmessungen automatisch (resolution hat dabei keine Wirkung).

④ GIF-Ausgabe: size gibt die Abmessungen jedes einzelnen Frames an. Unterstützt werden nur auto und explizite Pixelabmessungen, keine Seitenverhältnisse.

  • Bei auto hat jeder Frame 512×512 Pixel.
  • Explizite Frame-Breite und -Höhe müssen positive Vielfache von 16 sein.
  • Die Mindestpixelzahl von 655.360 für normale Bilder gilt nicht für einzelne GIF-Frames. Beispielsweise ist 512x512 zulässig.
  • Das aus allen Frames zusammengesetzte Bild muss die Grenzen für Seitenlänge, Gesamtpixelzahl und Seitenverhältnis einhalten. Raster und Frame-Obergrenzen finden Sie unter model_params.frame_count.
  • resolution hat keine Wirkung.

Bei Überschreitung der Grenzen:

  • Überschreitet die Kombination aus Seitenverhältnis und resolution bei normalen Bildern / SVG-Referenzbildern das Budget, wird proportional auf das Maximum verkleinert (z. B. 4K 2:1 → 3840×1920).
  • Zu große explizite GIF-Frame-Abmessungen führen direkt zu HTTP 400 und werden nicht automatisch verkleinert.
Beispiel:

"auto"

resolution
enum<string>
Standard:1K

Schneller Parameter für die Auflösungsstufe. Wirkt nur, wenn size als Seitenverhältnis angegeben wird; bei expliziten Pixelabmessungen und GIF-Ausgabe wird dieses Feld ignoriert.

Pixel-Budget-Regel (die Abmessungen werden aus der Ziel-Pixelzahl und dem size-Verhältnis berechnet und auf Vielfache von 16 ausgerichtet):

  • 1K: ~1 MP (1024² = 1.048.576 Pixel)
  • 2K: ~4 MP (2048² = 4.194.304 Pixel)
  • 4K: ~8,29 MP (3840×2160 = 8.294.400 Pixel, das Maximum)

Querformat-/Quadrat-Ausgabegrößen (Hochformat-Maße sind die Breite/Höhe des entsprechenden Querformats vertauscht, z. B. 2:3 = 3:2 umgekehrt):

* Markiert Kombinationen, die wegen des Pixel-Budgets automatisch herunterskaliert werden. Werte sind Groß-/Kleinschreibungsunabhängig.

Verfügbare Optionen:
1K,
2K,
4K
Beispiel:

"1K"

quality
enum<string>
Standard:medium

Rendering-Qualität, die sich direkt auf die Anzahl der Ausgabe-Tokens und die Kosten auswirkt. Standard: medium.

Hinweise:

  • Die Tabelle vergleicht nur die Bildausgabekosten, ohne Eingabekosten und Kosten des SVG-Autormodells.
  • Die Werte beziehen sich auf 1024×1024. Die Anzahl der Ausgabe-Tokens hängt von der Gesamtpixelzahl und dem Seitenverhältnis ab. Maßgeblich ist das zurückgegebene usage.
  • Bei GIFs wird das aus allen Frames zusammengesetzte Bild berechnet; bei SVG beeinflusst dieser Parameter das Referenzbild.
  • Verwenden Sie low für schnelle Entwürfe. Vergleichen Sie für fertige Ergebnisse mehrere Stufen, um Details, Laufzeit und Kosten abzuwägen.
Verfügbare Optionen:
low,
medium,
high,
xhigh,
max
Beispiel:

"medium"

complexity
enum<string>
Standard:high

Planungstiefe vor der Bildgenerierung, unabhängig von quality. Standard: high.

  • low: geeignet für lokale Änderungen wie einen anderen Hintergrund oder geänderten Text auf einem Schild
  • medium: ausgewogen
  • high: geeignet für textreiche Bilder, komplexe Layouts oder komplexe Beziehungen zwischen Objekten

Hinweise:

  • Höhere Stufen benötigen mehr Zeit und können unerwünschte Änderungen verursachen. Vergleichen Sie die Ergebnisse je nach Aufgabe.
  • Für Änderungen an complexity fallen keine zusätzlichen Gebühren an.
  • Bei SVG beeinflusst dieser Parameter das Referenzbild.
  • Kann auch unter model_params.complexity angegeben werden. Sind beide Werte vorhanden, hat der Wert auf oberster Ebene Vorrang.
Verfügbare Optionen:
low,
medium,
high
Beispiel:

"high"

background
enum<string>
Standard:opaque

Hintergrundkanal des Ausgabebildes, standardmäßig opaque.

  • opaque: undurchsichtiger Hintergrund ohne Alphakanal
  • transparent: Alphakanal bleibt erhalten

Hinweise:

  • transparent ist derzeit eine Preview-Funktion; die Ergebnisse können instabil sein.
  • Bei transparent muss output_format entweder png oder webp sein.
  • Bei output_format=gif oder svg ist nur opaque zulässig.
Verfügbare Optionen:
opaque,
transparent
Beispiel:

"opaque"

output_format
enum<string>
Standard:png

Dateiformat der Ausgabe, standardmäßig png.

  • png: verlustfrei, unterstützt transparente Hintergründe
  • jpeg: verlustbehaftete Komprimierung für kleinere Dateien
  • webp: ausgewogenes Verhältnis von Dateigröße und Qualität, unterstützt ebenfalls Transparenz
  • gif: animiertes GIF; Anzahl und Dauer der Frames werden unter model_params eingestellt
  • svg: SVG-Vektorgrafik, geeignet für Logos, Symbole und andere verlustfrei skalierbare Grafiken

Hinweise:

  • Bei background=transparent sind nur png und webp zulässig.
  • gif unterstützt Text-zu-Bild und Bildbearbeitung.
  • Bei gif und svg muss n auf 1 gesetzt sein.
  • svg unterstützt nur Text-zu-Bild.
  • Für SVG erzeugt das Bildmodell zunächst ein Referenzbild. Das Autormodell (model_params.svg_model) wandelt es anschließend in eine Vektorgrafik um. Dessen Token-Verbrauch wird separat nach dem gewählten Modell abgerechnet.
Verfügbare Optionen:
png,
jpeg,
webp,
gif,
svg
Beispiel:

"png"

n
integer
Standard:1

Anzahl der zu generierenden Bilder. Jedes Bild wird separat abgerechnet.

Hinweise:

  • Die Texteingabe-Tokens steigen proportional zu n.
  • Die Unterstützung für n > 1 ist derzeit unzuverlässig: Auch bei einem Wert größer als 1 wird möglicherweise nur ein Bild zurückgegeben. Maßgeblich sind die tatsächliche Anzahl in results und das zurückgegebene usage für die Abrechnung. Wenn Sie mehrere Bilder benötigen, empfehlen sich mehrere Einzelbildanfragen.
  • Bei output_format=gif oder svg ist nur 1 zulässig.
Erforderlicher Bereich: 1 <= x <= 10
Beispiel:

1

model_params
object

Modellspezifische Zusatzparameter. GIF-Frame-Parameter und Parameter des SVG-Autormodells müssen in diesem Objekt angegeben werden.

  • frame_count und frame_duration_ms sind nur bei output_format=gif zulässig.
  • svg_model und svg_reasoning_effort sind nur bei output_format=svg zulässig.
  • Passen Ausgabeformat und Zusatzparameter nicht zusammen, wird HTTP 400 zurückgegeben; die Parameter werden nicht stillschweigend ignoriert.
callback_url
string<uri>

HTTPS-Callback-Adresse nach Aufgabenabschluss

Callback-Zeitpunkt:

  • Wird ausgelöst, wenn die Aufgabe abgeschlossen, fehlgeschlagen oder abgebrochen wurde
  • Wird nach Abschluss der Abrechnungsbestätigung gesendet

Sicherheitsbeschränkungen:

  • Nur HTTPS-Protokoll wird unterstützt
  • Callback an interne IP-Adressen ist verboten (127.0.0.1, 10.x.x.x, 172.16-31.x.x, 192.168.x.x, usw.)
  • URL-Länge darf 2048 Zeichen nicht überschreiten

Callback-Mechanismus:

  • Timeout: 10 Sekunden
  • Maximal 3 Wiederholungsversuche bei Fehler (Wiederholung nach 1 Sekunde/2 Sekunden/4 Sekunden)
  • Das Format des Callback-Antwortkörpers entspricht dem Antwortformat der Aufgabenabfrage-API
  • Ein 2xx-Statuscode der Callback-Adresse gilt als erfolgreich, andere Statuscodes lösen eine Wiederholung aus
Beispiel:

"https://your-domain.com/webhooks/image-task-completed"

Antwort

Bildaufgabe erfolgreich erstellt

created
integer

Zeitstempel der Aufgabenerstellung

Beispiel:

1757156493

id
string

Aufgaben-ID

Beispiel:

"task-unified-1757156493-imcg5zqt"

model
string

Tatsächlich verwendeter Modellname

Beispiel:

"gpt-image-2.6-sunburst"

object
enum<string>

Spezifischer Aufgabentyp

Verfügbare Optionen:
image.generation.task
progress
integer

Aufgabenfortschritt in Prozent (0-100)

Erforderlicher Bereich: 0 <= x <= 100
Beispiel:

1

status
enum<string>

Aufgabenstatus. Wartende und laufende Aufgaben werden einheitlich als processing zurückgegeben; der Endstatus ist completed oder failed.

Verfügbare Optionen:
processing,
completed,
failed
Beispiel:

"processing"

task_info
object

Asynchrone Aufgabeninformationen

type
enum<string>

Ausgabetyp der Aufgabe

Verfügbare Optionen:
text,
image,
audio,
video
Beispiel:

"image"

usage
object

Nutzungs- und Abrechnungsinformationen