Bildgenerierung
Verwandle eine Textbeschreibung (Prompt) in Bilder mit Bildmodellen von Google (Familie Nano Banana / Gemini Image). Der Endpoint ist kompatibel mit der OpenAI Images API — richte das openai-SDK einfach auf die Geraikita-Base-URL, mit demselben gk-Key und demselben GeraiPoints-Guthaben.
Endpoint
https://ai.geraikita.com/v1/images/generations| Header | Wert |
|---|---|
| Authorization | Bearer gk-... (oder x-api-key: gk-...) |
| Content-Type | application/json |
Eine Anfrage = ein Prompt, ergibt 1–4 Bilder. Streaming wird nicht unterstützt — die Antwort kommt in einem Stück, sobald die Bilder fertig sind.
Body-Parameter
| Parameter | Typ | Beschreibung |
|---|---|---|
model | stringPflicht | ID des Bildmodells, z. B. gemini-3.1-flash-image oder gemini-3-pro-image — die vollständige Liste steht in der Preistabelle unten. |
prompt | stringPflicht | Beschreibung des gewünschten Bildes, höchstens 4000 Zeichen. |
n | integeroptional | Anzahl der Bilder, 1–4. Standard 1. Jedes erfolgreiche Bild wird einzeln abgerechnet. |
size | stringoptional | Einer der Werte auto | 1024x1024 | 1536x1024 | 1024x1536 | 1792x1024 | 1024x1792. Standard auto: das Modell wählt das Seitenverhältnis, meist Querformat 16:9 (etwa 1376×768). Die Größe ist nur ein Hinweis auf das Seitenverhältnis — die endgültige Auflösung bestimmt das Modell. |
response_format | stringoptional | url (Standard) für einen Bildlink oder b64_json für Base64-Bilddaten direkt in der Antwort. |
Andere Felder (z. B. quality oder style) werden ignoriert.
Beispiele
curl https://ai.geraikita.com/v1/images/generations \
--max-time 300 \
-H "Authorization: Bearer gk-xxxxxxxx" \
-H "Content-Type: application/json" \
-d '{
"model": "gemini-3.1-flash-image",
"prompt": "Werbeplakat für einen Eiskaffee mit Palmzucker auf einem Holztisch, warmes Morgenlicht, großer Schriftzug \"20% RABATT\" oben, flacher Illustrationsstil",
"n": 1,
"size": "1024x1024"
}'Beispielantwort
data enthält ein Objekt pro erfolgreichem Bild — url oder b64_json je nach response_format. Schlagen einige Bilder fehl, kann es weniger Objekte als n geben.
{
"created": 1793464057,
"data": [
{ "url": "https://api.geraikita.com/cdn/ai-gambar/2026/11/xxxxxxxxxxxx.jpg" }
]
}Antwort-Header: X-Geraikita-Images = Anzahl erfolgreicher Bilder, X-Geraikita-GP-Charged = für diese Anfrage abgebuchte GeraiPoints.
Preise
Bildmodelle werden pro erfolgreich erzeugtem Bild abgerechnet — nicht pro Token. Aktuelle Preise (Änderungen vorbehalten) stehen in der Tabelle unten und auf der Preisseite.
| Modell-ID | Name | Pro Bild |
|---|---|---|
| gemini-3.1-flash-image | Nano Banana 2 (Gemini 3.1 Flash Image) | 100 GP / Bild |
| gemini-3-pro-image | Nano Banana Pro (Gemini 3 Pro Image) | 100 GP / Bild |
- Fehlgeschlagene Bilder kosten nichts, ebenso abgelehnte Anfragen (ungültige Parameter oder Verstöße gegen die Inhaltsrichtlinie).
- Dein GeraiPoints-Guthaben muss
n× Preis pro Bild abdecken, bevor die Anfrage verarbeitet wird; sonst lautet die Antwort402. - Bildmodelle sind nicht enthalten im Unlimited plan, in Bansos (Free Tier) oder anderen Gratiskontingenten — sie werden immer vom GeraiPoints-Guthaben abgebucht.
- Jedes Bild erscheint als eine Zeile im Nutzungsverlauf des Dashboards, markiert mit Bild.
Fehlercodes
Fehler folgen dem OpenAI-Format: ein error-Objekt mit message, type, param und code.
| Status | type / code | Bedeutung |
|---|---|---|
| 400 | invalid_request_error | Ungültiger Parameter (z. B. n außerhalb 1–4, unbekannte size, leerer oder zu langer Prompt). Keine Kosten. |
| 400 | content_policy_violation | Der Prompt verstößt gegen die Inhaltsrichtlinie (siehe unten). Keine Kosten. |
| 401 | — | API-Key fehlt oder ist ungültig. |
| 402 | insufficient_quota | Nicht genug GeraiPoints für die angeforderte Bildanzahl — bitte aufladen. |
| 403 | — | Dieses Modell ist für den API-Key nicht freigegeben — füge es im Dashboard zur Modellliste des Keys hinzu. |
| 404 | model_not_found | Unbekanntes Modell oder kein Bildmodell. |
| 429 | rate_limit_exceeded | Zu viele Anfragen — das Limit liegt bei 10 Anfragen/Minute pro Key. Warte gemäß Header Retry-After. |
| 502 | image_generation_failed | Die Bildgenerierung ist serverseitig fehlgeschlagen. Keine Kosten — bitte erneut versuchen. |
{
"error": {
"message": "...",
"type": "...",
"param": "...",
"code": "..."
}
}Ein Aufruf eines Bildmodells über /v1/chat/completions liefert 400 mit Verweis auf diesen Endpoint — nutze /v1/images/generations.
Tipps für Prompts
- Prompts können auf Deutsch, Englisch, Indonesisch oder in anderen Sprachen geschrieben werden.
- Das Modell kann Text im Bild darstellen — setze den genauen Text in Anführungszeichen, z. B.
Schriftzug "20% RABATT". - Beschreibe Motiv, Umgebung, Stil (Foto, flache Illustration, 3D, Aquarell), Licht und Komposition — je genauer, desto passender das Ergebnis.
- Wähle
sizepassend zum Einsatz:1024x1024für Feeds,1024x1792für Stories/Hochformat,1792x1024für Banner im Querformat. - Mehrere Varianten nötig? Nutze
nbis 4 in einer Anfrage — denke daran, dass jedes erfolgreiche Bild berechnet wird.
Inhaltsrichtlinie
Folgende Anfragen werden abgelehnt:
- Sexuelle oder explizite Inhalte.
- Inhalte, die Kinder ausbeuten oder gefährden.
- Sadistische Gewalt oder Gore.
- Reale politische Persönlichkeiten oder reale Personen des öffentlichen Lebens.
Ablehnungen liefern 400 mit dem Code content_policy_violation und werden nicht berechnet.
Bildlinks & Speicherung
data[].url ist öffentlich — wer den Link hat, kann das Bild öffnen — und nicht garantiert dauerhaft verfügbar. Lade das Bild direkt nach der Erzeugung herunter und speichere eine Kopie in deinem eigenen Speicher, oder fordere b64_json an, um die Bilddaten direkt in der Antwort zu erhalten.