Motimate: Ci sono dei limiti all'utilizzo dell'API pubblica?
Limite della tariffa
L'API opera con un limite di velocità di 1200 richieste ogni 10 minuti. Ciò significa che puoi inviare al massimo 2 richieste al secondo in un periodo di 10 minuti. Nota che questo limite è condiviso da tutti i nostri endpoint, invece di essere conteggiato per i singoli endpoint.
Se superi questo limite, riceverai una risposta 429 Too Many Requests.
Lo stato attuale del limite di velocità è disponibile nell'intestazione RateLimit.
Esempio:
RateLimit: limit=1200, remaining=956, reset=543
Vedi bozza IETF per maggiori dettagli.
Se dovessi avere problemi a superare questo limite, ti invitiamo a introdurre un periodo di latenza tra una richiesta e l'altra per scendere di nuovo al di sotto del limite.
Filtri / Argomenti del percorso
C'è un limite di 50 argomenti (cioè ID utente) per chiamata quando si filtra utilizzando gli argomenti del percorso.
Paginazione
I risultati massimi per pagina sono 50. Usa i parametri di query per pagina e per_pagina per ottenere risultati aggiuntivi.
Esempio:
/users?page=3&per_page=30
Come recuperare tutti i dati da un'API con limiti di paginazione?
Nota: questo esempio utilizza GET /groups, ma puoi ripetere i passaggi con altri endpoint.
-
-
Recupera tutti i dati:
per i in {1..NUMBER_OF_PAGES}; fare curl -X GET "https://motimateapp.com/public_api/groups?page=$i" done - Memorizza i dati sul tuo computer.
-
Recupera solo le risorse che sono state aggiornate o create dopo l'ultimo fetch (ad esempio un giorno fa) e le unisce ai dati che già possiedi:
curl -X GET "https://motimateapp.com/public_api/groups?filter[created_at_gt]=<ONE_DAY_AGO>" curl -X GET "https://motimateapp.com/public_api/groups?filter[updated_at_gt]=<ONE_DAY_AGO>" - Ogni volta che esegui una richiesta DELETE, rimuovi la risorsa dalla tua copia.
- Periodicamente (ad esempio settimanalmente) esegui una risincronizzazione recuperando tutti i dati e aggiornando la tua copia.
-
0 commenti
Accedi per aggiungere un commento.