Motimate: Zijn er grenzen aan het gebruik van de Public API?
Tarieflimiet
De API werkt met een snelheidslimiet van 1200 aanvragen per 10 minuten. Dit betekent dat je maximaal 2 aanvragen per seconde kunt versturen binnen een periode van 10 minuten. Merk op dat deze limiet gedeeld wordt door al onze eindpunten, in plaats van geteld te worden voor individuele eindpunten.
Als je deze limiet overschrijdt, ontvang je een 429 Too Many Requests antwoord.
De huidige status van de snelheidslimiet is beschikbaar in de kop RateLimit.
Voorbeeld:
RateLimit: limit=1200, remaining=956, reset=543
Zie IETF ontwerp voor meer details.
Als je een probleem hebt met het bereiken van deze limiet, introduceer dan een latentieperiode tussen verzoeken om weer onder de limiet te komen.
Filters / padargumenten
Er is een limiet van 50 argumenten (d.w.z. gebruikers-ID's) per oproep bij het filteren met behulp van de padargumenten.
Paginering
Max. resultaten per pagina is 50. Gebruik pagina en per_pagina query parameters om extra resultaten op te halen.
Voorbeeld:
/users?page=3&per_page=30
Hoe haal ik alle gegevens op uit een API met paginatielimieten?
Opmerking: Dit voorbeeld gebruikt GET /groups, maar je kunt de stappen herhalen met andere eindpunten.
-
-
Alle gegevens ophalen:
voor i in {1..NUMBER_OF_PAGES}; doe curl -X GET "https://motimateapp.com/public_api/groups?page=$i" done - Sla de gegevens op je machine op.
-
Haal alleen bronnen op die zijn bijgewerkt of gemaakt na de laatste keer ophalen (bijvoorbeeld een dag geleden) en voeg deze samen met de gegevens die je al hebt:
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>" - Wanneer je een DELETE verzoek uitvoert, verwijder je de bron uit je kopie.
- Voer regelmatig (bijvoorbeeld wekelijks) een resync uit door alle gegevens opnieuw op te halen en je kopie bij te werken.
-
0 opmerkingen
U moet u aanmelden om een opmerking te plaatsen.