Tutorial
Wie verwendet man die FIBO 1.5 API? In 5 Minuten Generierung und Bearbeitung zum Laufen bringen
fibo-gen-1.5 Text-zu-Bild + fibo-edit-1.5 Bildbearbeitung per Anweisung: curl/Python-Beispiele, Parametertabelle und Fehlermeldungen im Originalwortlaut.
TL;DR
- FIBO 1.5 ist ein Schnittstellenpaar aus „Generierung + Bearbeitung":
fibo-gen-1.5/text-to-imageerzeugt fotorealistische Bilder aus Text (auch Bildtext wird korrekt dargestellt),fibo-edit-1.5/image-to-imagebearbeitet Bilder mit einer einzigen Anweisung (bis zu 4 Referenzbilder, auch lokale Änderungen per Maske). Gen-Modellseite öffnen und direkt ausprobieren, neue Nutzer erhalten bei der Registrierung 200 Credits. - Beide Seiten zum gleichen Preis: $0.0575 pro Bild, eine Pipeline aus erst Generieren, dann Bearbeiten kostet $0.115 (siehe Preisseite).
- Aufruf über die HiAPI-
/v1/tasks-Schnittstelle: Aufgabe einreichen undtaskIderhalten, dann das Ergebnis abfragen; das Anweisungsfeld der Bearbeitungsschnittstelle heißtinstruction, nichtprompt.
Was es kann
- Fotorealistische Bilder + korrekter Text: Bildtext wie Produktetiketten oder Ladenschilder wird buchstabengenau geschrieben (das Label im folgenden Beispiel ist NOIR 07).
- Bildbearbeitung per Anweisung: Edit beschreibt mit
instruction, was geändert werden soll; nicht erwähnte Teile wie Pose, Gesicht und Hintergrund bleiben unverändert. - Komposition aus bis zu 4 Bildern: Outfit-Wechsel, Hintergrundwechsel, Produkte in Szene setzen,
image_urlswerden in Reihenfolge referenziert. - Nur lokale Änderungen per Maske: Weiß = zu ändernder Bereich, Schwarz = bleibt erhalten.
Hier ein echtes Ergebnis von Gen:
Luxury product photo of an amber glass perfume bottle on wet black marble, gold cap, soft rim light, droplets on the glass, the label reads 'NOIR 07' in elegant serif letters
(Bedeutung: Luxus-Produktfoto: bernsteinfarbene Glasflasche auf nassem schwarzem Marmor, goldene Kappe, weiches Kantenlicht, Wassertropfen auf der Flasche, auf dem Etikett steht NOIR 07. Seitenverhältnis 4:5.)

