Verzoekslimieten
| Eindpunttype | Limiet | Bereik |
|---|---|---|
| Authenticatie | 10 verz./min | per IP |
| Runtime-configuratie | 1.000 verz./min | per insluittoken |
| Toestemming indienen | 300 verz./min | per insluittoken |
| Toestemming intrekken | 60 verz./min | per insluittoken |
| Scan aanmaken | 10 verz./min | per tenant |
| Media uploaden | 20 verz./min | per tenant |
| Beheer (algemeen) | 120 verz./min | per API-sleutel |
Headers voor verzoekslimieten
Elk antwoord bevat:
X-RateLimit-Limit: 120
X-RateLimit-Remaining: 87
X-RateLimit-Reset: 1741521600
Wanneer de limiet is bereikt, ontvangt u een 429-antwoord:
{
"error": {
"code": "rate_limited",
"message": "Te veel verzoeken. Probeer het over 30 seconden opnieuw."
}
}
Omgaan met verzoekslimieten
Implementeer exponentieel uitstel wanneer u een 429 ontvangt:
async function fetchWithRetry(url, options, maxRetries = 3) {
for (let attempt = 0; attempt < maxRetries; attempt++) {
const res = await fetch(url, options);
if (res.status !== 429) return res;
const retryAfter = parseInt(res.headers.get('X-RateLimit-Reset')) - Date.now() / 1000;
await new Promise(r => setTimeout(r, (retryAfter + 1) * 1000));
}
throw new Error('Verzoekslimiet-herhaalpogingen uitgeput');
}