CheaperGen
Black Forest LabsGuida

Come usare l’API di FLUX 3 Image Klein

Una guida passo passo all’API di FLUX 3 Image Klein con Node.js, Python e cURL: invia un job da testo a immagine, controllane lo stato o ricevi un webhook e scarica il image. L’esempio qui sotto costa $0,002.

Endpoint
2
Da testo a immagine · Modifica immagine
Richiesta di esempio
$0,002
Da testo a immagine
Linguaggi
3
Node.js · Python · cURL
Generazioni non riuscite
$0
rimborsate automaticamente
1

Ottieni una chiave API

Crea un account, aggiungi crediti e crea una chiave nella Dashboard → Chiavi API. Salvala come CHEAPERGEN_API_KEY sul tuo server. Ogni richiesta la invia come token Bearer.

Come ottenere una chiave API FLUX 3 Image Klein
2

Scegli un endpoint FLUX 3 Image Klein

Ogni attività ha il proprio endpoint. Tutti accettano un corpo JSON e restituiscono una generazione di cui puoi controllare lo stato.

Endpoint API di FLUX 3 Image Klein, input obbligatori e prezzi
AttivitàEndpointObbligatorioDa
Da testo a immaginebfl/flux-3-image-klein/text-to-imageprompt$0,0011 per immagine
Modifica immaginebfl/flux-3-image-klein/editprompt, image_urls$0,0011 per immagine
3

Invia un job da testo a immagine

Questo programma invia il job, controlla ogni 3 secondi finché non termina e stampa l’URL image. Sostituisci il prompt e le impostazioni con i tuoi.

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/bfl/flux-3-image-klein/text-to-image`, {
  method: "POST",
  headers,
  body: JSON.stringify({
    "prompt": "Natura morta editoriale: vaso in terracotta lavorato a mano con ranuncoli arancioni essiccati su un piedistallo di travertino, luce bassa dorata da sinistra, lunghe ombre morbide su una parete in intonaco caldo, fotografia medio formato su pellicola",
    "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);
4

Imposta i parametri rilevanti

Le impostazioni di bfl/flux-3-image-klein/text-to-image e il loro effetto sul prezzo.

Parametri FLUX 3 Image Klein Da testo a immagine e relativo effetto sul prezzo
ParametroTipo · predefinitoDescrizioneEffetto sul prezzo
aspect_ratiostring (enum) · 1:1Formato dell'immagine di output.
1:1 · 4:5 · 3:4 · 2:3 · 9:16 · 1:2 · 9:21 · 5:4 · 4:3 · 3:2 · 16:9 · 2:1 · 21:9 · 7:5 · 5:7
1:1: $0,0011 per immagine
resolutionstring (enum) · 1KFasce di dimensione: 768 ≈ 0.6 MP, 1K ≈ 1 MP, 1.5K ≈ 2.4 MP, 2K ≈ 4 MP, 4K ≈ 16 MP. Fino a 2K, i formati larghi e alti mantengono il lato lungo entro 2048 px; a 4K occorrono 1:1, 4:3, 3:4, 3:2, 2:3, 16:9, 9:16, 21:9, 9:21.
768 · 1K · 1.5K · 2K · 4K
768: $0,0011 per immagine
1K: $0,0019 per immagine
1.5K: $0,0043 per immagine
2K: $0,0074 per immagine
4K: $0,0342 per immagine
seedintegerUsa lo stesso seed e le stesse impostazioni per riprodurre un risultato. Lascia vuoto per un valore casuale.Nessuno
enable_safety_checkerboolean · trueSe impostato su true, il controllo di sicurezza è attivo. I contenuti vietati dalla nostra Politica di utilizzo accettabile restano bloccati in ogni caso.Nessuno

Gli altri endpoint FLUX 3 Image Klein hanno la stessa struttura, ma input diversi:

POST /api/v1/run/bfl/flux-3-image-klein/edit

{
  "prompt": "Metti la lampada dell'immagine 2 sulla scrivania dell'immagine 1; mantieni invariati la stanza, la luce e l'angolo di ripresa",
  "image_urls": [
    "https://cdn.cheapergen.com/samples/portrait.jpg"
  ],
  "aspect_ratio": "auto",
  "resolution": "1K"
}
5

Ottieni il risultato

Un job passa da queued a running, poi a succeeded, failed o canceled. Interroga GET /api/v1/generations/{id} oppure imposta webhook_url: invieremo il risultato con POST. Scarica l’output e conservalo tu.

200 — completata
{
  "id": "gen_8c2QmX1nq0k4",
  "object": "generation",
  "model": "bfl/flux-3-image-klein",
  "endpoint": "bfl/flux-3-image-klein/text-to-image",
  "mode": "text-to-image",
  "status": "succeeded",
  "input": {
    "prompt": "Natura morta editoriale: vaso in terracotta lavorato a mano con ranuncoli arancioni essiccati su un piedistallo di travertino, luce bassa dorata da sinistra, lunghe ombre morbide su una parete in intonaco caldo, fotografia medio formato su pellicola",
    "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": "official",
    "list_price_label": "Official",
    "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"
}
Verifica le firme dei webhook
6

Calcola il prezzo prima dell'avvio

L'endpoint dei preventivi è gratuito e non richiede una chiave. Restituisce il prezzo, il prezzo ufficiale e lo sconto applicato per l'input esatto che invii.

curl -X POST https://cheapergen.com/api/v1/quote/bfl/flux-3-image-klein/text-to-image \
  -H "Content-Type: application/json" \
  -d '{"prompt":"Natura morta editoriale: vaso in terracotta lavorato a mano con ranuncoli arancioni essiccati su un piedistallo di travertino, luce bassa dorata da sinistra, lunghe ombre morbide su una parete in intonaco caldo, fotografia medio formato su pellicola","aspect_ratio":"1:1","resolution":"1K"}'
Errori API e come risolverli
StatoCodiceDescrizione
400invalid_requestManca un parametro o il suo valore è fuori intervallo: il messaggio indica quale.
401unauthorizedChiave API mancante, non valida o revocata.
402insufficient_balanceCrediti insufficienti per il prezzo indicato; aggiungine altri o attiva la ricarica automatica.
429rate_limitedTroppe richieste o generazioni in corso: attendi e riprova con backoff.
502upstream_errorIl fornitore del modello ha avuto un errore; l'importo bloccato viene rimborsato e puoi riprovare.
503model_unavailableAl momento non ci sono percorsi di elaborazione disponibili: riprova più tardi o scegli un altro modello.
Documentazione API completa di FLUX 3 Image Klein

FAQ

Domande sull’API di FLUX 3 Image Klein

No. L'API usa HTTPS semplice e JSON, quindi gli esempi con Node.js (fetch) e Python (requests) in questa pagina sono programmi completi. Funziona qualsiasi linguaggio in grado di inviare una richiesta HTTP.

Sì. Aggiungi "webhook_url" al corpo della richiesta e invieremo la generazione completata con una richiesta POST, firmata nell'intestazione CheaperGen-Signature (HMAC-SHA256 del timestamp e del corpo grezzo). Puoi anche eseguire il polling con GET /api/v1/generations/{id}.

Passa URL pubblici in "image_urls". Se i file non hanno un URL pubblico, caricali prima con POST /api/v1/uploads: la risposta contiene un URL da usare nella richiesta.

Da testo a immagine parte da $0,0011 per immagine; l'esempio di richiesta in questa pagina costa $0,002, 79% in meno rispetto a il prezzo ufficiale. Le generazioni non riuscite vengono rimborsate automaticamente.