
Produktfotografie-API: Verkaufsreife Bilder aus einem Foto
API-Workflow für Produktfotografie, der die Produktidentität erhält, mit 1K startet, jedes Ergebnis validiert und die Kosten pro genehmigtem Bild verfolgt.
Ein gewöhnliches Produktfoto reicht aus, um eine begrenzte Menge an Front- oder Dreiviertels-Verkaufsfotos zu erstellen, vorausgesetzt, die API wird gebeten, die Reihe zu ändern, nicht das Produkt neu zu erfinden. Der praktische Workflow ist einfach: Schreib die Details auf, die nicht veränderbar sind, erstelle einen günstigen 1K-Kandidaten, lehne ihn nach einer festen Checkliste ab, und erhöhe die Qualität oder wechsle das Modell nur bei benannten Fehlern.
Das letzte Teil ist wichtig. Ein Modellaufruf kann erfolgreich beendet werden und dir trotzdem eine Flasche mit einer anderen Kappe, einem verwaschenen Logo oder einem Schatten geben, der den Gegenstand schweben lässt. Die Zahl, die es zu verfolgen gilt, ist daher nicht der beworbene Generierungspreis. Es ist Kosten pro genehmigtem Bild, einschließlich jedes fertigen Kandidaten, den du ablehnst.
Die Tarife in diesem Leitfaden wurden am 3. September 2026 überprüft. Sie können sich ändern, daher lies die aktuelle Modellseite, bevor du sie in ein Kundenangebot oder ein festes Budget umsetzt.
TL;DR
- Beginne mit einem Produktfoto, das dir gehört und einen unverstellten Gegenstand aus dem Winkel zeigt, in dem du ihn verkaufen möchtest.
- Schreib einen Identitätsvertrag für Form, Proportionen, Material, Farbgrenzen, Hardware und vorhandene Etikettzeichen auf. Lass die Szene ändern; lass diese Details nicht ändern.
- Die kostengünstigste erste Durchlaufrate hier ist Nano Banana 2 Lite bei 15 Credits, oder $0,015, für ein abgeschlossenes 1K-Bild bei Überprüfung am 3. September 2026.[1]
- Nutze einen Kandidaten zur Validierung des Prompts. Ordere keine Charge an, bevor das Produkt die Überprüfung besteht.
- Lies das festgestellte
usage.creditsaus jeder Terminal-Aufgabe. Teile die Gesamtzahl der abgerechneten Credits für abgeschlossene Versuche durch die Anzahl, die eine Person genehmigt. - Halte genaue Preise, Dosierungen, Zutaten, Zertifizierungszeichen und rechtliche Texte aus den generierten Pixeln fern. Bewahre oder kombiniere die überprüfte Grafik.
Ein Produktfoto ist nicht verkaufsreif, nur weil es poliert aussieht
Können Nutzer ein einfaches Produktfoto hochladen und ein sauberes E-Commerce-Ergebnis ohne veränderte Formen, beschädigten Etiketttext, künstliche Beleuchtung oder uneinheitliche Ausgaben erhalten? Die Kosten zählen, weil jedes abgelehnte Ergebnis eine weitere Generierung auslösen kann.
Das ist eine bessere Problemdefinition als „mach dieses Foto professionell". Ein verkaufsreifes Material muss überprüfbare Kontrollen bestehen:
| Kontrolle | Bestandsbedingung | Ablehnung wenn |
|---|---|---|
| Produktzahl | Genau ein angefordeter Artikel | Ein Duplikat, Deckel oder loses Teil erscheint |
| Geometrie | Silhouette und Proportionen passen zur Quelle | Kappe, Griff, Pumpe, Kante oder Paketbreite ändern sich |
| Material | Oberflächenfinish und Textur bleiben erkennbar | Matt wird glänzend, transparent wird undurchsichtig oder Körnung verschwindet |
| Farbe | Produktfarbblöcke bleiben an denselben Stellen | Weißabgleich ändert das Produkt statt der Szene |
| Etikett | Vorhandene Zeichen bleiben an Ort und Stelle und es erscheinen keine neuen Ansprüche | Wörter mutieren, verschwinden oder werden erfunden |
| Ausschnitt | Der ganze Artikel ist sichtbar mit nützlichem Sicherheitsbereich | Die Basis, Kappe, Griff oder Schatten wird abgeschnitten |
| Verankerung | Kontaktschatten stimmt mit der Oberfläche und dem Licht überein | Der Artikel schwebt oder wirft einen unmöglichen Schatten |
| Lieferung | Seitenverhältnis, Pixelgröße und Dateiformat passen zum Ziel | Die Datei braucht einen unsicheren Ausschnitt oder hat unbrauchbare Kanten |
Ein schönes Bild kann diese Tabelle nicht bestehen. Umgekehrt kann ein zurückhaltender weißer Sweep, der jeden Produktfakt bewahrt, das wertvollere Material sein.
Wähle ein Modell nach dem Fehler aus, den du beheben musst
Es gibt kein universelles „bestes Produktfotografie-Modell". Beginne mit der kostengünstigsten Route, die die Bearbeitung ausdrücken kann, und wechsle nur, wenn dir die Überprüfung sagt, warum die erste Route unzureichend ist.
| Stufe | Modell und Request-Tier | Live-Generierungsrate | Nutze es wenn |
|---|---|---|---|
| Layout-Durchlauf | nano-banana-2-lite, 1K | $0,015 / 15 Credits | Eine Quelle, eine einfache Hintergrund- und Beleuchtungsänderung |
| Flexible Bearbeitung | gpt-image-2, 1K | $0,030 / 30 Credits | Du brauchst mehr Seitenverhältnisoptionen oder einen gezielten Bearbeitungs-Workflow |
| Produktaufnahme | doubao-seedream-5-0-pro, basis 1K | $0,032 / 32 Credits | Material, Beleuchtung, Komposition oder Multi-Referenz-Kontrolle ist der schwierigere Teil |
| Komplexes oder größeres Material | gemini-3-pro-image-preview, 1K oder 2K | $0,030 / 30 Credits | Das Briefing ist dicht, Referenzen sind zahlreich oder ein späterer 4K-Durchlauf ist gerechtfertigt |
Dies sind aktuelle reAPI-Tarife, nicht Upstream-Vendor-Listenpreise. Nano Banana 2 Lite gibt ein 1K-Bild zurück und akzeptiert bis zu zehn öffentliche Bild-Referenzen. GPT Image 2 bietet 1K-, 2K- und 4K-Stufen. Seedream 5.0 Pro bietet Basis-1K und High-2K-Ausgabe mit bis zu zehn Referenzen. Nano Banana Pro erreicht auch 4K; sein festgestellter 4K-Preis war $0,033 oder 33 Credits am selben Tag.[1][2][3][4]
Die Stufenbezeichnungen sind Workflow-Empfehlungen, keine Vendor-Rankings. ByteDance positioniert Seedream 5.0 Pro rund um strukturelle Kohärenz, Material- und Beleuchtungskontrolle, Multi-Image-Fusion und produktionsorientierte Bearbeitung; das Quellenfoto und dein Akzeptanztest entscheiden immer noch, ob diese Fähigkeiten bei diesem bestimmten Produkt helfen.[8]
Auflösung ist kein Reparaturwerkzeug für falsche Geometrie. Wenn der 1K-Entwurf die Kappe verändert, kann ein 4K-Durchlauf dir eine schärfere falsche Kappe geben. Repariere zunächst die Identitätsanweisung oder füge eine nützliche Referenz hinzu. Erhöhe die Auflösung erst, nachdem die Komposition und das Produkt bestanden haben.
Für breitere Fähigkeits-Trade-offs nutze den vollständigen GPT Image 2 versus Nano Banana Pro-Vergleich oder den Seedream 5.0 Pro versus GPT Image 2-Vergleich. Der Rest dieses Leitfadens bleibt bei der Produktfoto-Aufgabe.
Bereite das Quellenfoto vor, bevor du Credits ausgibst
Bestätige, dass dir die Quelle gehört oder dass du die Berechtigung hast, sie zu transformieren, bevor du sie einreichst. Gehe nicht davon aus, dass eine Marktplatzauflistung, ein anderer Katalog oder ein Kunden-Upload für ein neues kommerzielles Material freigegeben ist; überprüfe die entsprechende Lizenz, Bedingungen und Kundenzustimmung.
Das Quellenfoto braucht keinen Studio-Hintergrund. Es muss das Produkt lesbar machen:
- Zeige einen kompletten Artikel, einschließlich seiner Basis und Spitze;
- verwende denselben breiten Winkel, den du im Ergebnis möchtest;
- halte Finger, Klebeband, Glanz und Requisiten von wichtigen Kanten fern;
- vermeide verquetschte Schwarztöne und ausgebrannte Lichter, die das Material verbergen;
- mache die Kappe, den Griff, die Pumpe, die Befestigung und die Farbgrenzen leicht zu überprüfen;
- stelle einen anderen eigenen Winkel bereit, wenn das angeforderte Ergebnis eine Seite freilegt, die das erste Foto nicht zeigt.
Ein Foto ist kein 3D-Modell. Es kann nicht beweisen, was auf einem verborgenen Rückfeld gedruckt ist oder wie ein unsichtbarer Mechanismus geformt ist. Wenn die Beweise fehlen, erfasse eine andere Referenz oder halte diese Oberfläche außer Sicht.
Die API akzeptiert Medien als öffentliche HTTP(S)-URLs. Base64-Strings und data:-URLs werden abgelehnt, daher lade die Quelle zuerst auf dein eigenes R2, S3 oder gleichwertiges Objektspeicher hoch.[1]
Schreib einen Produktidentitätsvertrag
Bevor du den visuellen Prompt schreibst, verwandle die Quelle in einen kurzen Inspektionsdatensatz. Das ist noch nicht Prosa für das Modell; es ist die Spezifikation, die sowohl der Prompt als auch der Reviewer verwendet.
{
"product": "250 ml skincare bottle",
"must_keep": [
"exactly one bottle",
"tall rounded-rectangle silhouette",
"short matte-white pump",
"cobalt band at the lower quarter",
"warm-white body with a satin finish",
"front label position and all existing marks",
"height-to-width ratio"
],
"may_change": [
"background",
"surface",
"lighting direction",
"contact shadow",
"crop room"
],
"must_not_create": [
"new words or logos",
"price or discount badge",
"ingredients or certification claim",
"extra bottle, cap, pump, or packaging"
]
}„Halte es konsistent" gibt einem Reviewer nichts, worauf er zeigen kann. „Das Kobaltband bleibt im unteren Viertel" schon.
Baue deinen ersten Produktfotografie-Prompt
Stelle die nicht verhandelbaren Identitätsdetails zuerst, dann was sich ändern kann, dann beschreibe die Aufnahme. Modelle folgen normalerweise einer konkreten Grenze besser als einer langen Liste von Fotografie-Adjektiven.
Use Image 1 as the exact product identity.
Keep exactly one product. Preserve its silhouette, dimensions, pump position,
warm-white satin material, cobalt color boundary, surface texture, and every
existing label mark. Do not redesign, relabel, remove, or add branding.
Change only the setting: place the product centered on a warm-white seamless
studio sweep. Use a large soft key light from the upper left, even front detail,
and a natural contact shadow directly below the bottle. Keep the whole product
visible with at least 10% crop room on every side.
No hands, people, props, boxes, extra products, added text, badges, dramatic
reflections, clipped edges, or floating object.Der Prompt bietet das Modell nicht, das Etikett zu verbessern. Wenn die Etikettypografie kommerziell wichtig ist, ist „Verbesserung" eine Einladung, es neu zu zeichnen. Bewahre die ursprüngliche Platte oder füge überprüfte Grafik nach der Generierung hinzu.
Sende deine erste Produktfotografie-API-Aufgabe ein
Erstelle einen Media-API-Schlüssel, ersetze die Beispiel-URL durch dein öffentliches Quellbild und reiche eine Nano Banana 2 Lite-Aufgabe ein. Dies ist eine kostenpflichtige Anfrage; sie ist absichtlich ein Kandidat statt einer Charge.
curl https://reapi.ai/api/v1/images/generations \
-H "Authorization: Bearer $REAPI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "nano-banana-2-lite",
"prompt": "Use Image 1 as the exact product identity. Keep exactly one product. Preserve its silhouette, dimensions, pump position, material, color boundaries, surface texture, and every existing label mark. Do not redesign, relabel, remove, or add branding. Change only the setting: center it on a warm-white seamless studio sweep with a soft key light from upper left and a natural contact shadow. Keep the whole product visible with at least 10% crop room. No hands, people, props, extra products, added text, badges, clipped edges, or floating object.",
"image_urls": ["https://assets.example.com/my-product.jpg"],
"aspect_ratio": "1:1"
}'Die Antwort enthält eine id und status: "processing". Speichere die ID. Frage dann den Task-Endpunkt alle zwei oder drei Sekunden ab, bis er completed oder failed erreicht:
TASK_ID="task_replace_me"
curl "https://reapi.ai/api/v1/tasks/$TASK_ID" \
-H "Authorization: Bearer $REAPI_API_KEY"Abfragen verbrauchen keine Credits. Eine abgeschlossene Bildaufgabe gibt die Datei in output.image_urls und die festgestellte Belastung in usage.credits zurück.[5]
Wiederhole die POST-Anfrage nicht blindlings, wenn ein Client seine Verbindung verliert, bevor es die Antwort liest. Der erste Request könnte bereits eine bezahlte Aufgabe erstellt haben. Protokolliere die Antwort und Task-ID, sobald sie ankommen; versuche die GET sicher erneut, aber triff eine bewusste Entscheidung, bevor du eine weitere Generierung erstellst.
Ein kompletter Node.js-Runner mit gebundener Abfrage
Das folgende Skript funktioniert in Node.js 20 oder später ohne SDK. Es unterstützt die vier 1K-Request-Formen, die in diesem Leitfaden verwendet werden, reicht genau einmal ein, verwendet ein fünfminütiges lokales Abfrage-Zeitlimit, druckt die festgestellten Credits aus und kopiert eine erfolgreiche Datei ins aktuelle Verzeichnis.
import { writeFile } from 'node:fs/promises';
const apiKey = process.env.REAPI_API_KEY;
const sourceUrl = process.env.SOURCE_IMAGE_URL;
const model = process.env.IMAGE_MODEL || 'nano-banana-2-lite';
if (!apiKey || !sourceUrl) {
throw new Error('Set REAPI_API_KEY and SOURCE_IMAGE_URL first.');
}
const prompt = `Use Image 1 as the exact product identity.
Keep exactly one product. Preserve its silhouette, proportions, hardware,
material, color boundaries, surface texture, and every existing label mark.
Do not redesign, relabel, remove, or add branding.
Change only the setting: center it on a warm-white seamless studio sweep with
a soft key light from upper left and a natural contact shadow. Keep the whole
product visible with at least 10% crop room. No hands, people, props, added
text, badges, extra products, clipped edges, or floating object.`;
function requestBody(selectedModel) {
const common = {
model: selectedModel,
prompt,
image_urls: [sourceUrl],
};
if (selectedModel === 'nano-banana-2-lite') {
return { ...common, aspect_ratio: '1:1' };
}
if (selectedModel === 'gpt-image-2') {
return { ...common, size: '1:1', resolution: '1k' };
}
if (selectedModel === 'doubao-seedream-5-0-pro') {
return { ...common, aspect_ratio: '1:1', quality: 'basic' };
}
if (selectedModel === 'gemini-3-pro-image-preview') {
return { ...common, size: '1:1', resolution: '1k' };
}
throw new Error(`Unsupported IMAGE_MODEL: ${selectedModel}`);
}
const headers = {
Authorization: `Bearer ${apiKey}`,
'Content-Type': 'application/json',
};
async function readJson(response) {
const body = await response.json();
if (!response.ok) {
const message = body.error?.message || JSON.stringify(body);
throw new Error(`HTTP ${response.status}: ${message}`);
}
return body;
}
const sleep = (ms) => new Promise((resolve) => setTimeout(resolve, ms));
async function getTask(taskId) {
for (let attempt = 0; attempt < 4; attempt += 1) {
let response;
try {
response = await fetch(`https://reapi.ai/api/v1/tasks/${taskId}`, {
headers: { Authorization: `Bearer ${apiKey}` },
signal: AbortSignal.timeout(15_000),
});
} catch (error) {
if (attempt === 3) throw error;
await sleep(1000 * 2 ** attempt);
continue;
}
if (response.status === 429) {
const seconds = Number(response.headers.get('retry-after'));
await response.body?.cancel();
await sleep(Number.isFinite(seconds) ? seconds * 1000 : 5000);
continue;
}
if ([502, 503, 504].includes(response.status)) {
await response.body?.cancel();
await sleep(1000 * 2 ** attempt);
continue;
}
return readJson(response);
}
throw new Error(`Task ${taskId} could not be read after transient errors`);
}
// Submit once. If this connection fails ambiguously, reconcile before
// re-running the script: the server may already have accepted the task.
const submission = await readJson(
await fetch('https://reapi.ai/api/v1/images/generations', {
method: 'POST',
headers,
body: JSON.stringify(requestBody(model)),
signal: AbortSignal.timeout(30_000),
}),
);
console.log(`submitted ${submission.id}`);
const deadline = Date.now() + 5 * 60 * 1000;
let task;
while (Date.now() < deadline) {
await sleep(3000);
task = await getTask(submission.id);
if (task.status === 'completed' || task.status === 'failed') break;
}
if (!task || task.status === 'processing') {
throw new Error(
`Local polling deadline reached. Resume GET for ${submission.id}; do not POST again.`,
);
}
console.log(`status=${task.status} credits=${task.usage.credits}`);
if (task.status === 'failed') {
const credits = task.usage?.credits ?? 'unknown';
throw new Error(
`${task.error?.code || 'task_failed'}: ${task.error?.message || 'unknown error'}; task=${task.id}; settled_credits=${credits}`,
);
}
const outputUrl = task.output?.image_urls?.[0];
if (!outputUrl) throw new Error('Task completed without an image URL.');
const imageResponse = await fetch(outputUrl, {
signal: AbortSignal.timeout(30_000),
});
if (!imageResponse.ok) {
throw new Error(`Image download failed: HTTP ${imageResponse.status}`);
}
const contentType = (imageResponse.headers.get('content-type') || '')
.split(';')[0]
.trim()
.toLowerCase();
const extensionByType = {
'image/jpeg': 'jpg',
'image/png': 'png',
'image/webp': 'webp',
};
const extension = extensionByType[contentType];
if (!extension) throw new Error(`Unexpected output type: ${contentType}`);
const outputPath = `product-candidate.${extension}`;
await writeFile(outputPath, Buffer.from(await imageResponse.arrayBuffer()));
console.log(`saved ${outputPath} from ${outputUrl}`);Führe es so aus:
export REAPI_API_KEY="rk_live_replace_me"
export SOURCE_IMAGE_URL="https://assets.example.com/my-product.jpg"
export IMAGE_MODEL="nano-banana-2-lite"
node product-photo.mjsUm GPT Image 2, Seedream 5.0 Pro oder Nano Banana Pro nach der Überprüfung zu versuchen, ändere nur IMAGE_MODEL. Der Request-Builder liefert das korrekte Größenfeld für jedes Modell.
Was ein Live-15-Credit-Test zurückgab

