Skip to main content
La Samsa API protegge la capacità condivisa con due limiti indipendenti: un rate di richieste per chiave e un tetto di job concorrenti per organizzazione. Entrambi restituiscono 429 con header che ti dicono quando riprovare.
Questi limiti sono valori predefiniti e sono soggetti a modifica. Se la tua integrazione necessita di un tetto più alto, contatta support@samsa.ai.

Rate di richieste per chiave

Ogni API key può fare fino a 60 richieste al minuto, misurate come una finestra scorrevole di 60 secondi. Superarlo restituisce 429 con code: "rate_limited". Le risposte andate a buon fine e i 429 di rate limit portano lo stato attuale della finestra (l’header Retry-After viene aggiunto solo sui 429):
Leggi X-RateLimit-Remaining sulle risposte andate a buon fine per rallentare prima di raggiungere il limite.

Tetto di concorrenza per organizzazione

Indipendentemente dal rate di richieste, un’organizzazione può avere al massimo 5 job concorrenti in corso — job di generazione, modifica, video e creazione di modelli ancora pending o processing, contati su ogni chiave dell’organizzazione. Inviare un altro job mentre si è al tetto restituisce 429 con code: "too_many_active_jobs" e un header Retry-After:
429 Too Many Requests
Questo tetto protegge la capacità di elaborazione, quindi è legato all’intera organizzazione, non a una singola chiave. Aspetta che i job in corso raggiungano uno stato terminale — interroga il loro endpoint GET o iscriviti a un webhook — prima di inviarne altri.

Un esempio di 429

Un 429 dalla finestra per chiave include sia gli header Retry-After che X-RateLimit-*:

Gestire i 429

1

Rispetta Retry-After

Quando un 429 include un header Retry-After, aspetta almeno quel numero di secondi prima di riprovare. È il segnale autoritativo.
2

Fai back-off esponenziale

Per 429 ripetuti, aumenta il ritardo tra i tentativi (per esempio 1s, 2s, 4s, 8s…), limitato a un massimo sensato, con un po’ di jitter casuale per evitare i retry a valanga.
3

Resta sotto il limite in modo proattivo

Osserva X-RateLimit-Remaining e throttla lato client prima di raggiungere 0. Per il tetto di concorrenza, limita quanti job mantieni in corso alla volta.
Qui sotto c’è un loop di retry minimale che rispetta Retry-After e ripiega su un backoff esponenziale.

Protezione esterna per IP

Oltre a questi limiti per chiave e per organizzazione, Samsa applica un livello di protezione per IP grossolano al confine di rete (condiviso con il resto della piattaforma). È un backstop contro il traffico abusivo, non un limite che regoli per integrazione — i client server-side ben educati che rispettano i limiti qui sopra non lo incontreranno. Se instradi molte organizzazioni attraverso un singolo IP di uscita e vedi un throttling inaspettato, contatta support@samsa.ai.