Zum Hauptinhalt springen

Rate-Limits

Endpunkt-TypLimitBereich
Authentifizierung10 Anf./Min.pro IP
Runtime-Konfiguration1.000 Anf./Min.pro Embed-Token
Einwilligung übermitteln300 Anf./Min.pro Embed-Token
Einwilligung widerrufen60 Anf./Min.pro Embed-Token
Scan-Erstellung10 Anf./Min.pro Tenant
Medien-Upload20 Anf./Min.pro Tenant
Verwaltung (allgemein)120 Anf./Min.pro API-Schlüssel

Rate-Limit-Header

Jede Antwort enthält:

X-RateLimit-Limit: 120
X-RateLimit-Remaining: 87
X-RateLimit-Reset: 1741521600

Bei Rate-Limiting erhalten Sie eine 429-Antwort:

{
"error": {
"code": "rate_limited",
"message": "Zu viele Anfragen. Versuchen Sie es in 30 Sekunden erneut."
}
}

Rate-Limits behandeln

Implementieren Sie exponentielles Backoff, wenn Sie eine 429-Antwort erhalten:

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('Rate-Limit-Wiederholungsversuche erschöpft');
}