Snelheidslimieten
De VaultPAM API dwingt snelheidslimieten per client af om de stabiliteit van de service te beschermen. Alle API-antwoorden bevatten x-ratelimit-* headers zodat uw client het huidige verbruik kan volgen en op tijd kan terugtrekken voordat een limiet wordt bereikt.
Antwoordheaders
Elk API-antwoord bevat de volgende headers:
| Header | Type | Beschrijving |
|---|---|---|
x-ratelimit-limit | integer | Maximum aantal aanvragen dat in het huidige venster is toegestaan |
x-ratelimit-remaining | integer | Aanvragen resterend in het huidige venster |
x-ratelimit-reset | Unix timestamp (seconden) | Wanneer het huidige venster wordt opnieuw ingesteld |
Bij een 429 Too Many Requests antwoord wordt een extra header opgenomen:
| Header | Type | Beschrijving |
|---|---|---|
retry-after | integer (seconden) | Minimale wachttijd voordat opnieuw wordt geprobeerd |
Alle headers gebruiken lowercase namen.
Snelheidslimiet-categorieën
De API past verschillende limieten toe afhankelijk van het bewerkingstype en de belmodus. De x-ratelimit-* headers in elk antwoord geven de limietcategorie weer die van toepassing is op die specifieke aanvraag.
Referentiewaarden (richtlijn alleen — behandel x-ratelimit-* headers als gezaghebbend):
| Categorie | Limiet |
|---|---|
| Aanmeldpogingen per IP | 60 per minuut |
| API-aanvragen per IP | 300 per minuut |
| API-aanvragen per geverifieerde gebruiker | 120 per minuut |
| Gevoelige bewerkingen per gebruiker | 30 per minuut |
De hierboven weergegeven limieten documenteren de huidige standaardinstellingen. Gebruik de x-ratelimit-limit en x-ratelimit-remaining waarden in elk antwoord om herinprobeerbesluiten te nemen — de gepubliceerde nummers kunnen zonder kennisgeving veranderen.
Omgang met 429-antwoorden
Wanneer u een 429 Too Many Requests antwoord ontvangt:
- Lees de waarde van de
retry-afterheader (seconden). - Pauzeer uw aanvraagloop voor minimaal die duur.
- Probeer de aanvraag opnieuw.
Voorbeeldantwoord:
HTTP/1.1 429 Too Many Requests
x-ratelimit-limit: 120
x-ratelimit-remaining: 0
x-ratelimit-reset: 1747483200
retry-after: 37
Content-Type: application/json
{
"error": "RATE_LIMITED",
"message": "Too many requests. Retry after 37 seconds."
}
Aanbevolen clientpatronen
Controleer het resterende budget voordat u bulkbewerkingen uitvoert
Lees x-ratelimit-remaining na elk antwoord. Als dit onder een drempelwaarde (bijvoorbeeld 10) daalt, voert u een pauze in voordat de volgende aanvraag wordt gedaan om te voorkomen dat een 429 wordt geactiveerd.
Exponentiële backoff voor voorbijgaande 429s
Als retry-after niet aanwezig is of u meerdere opeenvolgende 429 antwoorden ontvangt, gebruikt u exponentiële backoff met jitter:
wait = min(base * 2^attempt + random_jitter, max_wait)
Log x-ratelimit-reset voor debugging
Bij het diagnosticeren van snelheidslimiet-problemen registreert u de x-ratelimit-reset Unix timestamp samen met het antwoord. Converteren naar een voor mensen leesbare tijd om te begrijpen wanneer het venster rolt.
Volgende stappen
- Authentication Flow — tokens verkrijgen voordat API-aanroepen worden gedaan
- curl Quickstart — zie snelheidslimieten headers in actie