So verwenden Sie die MOSS Image-API
Eine Schritt-für-Schritt-Anleitung zur MOSS Image-API mit Node.js, Python und cURL: einen text zu bild-Auftrag absenden, den Status abfragen oder einen Webhook empfangen und anschließend die image herunterladen. Das folgende Beispiel kostet $0,039.
- Endpunkte
- 1
- Text zu Bild
- Beispielanfrage
- $0,039
- Text zu Bild
- Sprachen
- 3
- Node.js · Python · cURL
- Fehlgeschlagene Aufträge
- $0
- automatisch erstattet
API-Schlüssel abrufen
Erstellen Sie ein Konto, laden Sie Guthaben auf und erstellen Sie im Dashboard unter „API-Schlüssel“ einen Schlüssel. Speichern Sie ihn als CHEAPERGEN_API_KEY auf Ihrem Server. Jede Anfrage sendet ihn als Bearer-Token.
Wählen Sie einen MOSS Image-Endpunkt
Jede Aufgabe hat einen eigenen Endpunkt. Alle erwarten einen JSON-Body und geben eine Generierung zurück, deren Status Sie abfragen können.
| Aufgabe | Endpunkt | Erforderlich | Ab |
|---|---|---|---|
| Text zu Bild | openmoss/moss-image/text-to-image | prompt | $0,0384 pro Bild |
Einen text zu bild-Auftrag absenden
Dieses Programm übermittelt den Auftrag, fragt alle 3 Sekunden bis zum Abschluss den Status ab und gibt die image-URL aus. Ersetzen Sie Prompt und Einstellungen durch Ihre eigenen.
const API = "https://cheapergen.com/api/v1";
const headers = {
Authorization: `Bearer ${process.env.CHEAPERGEN_API_KEY}`,
"Content-Type": "application/json",
};
// 1. Submit the job
let job = await fetch(`${API}/run/openmoss/moss-image/text-to-image`, {
method: "POST",
headers,
body: JSON.stringify({
"prompt": "Handbemaltes Holzschild vor einem Teeladen mit der Aufschrift „山间茶舍 MOUNTAIN TEA HOUSE — OPEN DAILY 9–6“, Morgennebel, warmes Licht",
"aspect_ratio": "1:1",
"resolution": "1K"
}),
}).then((r) => r.json());
// 2. Poll until it finishes (or pass webhook_url and skip polling)
while (job.status === "queued" || job.status === "running") {
await new Promise((r) => setTimeout(r, 3000));
job = await fetch(`${API}/generations/${job.id}`, { headers }).then((r) => r.json());
}
console.log(job.status === "succeeded" ? job.output.images[0].url : job.error);Wichtige Parameter festlegen
Die Einstellungen für openmoss/moss-image/text-to-image und ihre Auswirkungen auf den Preis.
| Parameter | Typ · Standardwert | Beschreibung | Preisauswirkung |
|---|---|---|---|
| aspect_ratio | string (enum) · 1:1 | Ausgabeformat des Bildes. In 1K: 1:1 = 1024 × 1024, 4:5 = 912 × 1136, 5:4 = 1136 × 912, 3:4 = 880 × 1168, 4:3 = 1168 × 880, 2:3 = 832 × 1248, 3:2 = 1248 × 832, 9:16 = 768 × 1360, 16:9 = 1360 × 768, 1:2 = 720 × 1440, 2:1 = 1440 × 720, 9:21 = 656 × 1552, 21:9 = 1552 × 656, 1:3 = 576 × 1760, 3:1 = 1760 × 576. 1:1 · 4:5 · 5:4 · 3:4 · 4:3 · 2:3 · 3:2 · 9:16 · 16:9 · 1:2 · 2:1 · 9:21 · 21:9 · 1:3 · 3:1 | 1:1: $0,0384 pro Bild |
| resolution | string (enum) · 1K | Ausgabegröße, bei jedem Seitenverhältnis zum selben Preis: 1K = 1 MP (1024 × 1024), 1,5K ≈ 2,25 MP (1536 × 1536), 2K = 4 MP (2048 × 2048) bei 1:1; 1 MP = 1024² px. Bei anderen Seitenverhältnissen bleibt die Pixelzahl erhalten: Jede Seite entspricht der 1:1-Seite × √Seitenverhältnis, abgerundet auf ein Vielfaches von 16 (z. B. 2K 16:9 = 2720 × 1536). 1K · 1.5K · 2K | 1K: $0,0384 pro Bild 1.5K: $0,0826 pro Bild 2K: $0,1534 pro Bild |
| seed | integer | Verwenden Sie denselben Seed und dieselben Einstellungen, um ein Ergebnis zu reproduzieren. Leer lassen für Zufallswerte. | Keine |
| enable_safety_checker | boolean · true | Wenn true festgelegt ist, wird die Sicherheitsprüfung aktiviert. Inhalte, die unsere Richtlinie zur zulässigen Nutzung verbietet, bleiben in jedem Fall blockiert. | Keine |
Ergebnis abrufen
Ein Auftrag wechselt von queued zu running und anschließend zu succeeded, failed oder canceled. Fragen Sie GET /api/v1/generations/{id} ab oder übergeben Sie webhook_url; dann senden wir Ihnen das Ergebnis per POST. Laden Sie die Ausgabe herunter und speichern Sie sie selbst.
{
"id": "gen_8c2QmX1nq0k4",
"object": "generation",
"model": "openmoss/moss-image",
"endpoint": "openmoss/moss-image/text-to-image",
"mode": "text-to-image",
"status": "succeeded",
"input": {
"prompt": "Handbemaltes Holzschild vor einem Teeladen mit der Aufschrift „山间茶舍 MOUNTAIN TEA HOUSE — OPEN DAILY 9–6“, Morgennebel, warmes Licht",
"aspect_ratio": "1:1",
"resolution": "1K"
},
"output": {
"images": [
{
"url": "https://cdn.cheapergen.com/outputs/gen_8c2Q-0.png",
"content_type": "image/png",
"width": 2048,
"height": 2048
}
]
},
"error": null,
"cost": {
"amount_usd": 0.2255,
"currency": "usd",
"estimated": false,
"official_usd": 0.264,
"list_price_source": "reference",
"list_price_label": "fal API",
"saved_usd": 0.0385
},
"source": "api",
"created_at": "2026-10-15T09:21:04Z",
"started_at": "2026-10-15T09:21:06Z",
"completed_at": "2026-10-15T09:22:31Z"
}Preis vor der Ausführung abfragen
Der Angebotsendpunkt ist kostenlos und erfordert keinen Schlüssel. Er gibt den Preis, Preis von fal API und Ihren Rabatt genau für die übermittelten Eingaben zurück.
curl -X POST https://cheapergen.com/api/v1/quote/openmoss/moss-image/text-to-image \
-H "Content-Type: application/json" \
-d '{"prompt":"Handbemaltes Holzschild vor einem Teeladen mit der Aufschrift „山间茶舍 MOUNTAIN TEA HOUSE — OPEN DAILY 9–6“, Morgennebel, warmes Licht","aspect_ratio":"1:1","resolution":"1K"}'| Status | Code | Bedeutung |
|---|---|---|
| 400 | invalid_request | Ein Parameter fehlt oder liegt außerhalb des zulässigen Bereichs – die Meldung nennt ihn. |
| 401 | unauthorized | API-Schlüssel fehlt, ist fehlerhaft formatiert oder wurde widerrufen. |
| 402 | insufficient_balance | Ihr Guthaben reicht nicht für den angebotenen Preis. Laden Sie es auf oder aktivieren Sie die automatische Aufladung. |
| 429 | rate_limited | Zu viele Anfragen oder gleichzeitig laufende Generierungen. Warten Sie kurz und versuchen Sie es erneut. |
| 502 | upstream_error | Die Verarbeitung durch das Modell ist fehlgeschlagen. Der reservierte Betrag wird erstattet; Sie können es erneut versuchen. |
| 503 | model_unavailable | Derzeit ist kein geeigneter Verarbeitungsweg verfügbar. Versuchen Sie es später erneut oder wählen Sie ein anderes Modell. |
FAQ
