Rate Limiting

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

Default Limits

EndpointLimit (Production)Limit (Sandbox)
General endpoints100 requests/min500 requests/min
Order creation (POST /orders)10 requests/min50 requests/min

The general limit can be raised per organization (maxRequestsPerMinute override). Contact Vignetim if your integration needs a higher throughput; the order-creation limit is fixed.

Response Headers

Every API response includes rate limit information in the following headers:

HeaderDescription
X-RateLimit-LimitMaximum number of requests allowed in the current window
X-RateLimit-RemainingNumber of requests remaining in the current window
X-RateLimit-ResetUnix timestamp (seconds) when the rate limit window resets

Handling 429 Responses

When you exceed the rate limit, the API returns a 429 Too Many Requests response with a retryAfter field (seconds until the window resets):

json
{
	"statusCode": 429,
	"message": "Rate limit exceeded",
	"retryAfter": 45
}

Recommended Strategy

  1. Read the X-RateLimit-Remaining header to monitor your usage proactively.
  2. When you receive a 429, wait retryAfter seconds (or until X-RateLimit-Reset) before retrying.
  3. Implement exponential backoff for retries to avoid repeated throttling.
  4. Cache product catalog responses where possible to reduce unnecessary requests.

Daily Order Limit

Independently of the per-minute limits, an organization can have a configurable daily cap on order creation. When the cap is exceeded, POST /orders fails with a 400:

json
{
	"statusCode": 400,
	"message": "Daily order limit (500) exceeded",
	"error": "Bad Request"
}

The counter resets at midnight (server time). No daily cap is applied unless one is configured for your organization.