Am 3. September 2026 schickten wir ein reAPI-gehostetes 2.048 × 1.152 Quell-PNG durch die genaue Nano Banana 2 Lite-Anfrage oben mit einem quadratischen Ausgabeverhältnis. Task task_01a065bb951c735fab44b38c778e069e beendet, gab ein 1.024 × 1.024 JPEG zurück und zahlte 15 Credits ($0,015). Die Bild-URL war ohne Authentifizierung herunterladbar, als wir sie überprüften.
Das Ergebnis tat, was der erste Durchlauf zum Test beabsichtigte: Er behielt einen Becher, zeigte den vollen Umriss und die Öffnung des Griffs, entfernte die Bücher und Pflanze und platzierte das Produkt auf einem neutralen Sweep mit einem Kontaktschatten. Es änderte auch kleine Glasurflocken und Reflexionen. Das macht es zu einem nützlichen Layout-Kandidaten, nicht zu Beweis, dass eine einzigartige handgefertigte SKU pixel-identisch blieb. Ein Durchlauf validiert die Request-Form, Ausgabe-Form und Belastung; es begründet nicht die Latenz, Akzeptanzrate oder einen Modellsieger.[1]
Überprüfe das erste Ergebnis bei 100% Größe
Entscheide dich nicht von einer Miniaturansicht. Öffne Quelle und Kandidat nebeneinander, zoome auf 100% und fülle einen Datensatz wie diesen aus:
{
"task_id": "task_replace_me",
"decision": "reject",
"passed": [
"one product",
"complete crop",
"background",
"contact shadow"
],
"failed": [
"pump became taller",
"lower cobalt band moved upward"
],
"usage_credits": 15,
"reviewer": "initials",
"prompt_revision": 1
}Überprüfe zuerst den Umriss. Vergleiche dann feste Orientierungspunkte: Kappenhöhe, Grifföffnung, Ecken, Nähte, Knopfzahl, Farbgrenzen, Etikettposition und Oberflächenfinish. Lies jedes sichtbare Wort. Überprüfe schließlich Ausschnitt und Schatten.
Diese Reihenfolge ist absichtlich. Ein geschmackvolles Licht-Setup sollte dich nicht dazu überreden, ein anderes Produkt zu genehmigen.
Wiederhole einen fehlgeschlagenen Zustand, nicht das ganze Briefing
„Versuche es nochmal" lehrt dich nichts. Nimm die bestandenen Teile mit und ändere eine Anweisung, die mit dem Fehler verbunden ist.
| Fehler | Besserer nächster Schritt |
|---|---|
| Kappe oder Griff ändert | Benenne seine Position und Proportionen; füge einen anderen eigenen Winkel hinzu, wenn die Form verdeckt ist |
| Produkt wird zu glänzend | Gib das beobachtete Finish an und entferne Wörter wie „luxury shine" |
| Etikettbuchstaben mutieren | Lehne die Etikettenpixel ab; bewahre oder kombiniere überprüfte Grafik, anstatt neuen Text zu schreiben |
| Gegenstand schwebt | Fordere einen Kontaktschatten direkt darunter und eine Oberflächenebene an der Basis an |
| Ausschnitt schneidet das Produkt | Erfordere den kompletten Artikel plus einen numerischen Sicherheitsrand |
| Hintergrund-Relikte bleiben | Verwende einen Ausschnitt und eine deterministische Schablone, anstatt den Generator erneut zu fragen |
| Farbe verschiebt sich | Beschreibe die Produktfarbe als fest und mache das angeforderte Licht neutral |
Gib einem fast korrekten Modell einen gezielten erneuten Versuch. Wenn die gleiche Identitätsbedingung wieder fehlschlägt, wechsle die Methode: Stelle eine bessere Referenz bereit, nutze eine lokalisierte Bearbeitung oder bewahre die ursprünglichen Produktpixel auf und rekonstruiere nur den Hintergrund. Der Hintergrundentfernung-API-Preisleitfaden zeigt, wie man diese deterministische Route bepreist.
Berechne, was ein genehmigtes Bild wirklich kostet
Ein Credit ist $0,001. Die nützliche Formel ist:
cost per approved image =
sum of settled credits for completed creative attempts × $0.001
----------------------------------------------------------------
number of approved imagesAngenommen, drei Nano Banana 2 Lite-Aufgaben beenden sich bei 15 Credits pro. Du lehnst zwei für Produktabweichung ab und genehmigst eine:
(15 + 15 + 15) × $0.001 / 1 approved image = $0.045Der API-Stückpreis ist immer noch $0,015. Dein akzeptierter Bildpreis ist $0,045. Beide Zahlen sind wahr; sie beantworten unterschiedliche Fragen.
Provider-Fehler werden normalerweise nach Rückerstattung der Reservierung auf Null Credits erstattet. Abgeschlossene Bilder, die du kreativ ablehnst, bleiben bezahlt. Eine modellspezifische Post-Generierungs-Sicherheitsprüfung kann auch eine Belastung beibehalten, wenn sie die Ausgabe verbirgt, daher nutze status zusammen mit usage.credits, anstatt anzunehmen, dass jede fehlgeschlagene Aufgabe Null kostet.[5]
Wenn du einen kleinen modellübergreifenden Smoke-Test möchtest, budgetieren derzeit ein 1K-Versuch pro Modell von Nano Banana 2 Lite, GPT Image 2 und Seedream 5.0 Pro:
15 + 30 + 32 = 77 credits = $0.077Das ist ein ungefährtes Planungsbudget, kein gemessenes Benchmark, Akzeptanzrate oder Modell-Ranking. Eine Ausgabe pro Modell würde keine dieser Aussagen unterstützen. Ein billigerer und nützlicherer erstes Vorgehen ist immer noch der einzelne 15-Credit-Layout-Kandidat, gefolgt von einer fehlerspezifischen Entscheidung.
Setze den Workflow in Produktion um, ohne die Audit-Spur zu verlieren
Für jede Generierung bleibe erhalten:
- einen Hash oder haltbaren ID für das Quellmaterial;
- die genaue Modell-ID, Ausgabe-Tier, Prompt und Prompt-Revision;
- die Einreichungszeit und die zurückgegebene Task-ID;
- Terminal
status,usage.creditsund jeden Fehler-Code; - die zurückgegebene URL und den Ort deiner archivierten Kopie;
- Genehmigungsstatus, Reviewer und einen kurzen Ablehnungsgrund.
Halte Einreichung und Abfrage als separate Jobs. Ein Worker kann einmal einreichen, die Task-ID speichern und einen anderen Worker nach einem Neustart GET-Anfragen fortsetzen lassen. Setze ein lokales Abfrage-Zeitlimit, aber verwechsle dieses Zeitlimit nicht mit einem API-Fehler: Wenn dein Prozess aufhört zu warten, nimm die gleiche Aufgabe später auf.
Archiviere genehmigte Dateien im Speicher, den du kontrollierst. Der Tasks-Vertrag verspricht nicht, dass die CDN-Lebensdauer einer Bereitstellung mit der Lebensdauer deines Katalogs übereinstimmt, und eine Produktseite sollte nicht von einem temporären Generierungsdatensatz abhängen.[5]
Für eine No-Code-Charge nachdem der erste Prompt bestanden hat, zeigt der n8n-Produktanzeigen-Workflow die gleiche Submit-und-Poll-Struktur. Wenn du später Motion möchtest, trage die genehmigte Szene und den Identitätsvertrag in den Einprodukt-Fotografie-Videoworkflow.
Wenn Generierung das falsche Werkzeug ist
Bewahre die ursprünglichen Produktpixel auf und ändere nur die umgebende Leinwand wenn:
- das genaue Etikett, die Seriennummer oder die Regulierungsmarkierung lesbar bleiben muss;
- die Geometrie muss über einen großen Katalog hinweg pixel-identisch sein;
- das Produkt ist transparent, reflektierend oder mit feinem wiederholtem Text bedeckt;
- das Ziel verwendet eine Vorlage mit festem weißem Hintergrund;
- eine falsche Farbe oder Paketdetail könnte eine materielle Beschwerde des Kunden verursachen.
In diesen Fällen entferne den Hintergrund, bereinige die Maske, platziere den Ausschnitt auf einer bekannten Oberfläche und erstelle den Schatten mit einer deterministischen Design-Schablone. Eine generative API kann immer noch eine Hintergrundplatte erstellen, aber sie muss das Produkt nicht neu zeichnen.
FAQ
Was ist die billigste API-Route zum Versuchen?
Von den Routes in diesem Leitfaden war Nano Banana 2 Lite $0,015 oder 15 Credits für ein abgeschlossenes 1K-Bild am 3. September 2026. Überprüfe die aktuelle Modellseite, bevor du budgetierst, da sich Tarife ändern können.
Kann ein Foto die Rückseite und Seiten eines Produkts bewahren?
Nein. Es kann die sichtbare Form, das Material und die Etikett-Platzierung anleiten. Es kann nicht zuverlässig Fakten rekonstruieren, die die Quelle nicht zeigt. Stelle einen anderen eigenen Winkel bereit oder vermeide, die unsichtbare Oberfläche freizulegen.
Sollte ich das Modell bitten, ein verschwommenes Etikett neu zu schreiben?
Nicht für Produktionswahrheit. Verwende überprüfte Etikett-Grafik oder die ursprüngliche Produktplatte. Eine plausible neue Zutat, Dosierung, Zertifizierung oder Garantie ist immer noch falsche Information.
Sollte ich sofort bei 2K oder 4K generieren?
Beginne bei 1K zur Validierung von Identität, Komposition und Ausschnitt. Ziehe hoch, nur nachdem das Bild diese Prüfungen bestanden hat und der Lieferkanal wirklich mehr Pixel braucht. OpenAI und Google dokumentieren beide mehrere Ausgabegrößen für ihre aktuellen Bildmodelle, während modellspezifische Verfügbarkeit und Abrechnung unterscheiden.[6][7]
Welches Seitenverhältnis sollte ich für Produktauflistungen verwenden?
Nutze das Verhältnis, das das Ziel erfordert. Für einen modellübergreifenden Test ist 1:1 eine sichere gemeinsame Einstellung. Seedream 5.0 Pros aktuelle öffentliche Request akzeptiert 1:1, 4:3, 3:4, 16:9, 9:16, 2:3 und 3:2, aber nicht 4:5.[3]
Kann die API ein Produkt mit transparentem Hintergrund zurückgeben?
Das hängt vom Modell und der Request-Oberfläche ab. Seedream 5.0 Pro stellt eine transparent-Hintergrund-Option nur für ein Referenzbild bereit, das bereits einen Alpha-Kanal hat, und es kann nicht mit Schicht-Zerlegung kombiniert werden. Wenn dein Startfoto einen normalen Hintergrund hat, ist ein dedizierter Entfernungs-Workflow der klare erste Schritt.[3]
Werden fehlgeschlagene Aufgaben berechnet?
Provider-Fehler und Zeitüberschreitungen werden normalerweise erstattet, aber die endgültige Antwort ist usage.credits der Terminal-Aufgabe. Einige Post-Generierungs-Sicherheitsentscheidungen können eine modellspezifische Belastung sogar mit status: "failed" beibehalten.
Berechne die Rechnung niemals nur aus dem Status.[5]
Kann ich die Genehmigung automatisieren?
Du kannst mechanische Kontrollen wie Abmessungen, Datei-Dekodierung, Alpha und Produktzahl automatisieren. Geometrie, feine Etikett-Genauigkeit, Farbe und Anspruchssicherheit brauchen immer noch ein menschliches Tor, es sei denn, du hast ein validiertes produktspezifisches Vergleichssystem. Die Automatisierung sollte unsichere Bilder zur Überprüfung weiterleiten, nicht sie ruhig veröffentlichen.
Beginne bei 1K und eskaliere nur bei einem benannten Fehler
Ein nützlicher Produktfotografie-API-Workflow ist konservativ. Er beginnt mit der Quelle als Beweis, friert die Produktidentität ein und bleibt bei 1K, bis das Produkt selbst korrekt ist. Er verzeichnet abgeschlossene Ablehnungen, weil diese Teil der echten Kosten sind. Und er weiß, wann ein Ausschnitt plus eine Schablone sicherer ist als eine weitere imaginative Generierung.
So wird ein gewöhnliches Foto zu verkaufsreifem Material, ohne einen schönen Render als Beweis zu behandeln, dass das Produkt überlebt hat.
Referenzen
- reAPI. Nano Banana 2 Lite API: live pricing, request schema, and task lifecycle. Retrieved September 3, 2026 from the Nano Banana 2 Lite model page.
- reAPI. GPT Image 2 API: live pricing and request schema. Retrieved September 3, 2026 from the GPT Image 2 model page.
- reAPI. Seedream 5.0 Pro API reference. Retrieved September 3, 2026 from the Seedream 5.0 Pro documentation.
- reAPI. Gemini 3 Pro Image Preview API: live pricing and request schema. Retrieved September 3, 2026 from the Nano Banana Pro model page.
- reAPI. Tasks API: states, usage, polling, output, and refund semantics. Retrieved September 3, 2026 from the Tasks API reference.
- OpenAI. Image generation guide and GPT Image 2 model reference. Retrieved September 3, 2026 from the OpenAI developer documentation.
- Google. Gemini API image generation guide. Retrieved September 3, 2026 from the Google AI for Developers documentation.
- ByteDance Seed. Beyond Generation, It Understands Design: Introducing Seedream 5.0 Pro. Retrieved September 3, 2026 from the Seed product blog.
Further reading
Autor

Kategorien
Weitere Beiträge

KI-Videogenerator mit echten Personen: Was wirklich klappt
Echte Personen in KI-Videos nutzen: zulässige Referenzen, native Dialogoptionen, dokumentierte Eingabegrenzen sowie Prüfung, Ablehnung und Kosten.


Seedance 2.5 Content Filtering: Ablehnungen diagnostizieren
Seedance-2.5-Ablehnungen anhand von Submit-Antwort, Task-Fehler, Routing-Parametern und abgerechneter Nutzung untersuchen und richtig einordnen.


NSFW-Video-API: Seedream, Seedance, Wan und H3
Zuverlässiger NSFW-Video-Workflow: Erstelle Keyframes in Seedream 5.0 Pro, animiere mit Seedance, Wan oder MiniMax H3, dann Zustimmung prüfen.
