Endpunkte
Bilder
POST /images/generations erzeugt und bearbeitet Bilder mit GPT Image, Gemini, FLUX, Seedream und weiteren Modellen, kompatibel mit client.images.generate.
Im Playground testenErzeugen und bearbeiten Sie Bilder mit jedem Bildmodell im Katalog, GPT Image, Gemini Image, FLUX, Seedream, Recraft und mehr. Der Endpunkt verwendet den Pfad des OpenAI-SDK, daher funktioniert client.images.generate(...) unverändert.
POST https://api14.com/api/v1/images/generations
POST /api/v1/images wird als Alias akzeptiert. Beide leiten den Body unverändert weiter.
Anfrage
| Parameter | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
model | string | ja | Eine Bildmodell-ID, z. B. openai/gpt-5.4-image-2. |
prompt | string | ja | Was gezeichnet werden soll. |
n | integer | nein | Anzahl der Bilder. Jedes Bild wird berechnet. |
size | string | nein | z. B. 1024x1024, 1536x1024. Unterstützte Größen variieren je Modell. |
aspect_ratio | string | nein | z. B. 16:9, 1:1, für Modelle, die Seitenverhältnisse statt Größen verwenden. |
quality | string | nein | z. B. low, medium, high, wo unterstützt. |
response_format | string | nein | b64_json oder url, wo unterstützt. |
image | string oder string[] | nein | Referenzbild(er) als URLs oder data:-URIs für Bearbeitung / Bild-zu-Bild. |
Modellspezifische Optionen (Auflösungen, Seitenverhältnisse) sind pro Modell in GET /images/models und auf der jeweiligen Modellseite aufgeführt.
Beispiel
import OpenAI from "openai";
const client = new OpenAI({
baseURL: "https://api14.com/api/v1",
apiKey: process.env.API14_API_KEY,
});
const result = await client.images.generate({
"model": "openai/gpt-5.4-image-2",
"prompt": "A minimalist product photo of a ceramic mug on a wooden table",
"n": 1,
"aspect_ratio": "1:1"
});
import { writeFile } from "node:fs/promises";
await writeFile("image.png", Buffer.from(result.data[0].b64_json, "base64"));
Antwort
{
"created": 1791100000,
"data": [
{ "b64_json": "iVBORw0KGgoAAAANSUhEUgAA..." }
],
"usage": { "cost": 0.04 }
}
Einige Modelle liefern url statt b64_json. Laden Sie gehostete URLs zeitnah herunter; sie können ablaufen.
Bilder über Chat
Bildmodelle, die auch Text ausgeben, können über Chat Completions mit modalities aufgerufen werden:
{
"model": "google/gemini-2.5-flash-image",
"modalities": ["image", "text"],
"messages": [{ "role": "user", "content": "A watercolor fox, square" }]
}
Generierte Bilder kommen in choices[0].message.images[] als Data-URLs zurück.
Bildmodelle auflisten
# Öffentlich, kein API-Schlüssel nötig
curl https://api14.com/api/v1/images/models
curl "https://api14.com/api/v1/models?category=image"
Preise
Bildmodelle werden zu ihrem gelisteten Preis abgerechnet, je nach Modell pro Bild oder pro 1M Bild-Tokens. Die exakten Kosten stammen aus der Upstream-Antwort und werden von Ihrem USD-Guthaben abgebucht.
Fehler
| Status | Code | Wann |
|---|---|---|
| 400 | model_required / invalid_json | model fehlt oder der Body ist fehlerhaft. |
| 402 | insufficient_balance | Ihr USD-Guthaben beträgt 0 $. |
| 403 | model_not_allowed / plan_required | Allowlist des Schlüssels oder Plan schließt das Modell aus. |
| 404 | model_not_found | Unbekannte oder deaktivierte Modell-ID. |
| 413 | payload_too_large | Body (z. B. eingebettete Referenzbilder) überschreitet das Größenlimit. |
Upstream-Validierungsfehler (nicht unterstützte Größe, Inhaltsrichtlinie) werden mit ihrem Status durchgereicht. Siehe Fehler.