Getting Started
Rate Limits
Begrijp API-aanvraaglimieten en hoe ermee om te gaan
Rate Limits
De Blitz Rocket API hanteert rate limits om eerlijk gebruik te waarborgen en de stabiliteit van de dienst te beschermen. Rate limits worden per API-sleutel toegepast en variëren per endpoint.
Standaardlimieten
| Endpointcategorie | Limiet | Venster |
|---|---|---|
| Algemene endpoints | 100 aanvragen | 1 minuut |
| Aanmaak van wedstrijdinzending | 5 aanvragen | 15 minuten (per IP + wedstrijd) |
| E-mail/telefoon verificatie | 10 aanvragen | 15 minuten (per IP + e-mail) |
| Opzoeken van inzending | 20 aanvragen | 5 minuten (per IP) |
Rate Limit Headers
Wanneer je de rate limits nadert of overschrijdt, retourneert de API een statuscode 429 Too Many Requests:
json
{
"success": false,
"error": "Rate limit exceeded. Please try again later."
}
Best Practices
- Cache antwoorden waar mogelijk om het aantal API-aanroepen te verminderen
- Implementeer exponentiële backoff wanneer je een 429-respons ontvangt
- Voer batchbewerkingen uit in plaats van veel individuele aanvragen te doen
- Gebruik webhooks voor realtime updates in plaats van endpoints te polleren
Voorbeeld: Exponentiële Backoff
javascript
async function fetchWithRetry(url, options, maxRetries = 3) {
for (let attempt = 0; attempt < maxRetries; attempt++) {
const response = await fetch(url, options);
if (response.status === 429) {
const delay = Math.pow(2, attempt) * 1000;
await new Promise((resolve) => setTimeout(resolve, delay));
continue;
}
return response;
}
throw new Error("Max retries exceeded");
}