> This page is for Piattaforma, version Versione precedente.
> For other versions, use one of these documentation indexes:
> - V4 (default): https://next.developer.frame.io/platform/v4/llms.txt
> - V4 sperimentale: https://next.developer.frame.io/platform/v4-experimental/llms.txt
> - Versione precedente: https://next.developer.frame.io/platform/v2/llms.txt

> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://next.developer.frame.io/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://next.developer.frame.io/_mcp/server.

# Limiti di frequenza

# Panoramica

Che un token venga distribuito tramite Developer Portal, concessione OAuth o il backend degli account che eroga le app di Frame.io, **tutte le chiamate API a Frame.io hanno dei limiti di frequenza.** I limiti di frequenza si applicano a tutte le richieste API di un singolo utente (indipendentemente dal token o dal metodo di autenticazione utilizzato), vengono esauriti e ricaricati progressivamente e sono riportati nelle intestazioni di ogni richiesta effettuata all'API Frame.io. Ogni endpoint è configurato con limiti specifici, che vanno da un minimo di `10` richieste al minuto fino a `100` richieste al secondo. Le richieste che hanno superato il limite di velocità per un endpoint specifico riceveranno un errore HTTP `429` in risposta.

## Esaurimento e ricarica

L'API Frame.io utilizza una strategia di tipo [leaky bucket](https://wikipedia.org/wiki/Leaky_bucket) per limitare progressivamente la frequenza. I limiti si aggiornano gradualmente durante l'intervallo di tempo assegnato. In altre parole, non esiste un concetto di cutoff netto dopo il quale i limiti si aggiornano per una risorsa specifica (ovvero strategie di applicazione &quot;fisse&quot; e a &quot;finestra scorrevole&quot;). I limiti rimanenti si aggiornano costantemente a un ritmo relativo al limite e all'intervallo di tempo di una risorsa.

### Backoff esponenziale




La strategia che consigliamo per gestire i limiti di frequenza è solitamente chiamata &quot;backoff esponenziale&quot;.





In breve:




* Quando ricevi un errore `429`, attiva un periodo di pausa (di solito un secondo)
* Se ricevi un altro errore `429`, aumenta esponenzialmente il periodo di attesa fino alla ripresa del funzionamento normale




## Intestazioni




Le risposte alle richieste API includeranno sempre le seguenti tre intestazioni che dovrebbero essere utilizzate per limitare le richieste in uscita:




| Intestazione | Valore |
| ---------- | ---------- |
| `x-ratelimit-limit` | Il limite di frequenza per questo percorso di risorsa, misurato in richieste. |
| `x-ratelimit-remaining` | Il numero di richieste rimanenti nell'intervallo di tempo corrente. |
| `x-ratelimit-window` | La finestra temporale per i limiti del percorso di questa risorsa, misurata in millisecondi (ms). |




### Esempio

L'esempio seguente proviene dalla risposta a `GET v2/assets/:id/children` per recuperare le risorse figlio di una root del progetto, una cartella o uno stack di versioni). Il limite per quel percorso è di 40 richieste per 60.000 ms (un minuto) e rimangono 39 richieste dopo che ne è stata effettuata una.

```
x-ratelimit-limit → 40
x-ratelimit-remaining → 39
x-ratelimit-window → 60000
```





## Dettagli

I limiti di frequenza variano notevolmente tra i percorsi delle risorse nell'API Frame.io. Di seguito sono riportati alcuni dettagli selezionati, espressi per leggibilità come risorsa e azione (ad esempio &quot;Risorse -- Aggiorna&quot; invece di `PUT /assets/:id`).

Come regola generale, i percorsi delle risorse che creano nuovi dati sono limitati a 100 chiamate al minuto o meno e i percorsi delle risorse che recuperano elenchi di risorse sono limitati a 200 chiamate al minuto.




| Risorsa | Azione | Limite (richieste) | Finestra limite (ms) |
| ---------- | ---------- | ---------- | ---------- |
| **Risorse** | `create` | `5` | 1.000 |
| **Risorse** | `update` | `10` |
| **Risorse** | `read` | `5` | 1.000 |
| **Commenti<br />Presentazioni<br />Progetti<br />Link di revisione<br />Team<br />Membri del team** | `create` | `100` | 60.000 |
| **Cerca** | `read` | `200` | 60.000 |