Ketchup API (Google Nano Banana 2) Entwicklerhandbuch
Entwickeln Sie schnell mit Anleitungen, Beispiel-Payloads und bewährten Praktiken für Ketchup API Bild-Workflows.
Ketchup API Übersicht
Die Ketchup API ermöglicht Produktaufnahmen, UI-Hintergründe und Social Media Grafiken mit vorhersagbarer Renderqualität. Das REST-Design hält Integrationen einfach, während die Plattform von Solo-Entwicklern bis hin zu Unternehmens-Launches skaliert.
Ketchup API Funktionen
- Text-zu-Bild-Generierung optimiert für Produktionsszenen mit Ketchup API Modellen.
- Referenz-geführte Bearbeitung mit bis zu fünf Bildern in einer einzelnen Ketchup API Anfrage.
- Asynchrone Job-Warteschlange, damit Ihre App responsiv bleibt, während die Ketchup API rendert.
- Webhook-Callbacks, die der Ketchup API erlauben, Statusänderungen in Echtzeit zu übertragen.
- Konsistente JSON-Schemas, die Ketchup API Antworten leicht analysierbar halten.
- Bearer-Token-Sicherheit verwaltet im Ketchup API Dashboard.
overview.base_url
https://api.defapi.orgoverview.api_version
v1.0.0Erste Schritte mit Ketchup API
- Öffnen Sie einen Ketchup API Arbeitsbereich und erstellen Sie ein Zugangs-Token.
- Fügen Sie das Ketchup API Bearer-Token zum Authorization-Header für jeden Aufruf hinzu.
- Senden Sie POST an den Ketchup API Bilderzeugungsendpunkt mit Prompts, Modus und Referenzen.
- Speichern Sie die zurückgegebene Job-ID und fragen Sie den Status-Endpunkt ab oder abonnieren Sie Webhooks.
- Laden Sie die finalen Dateien herunter, sobald die Ketchup API den Job als erfolgreich markiert.
Authentifizierung
Jede Ketchup API-Anfrage benötigt ein gültiges Bearer-Token. Rotieren Sie Schlüssel pro Umgebung und überprüfen Sie die Nutzung regelmäßig.
Bearer Token Methode
Fügen Sie Ihr Ketchup API-Token wie unten gezeigt zum Authorization-Header hinzu:
Authorization: Bearer <your-api-key>Token-Format Beispiel
Authorization: Bearer dk-1234567890abcdefBeispiel-Anfrage
curl -X POST "https://api.defapi.org/api/image/gen" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer your-api-key-here" \
-d '{
"model": "google/gempix2",
"prompt": "A beautiful landscape"
}'Gültiges Token Checkliste
- ✅ Token ist aktiv und nicht abgelaufen.
- ✅ Workspace hat Ketchup API-Zugang aktiviert.
- ✅ Konto hat verbleibendes Kontingent oder Guthaben.
Häufige Probleme
- ❌ Authorization-Header fehlt.
- ❌ Fehlerhafter Bearer-Token-Wert.
- ❌ Gesperrter Workspace oder widerrufenes Token.
Ketchup API Bildgenerierung
Erstellen Sie neue Renders, überarbeiten Sie vorhandene Assets oder mischen Sie Mood Boards mit dem Ketchup API Generierungs-Endpoint.
Endpoint
POST /api/image/genAnfrageparameter
| Parameter | Type | Required | Description |
|---|---|---|---|
| model | string | Yes | Model identifier (e.g., "google/gempix2") |
| prompt | string | Yes | Text prompt describing the image |
| images | array | No | Reference image URLs (max 4) |
| callback_url | string | No | Webhook URL for completion notifications |
Code-Beispiele
Einfacher Ketchup API Prompt
{
"model": "google/gempix2",
"prompt": "A beautiful girl dancing in a garden"
}Ketchup API Remix mit Referenzen
{
"model": "google/gempix2",
"prompt": "Put them in a basket",
"images": [
"https://cdn.openai.com/API/docs/images/body-lotion.png",
"https://cdn.openai.com/API/docs/images/soap.png"
],
"callback_url": "https://example.com/webhook/image-callback"
}Antwort-Schema
{
"code": 0,
"message": "ok",
"data": {
"task_id": "ta12345678-1234-1234-1234-123456789abc"
}
}Fehlerbehandlung
400 - Bad Request
{"code": 1, "message": "failed", "detail": "prompt is required"}401 - Unauthorized
{"code": 1, "message": "Invalid API key"}Ketchup API Job-Status
Überwachen Sie den Rendering-Fortschritt und rufen Sie Bereitstellungs-URLs über den Status-Endpoint ab.
Endpoint
GET /api/task/query?task_id=<task_id>Abfrageparameter
| Parameter | Type | Required | Description |
|---|---|---|---|
| task_id | string | Yes | Unique task identifier returned from generation endpoint |
Beispiel-Anfrage
curl -X GET "https://api.defapi.org/api/task/query?task_id=ta823dfb-eaac-44fd-aec2-3e2c7ba8e071" \ -H "Authorization: Bearer your-api-key-here"
Status-Codes
pending - Ketchup API hat die Anfrage akzeptiert und den Job in die Warteschlange eingereiht.submitted - Ketchup API hat den Job zur Bearbeitung eingeplant.in_progress - Ketchup API rendert gerade die Assets.success - Ketchup API hat das Rendering abgeschlossen und die Assets sind zum Download bereit.failed - Ketchup API konnte den Job aufgrund eines Fehlers nicht rendern.Fehlercodes
404 - Task Not Found
{"code": 1, "message": "task not found"}401 - Unauthorized
{"code": 401, "message": "Invalid API key"}Ketchup API Datenmodelle
Detaillierte Schemas für Anfrage-Payloads, Job-Antworten und Webhook-Bodies, die in Ketchup API-Integrationen verwendet werden.
ImageGenResult
Represents a generated image result.
{
"image": "https://google.datas.systems/fileSystem/response_images/287/2025/08/29/1756432513771985292_2989.png"
}| Field | Type | Description |
|---|---|---|
| image | string | Image URL or base64 data URI |
CallbackPayload
Payload sent to the callback_url when task status changes to final states.
{
"result": [
{
"image": "https://google.datas.systems/fileSystem/response_images/287/2025/08/29/1756432513771985292_2989.png"
}
],
"status": "success",
"task_id": "ta5c9705-b8ae-4cb9-aa6f-97c4fee88c8d",
"consumed": "0.500000",
"status_reason": {
"message": null
}
}| Field | Type | Description |
|---|---|---|
| result | array | Array of ImageGenResult objects (null if failed) |
| status | string | Final task status (success/failed) |
| task_id | string | Unique task identifier |
| consumed | string | Credits consumed by the task |
| status_reason | object | Status details including error message if failed |
Modell-Schemas
google/gempix2Nano Banana image generation modelgoogle/gemini-2.5-flash-imageGemini 2.5 Flash image modelFehlerbehebung
Verstehen Sie Ketchup API-Fehlerformate, Wiederholungsregeln und wann Sie sich an den Support wenden sollten.
HTTP-Statuscodes
OK
Request was successful
Bad Request
Invalid request parameters or malformed JSON
Unauthorized
Invalid, missing, or expired API key
Not Found
Task not found or endpoint doesn't exist
Internal Server Error
Server-side error occurred
Best Practices
- Prüfen Sie den HTTP-Statuscode, bevor Sie die Payload analysieren.
- Verwenden Sie exponentiellen Backoff bei der Wiederholung von Ketchup API-Jobs nach 500-Fehlern.
- Protokollieren Sie die Anfrage-ID, damit das Ketchup API-Support-Team Probleme verfolgen kann.
- Validieren Sie Prompts und Bild-URLs lokal, um 400-Antworten zu vermeiden.
- Rotieren Sie Ketchup API-Token, wenn die Authentifizierung fehlschlägt.
- Fragen Sie den Job-Status höchstens einmal pro Sekunde ab, um Rate Limits zu respektieren.
- Bevorzugen Sie Webhooks für hohe Volumina, damit die Ketchup API Updates senden kann.
Beispiel-Fehlerbehandlung (JavaScript)
async function generateImage(prompt, apiKey) {
try {
const response = await fetch('https://api.defapi.org/api/image/gen', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'Authorization': `Bearer ${apiKey}`
},
body: JSON.stringify({
model: 'google/gempix2',
prompt: prompt
})
});
if (!response.ok) {
const errorData = await response.json();
throw new Error(`API Error ${response.status}: ${errorData.message}`);
}
const data = await response.json();
return data.data.task_id;
} catch (error) {
console.error('Image generation failed:', error.message);
throw error;
}
}