fibo-gen-1.5/text-to-image, 4:5, 768×960, $0.0575.
Mit diesem Prompt generieren →
Welche der beiden Schnittstellen wählen
fibo-gen-1.5/text-to-image |
fibo-edit-1.5/image-to-image |
|
|---|---|---|
| Aufgabe | Fotorealistische Bilder aus Text erzeugen | Vorhandene Bilder mit einer Anweisung bearbeiten |
| Pflichteingabe | prompt |
image_urls (1–4 Bilder) + instruction |
| Preis | $0.0575/Bild | $0.0575/Bild |
| Besondere Parameter | aspect_ratio 9 Varianten, seed (Standard 5555) |
mask_url Maske, seed (Standard 5555) |
| Geeignet für | Neue Bilder, Materialien mit Text | Outfit-/Hintergrundwechsel, Komposition, lokale Feinabstimmung |
Typische Pipeline: Gen erzeugt das Basisbild → Edit macht daraus ein Bilderset (Hintergrund wechseln, Farben ändern, Elemente hinzufügen). Prompts nach Szenario findest du in der Prompt-Sammlung.
Zwei Einstiegswege
Browser in 3 Schritten: Modellseite öffnen → Prompt einfügen, Seitenverhältnis wählen → auf Generieren klicken, ein Bild kostet $0.0575.
API in 3 Schritten: POST /v1/tasks einreichen → taskId erhalten → mit GET /v1/tasks/<taskId> abfragen und nach success herunterladen.
curl: das erste Bild
curl -X POST https://api.hiapi.ai/v1/tasks \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: your-unique-key-001" \
-d '{
"model": "fibo-gen-1.5/text-to-image",
"input": {
"prompt": "Luxury product photo of an amber glass perfume bottle on wet black marble, gold cap, soft rim light, droplets on the glass, the label reads '"'"'NOIR 07'"'"' in elegant serif letters",
"aspect_ratio": "4:5",
"seed": 2026
}
}'
Bearbeitungsschnittstelle: model durch fibo-edit-1.5/image-to-image ersetzen, die Anweisung in instruction schreiben, Bilder in Reihenfolge referenzieren (Anprobe durch Komposition zweier Bilder):
curl -X POST https://api.hiapi.ai/v1/tasks \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "fibo-edit-1.5/image-to-image",
"input": {
"image_urls": [
"https://static.hiapi.ai/gallery/2026/10/78f963cb21d0242c.jpg",
"https://static.hiapi.ai/gallery/2026/10/36246b7cabde4a1a.jpg"
],
"instruction": "Dress the woman in image 1 with the mustard corduroy jacket from image 2, worn open over her white t-shirt. Keep her pose, face and the studio background.",
"aspect_ratio": "3:4"
}
}'
Lokale Bearbeitung per Maske: mask_url funktioniert nur mit 1 Bild, Weiß = zu ändernder Bereich (genau umgekehrt zu Ideogram 4.5 Edit):
curl -X POST https://api.hiapi.ai/v1/tasks \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "fibo-edit-1.5/image-to-image",
"input": {
"image_urls": ["https://static.hiapi.ai/gallery/2026/10/d9037da1559e78a6.jpg"],
"mask_url": "https://static.hiapi.ai/gallery/2026/10/cae371f9e4689db5.png",
"instruction": "Replace the floor under the sneaker with light wooden planks."
}
}'
Python: einreichen, abfragen, herunterladen
import time, uuid, requests
BASE = "https://api.hiapi.ai/v1/tasks"
HEADERS = {
"Authorization": "Bearer YOUR_API_KEY",
"Content-Type": "application/json",
}
payload = {
"model": "fibo-gen-1.5/text-to-image",
"input": {
"prompt": "Luxury product photo of an amber glass perfume bottle on wet black marble, gold cap, soft rim light, droplets on the glass, the label reads 'NOIR 07' in elegant serif letters",
"aspect_ratio": "4:5",
"seed": 2026,
},
}
resp = requests.post(
BASE,
headers={**HEADERS, "Idempotency-Key": str(uuid.uuid4())},
json=payload,
timeout=30,
)
resp.raise_for_status()
task_id = resp.json()["taskId"]
while True:
task = requests.get(f"{BASE}/{task_id}", headers=HEADERS, timeout=30).json()
print(task["status"])
if task["status"] in ("success", "fail"):
break
time.sleep(3)
if task["status"] == "success":
image_url = task["output"][0]["url"] # temporäre Adresse, schnell herunterladen und speichern
img = requests.get(image_url, timeout=60)
with open("output_image", "wb") as f:
f.write(img.content)
print("saved")
Parametertabelle
fibo-gen-1.5/text-to-image
| Feld | Pflicht | Werte | Beschreibung |
|---|---|---|---|
prompt |
Ja | 1–10000 Zeichen | Bildbeschreibung; Text, der erscheinen soll, in Anführungszeichen setzen (the label reads '…') |
aspect_ratio |
Nein | 1:1 / 2:3 / 3:2 / 3:4 / 4:3 / 4:5 / 5:4 / 9:16 / 16:9, Standard 1:1 | 9 Seitenverhältnisse zum gleichen Preis |
seed |
Nein | Ganzzahl, Standard 5555 | Auch ohne Angabe fest: gleicher Prompt, gleiches Ergebnis; für Variationen seed ändern |
fibo-edit-1.5/image-to-image
| Feld | Pflicht | Werte | Beschreibung |
|---|---|---|---|
image_urls |
Ja | 1–4 Bilder | Reihenfolge ist relevant, instruction referenziert in Reihenfolge (image 1, image 2) |
instruction |
Ja | ≥1 Zeichen | Was geändert werden soll; nicht Erwähntes bleibt unverändert |
aspect_ratio |
Nein | Wie oben, 9 Varianten | Wirkt nur bei 2 oder mehr Bildern; bei einem einzelnen Bild bleibt das Originalverhältnis erhalten |
mask_url |
Nein | Bildadresse | Nur bei Einzelbildbearbeitung; Weiß = ändern, Schwarz = beibehalten; Größe muss dem Originalbild entsprechen |
seed |
Nein | Ganzzahl, Standard 5555 | Gleiche Eingabe reproduzieren |
Felder außerhalb der Tabelle im Request-Body führen direkt zu 400.
Fehler, die dir begegnen werden (Originalwortlaut der Schnittstelle)
| Was du getan hast | Rückgabe |
|---|---|
Gen ohne prompt |
400 invalid input: prompt: missing required field "prompt" |
Gen mit seed als String |
400 invalid input: seed: got string, want integer |
aspect_ratio falsch geschrieben |
400 invalid input: aspect_ratio: value must be one of '1:1', '2:3', '3:2', '3:4', '4:3', '4:5', '5:4', '9:16', '16:9' |
Edit ohne instruction |
400 invalid input: instruction: missing required field "instruction" |
| Edit mit 5 Bildern | 400 invalid input: image_urls: maxItems: got 5, want 4 |
| Maske mit 2 Bildern | 400 (image_urls darf nur 1 Bild enthalten, wenn mask_url vorhanden ist) |
| Guthaben nicht ausreichend | 402 insufficient account balance; top up and retry |
Derselbe Idempotency-Key bei erneuter Einreichung liefert 409 oder 422, neuen Key verwenden und erneut versuchen.
Vor dem Go-live beachten
- Callback: auf oberster Ebene des Request-Bodys
"callback": {"url": "https://..."}übergeben, der Endzustand wird automatisch benachrichtigt, das spart Polling. - Rechtzeitig speichern:
output[0].urlist eine temporäre Adresse, sofort nach Erhalt herunterladen. - Bildnummer in der Anweisung nennen: Bei Multibild-Komposition image 1 / image 2 referenzieren, die Reihenfolge entspricht der Reihenfolge von
image_urls. - Schwarz-Weiß-Semantik der Maske: Bei FIBO Weiß = ändern, Schwarz = beibehalten; beim Migrieren von Skripten aus anderen Bearbeitungsmodellen zuerst die Maske invertieren.
Häufige Fragen
Wie heißt das Feld für die Bearbeitungsanweisung?
Es heißt instruction, nicht prompt; ein falscher Feldname führt zu einer Fehlermeldung über ein fehlendes Feld.
Wie viele Eingabebilder kann man maximal übergeben?
Maximal 4, das fünfte führt direkt zu 400.
Wozu dient seed?
Standard 5555 und fest – dieselbe Eingabe wird reproduziert; für andere Ergebnisse explizit seed ändern.
Sind Preis und Aufrufweise der beiden Schnittstellen gleich?
Ja. Es ändern sich nur model und die input-Felder; Generierung und Bearbeitung kosten beide $0.0575 pro Bild.
Nächster Schritt: Nimm den Parfüm-Prompt und erzeuge auf der Modellseite ein Bild, ändere es dann mit einer instruction in die gewünschte Version; Szenario-Vorlagen findest du in der Prompt-Sammlung.
Ähnliche Artikel
Alle Artikel ansehen →-
Tutorial
So rufen Sie hailuo-2.3-fast/image-to-video über die HiAPI API auf: curl und Python in der Praxis
Die erste lauffähige Anfrage für die schnelle, kostengünstige Bild-zu-Video-Stufe – von der Modell-ID bis zum heruntergeladenen MP4
-
Tutorial
So rufen Sie hailuo-2.3/text-to-video über die HiAPI API auf: curl, Python und lauffähige Anfragebeispiele
-
Tutorial
Kandinsky 6.0 Pro Text-zu-Video auf HiAPI: curl- und Python-Tutorial
Eine anfrageorientierte praktische Demonstration: Aufbau des Aufrufs vom Prompt zum Videoclip, Absenden der Anfrage, Abfragen des Fertigstellungsstatus und Herunterladen des Ergebnisses