Rate Limits
For at sikre stabil drift er API'et hastighedsbegrænset pr. API-nøgle.
Grænser
| Begrænsning | Værdi |
|---|---|
| Requests pr. minut | 60 |
| Vindue | Glidende 1-minut vindue |
| Scope | Pr. API-nøgle |
Response headers
Alle responses inkluderer rate limit information:
| Header | Beskrivelse |
|---|---|
X-RateLimit-Limit | Maksimalt antal tilladte requests |
X-RateLimit-Remaining | Resterende requests i vinduet |
X-RateLimit-Reset | Tidspunkt for nulstilling (Unix timestamp) |
Retry-After | Sekunder til nulstilling (kun ved 429) |
Ved overskridelse
Når du overskrider grænsen, modtager du et 429 Too Many Requests:
429 Too Many Requests
{
"error": {
"code": "RATE_LIMIT_EXCEEDED",
"message": "Rate limit exceeded. Please try again later.",
"status": 429
},
"meta": {
"api_version": "v1",
"timestamp": "2026-04-13T12:00:00.000Z"
}
}
Retry-strategi
async function fetchWithRetry(url, apiKey, maxRetries = 3) {
for (let i = 0; i < maxRetries; i++) {
const res = await fetch(url, {
headers: { "X-API-Key": apiKey },
});
if (res.status === 429) {
const retryAfter = parseInt(
res.headers.get("Retry-After") || "5"
);
console.log(`Rate limited. Retry in ${retryAfter}s`);
await new Promise((r) => setTimeout(r, retryAfter * 1000));
continue;
}
return res.json();
}
throw new Error("Max retries exceeded");
}
tip
Hold dine requests under 1 pr. sekund for at undgå rate limiting. Brug pagination med page_size=100 for at minimere antallet af kald.