L'API di Ineveo
Ogni modello del catalogo, dal tuo codice. Un solo saldo, gli stessi prezzi dello studio.
1 · Autenticazione
Crea una chiave in Impostazioni > Chiavi API. Inviala a ogni richiesta come token Bearer e tienila sul tuo server, mai in un browser o in un'app.
curl https://ineveo.com/api/v1/api/catalog/me \
-H 'Authorization: Bearer YOUR_API_KEY'2 · Scegli un modello
Scegli un modello per vedere una richiesta pronta costruita sui suoi campi. I campi obbligatori sono compilati; ogni impostazione facoltativa usa il valore predefinito del modello.
ineveo/fast-image/text-to-image| Nome | Tipo | Obbligatorio | Predefinito |
|---|---|---|---|
| prompt | text | sì | - |
| aspect_ratio | 1:1 | 2:1 | 1:2 | 3:1 | 1:3 | 21:9 | ... | no | 1:1 |
3 · Avvia un render
Una sola chiamata calcola il prezzo dei tuoi input esatti e addebita il saldo. La risposta arriva subito con stato queued; il render prosegue in background. Invia un header Idempotency-Key così una richiesta ripetuta non addebita mai due volte.
curl -X POST https://ineveo.com/api/v1/api/catalog/generations \
-H 'Authorization: Bearer YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-H "Idempotency-Key: $(uuidgen)" \
-d '{
"modelId": "ineveo/fast-image/text-to-image",
"inputs": {
"prompt": "a lighthouse on a cliff at dusk, soft light"
}
}'Controlla prima il prezzo (facoltativo)
Gli stessi input, con il prezzo calcolato senza avviare nulla. La risposta è in centesimi.
curl -X POST https://ineveo.com/api/v1/api/catalog/quote \
-H 'Authorization: Bearer YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{"modelId":"ineveo/fast-image/text-to-image","inputs":{"prompt":"a lighthouse on a cliff at dusk, soft light"}}'4 · Controlla lo stato e scarica
Richiedi il render ogni pochi secondi finché lo stato è succeeded, failed o refunded. In caso di successo, scarica il file da contentUrl con la stessa chiave. Un modello di testo restituisce invece la risposta in textOutput.
curl https://ineveo.com/api/v1/api/catalog/generations/GENERATION_ID \
-H 'Authorization: Bearer YOUR_API_KEY'curl https://ineveo.com/api/v1/api/catalog/generations/GENERATION_ID/content \
-H 'Authorization: Bearer YOUR_API_KEY' \
-o result.pngEndpoint
URL di base: https://ineveo.com/api/v1/api/catalog
| GET | /me | La tua chiave e il saldo |
| GET | /models | Tutti i modelli |
| GET | /models/detail?id=MODEL_ID | Un modello e i suoi campi |
| POST | /quote | Prezzo per input esatti |
| POST | /generations | Avvia un render |
| GET | /generations | I tuoi render recenti |
| GET | /generations/ID | Stato di un render |
| GET | /generations/ID/content | Il file del risultato |
| DELETE | /generations/ID | Elimina un render |
Prezzi e saldo
I render via API usano lo stesso saldo dello studio e costano uguale. Ogni importo nell'API è in centesimi di euro: costCents è quanto ha addebitato un render, balanceCents quanto resta.
Errori e limiti
Gli errori tornano come JSON con un codice e un messaggio. 401: chiave mancante, errata o revocata. 400: un campo non è valido (i dettagli lo indicano). 402: saldo insufficiente. 429: troppe richieste, rallenta. Un render fallito viene rimborsato automaticamente. I limiti esatti saranno pubblicati al lancio delle chiavi. 403 con una pagina HTML: la richiesta è stata fermata prima di raggiungere l'API, di solito per via del suo User-Agent. Quello predefinito di Python-urllib è bloccato, quindi invia il tuo, per esempio User-Agent: my-app/1.0.