Rate Limits V9
This page defines the default rate limits for the backend services. The limits are separated by context to offer granular control over limits within the application area.
Rate Limiting Configuration
Global Behaviour
- Rejected requests return HTTP 429 (Too Many Requests).
- Response trailer includes:
error_detail: too many requests
- Queue processing order for all policies:
- OldestFirst
Built-in Rate Limiter Policies
| Policy Name | Type | Purpose |
|---|
PermitLimit=100, Window=20s, QueueLimit=50
sliding
Sliding Window
Similar to Fixed Window but uses a moving time window for smoother traffic control.
PermitLimit=25, Window=9s, SegmentsPerWindow=3, QueueLimit=10
token
Token Bucket
Uses tokens that are consumed by requests and replenished over time. Allows short bursts of traffic.
TokenLimit=50, TokensPerPeriod=1, ReplenishmentPeriod=5s, AutoReplenishment=true, QueueLimit=10
concurrency
Concurrency
Limits the number of requests that can execute simultaneously.
PermitLimit=2, QueueLimit=3
Limiter Type Comparison
Token Bucket Business Policies
Configuration values are sourced from application settings, with the defaults shown below.
| Policy Name | Configuration Section | Purpose |
|---|
ApiRateLimitPolicy:*
General API request throttling. Allows small bursts while protecting the API from excessive traffic.
60
10
10s
10
import-policy
ImportRateLimitPolicy:*
Supports high-volume import operations while preventing imports from overwhelming the system.
1,000
200
10s
20
signify-signing-policy
SigningRateLimitPolicy:*
Designed for high-throughput document signing workloads.
4,000
1,000
5s
10
signify-email-policy
EmailRateLimitPolicy:*
Controls email sending throughput and protects downstream email providers.
6,000
1,000
10s
50
signify-sms-policy
SMSRateLimitPolicy:*
Limits SMS traffic to avoid overwhelming SMS gateways and third-party providers.
1,000
100
10s
10
Queue Behaviour
OldestFirst order
Summary
All rate limiters:
- Return HTTP 429 when requests are rejected.
- Include the trailer
error_detail: too many requests. - Process queued requests using OldestFirst ordering.
Business-specific policies use the Token Bucket algorithm and are configurable on application level.