Skip to main content

Rate Limits

The Vetrol API enforces rate limits to ensure fair usage and platform stability.

Default limits

EndpointRate Limit
All API endpoints100 requests / second per account
Messages: Create1,000 / minute
Payments: Create500 / minute

Rate limit headers

Every response includes headers showing your current rate limit status:

X-RateLimit-Limit: 100
X-RateLimit-Remaining: 87
X-RateLimit-Reset: 1710345600

Handling 429 errors

When you exceed a rate limit, the API returns 429 Too Many Requests. Retry after the time indicated in the Retry-After header:

async function withRetry(fn, maxRetries = 3) {
for (let attempt = 0; attempt < maxRetries; attempt++) {
try {
return await fn();
} catch (error) {
if (error.status === 429 && attempt < maxRetries - 1) {
const retryAfter = parseInt(error.headers['retry-after'] || '1', 10);
await new Promise(resolve => setTimeout(resolve, retryAfter * 1000));
} else {
throw error;
}
}
}
}

Increasing limits

Contact support if you need higher rate limits for your use case.