public/getRateLimits introspection method are documented in full on the Rate Limits reference page. This page focuses on what changes for integrators.
Integrator and market maker limits
Program participants qualify for the highest matching-engine rate-limit tier. There are two tiers today, based on market maker vs standard trader status:
The Exchange reserves the right to add tiers assigned based on volume share and market maker rankings.
Burst requests for both REST and WebSocket refresh every 5 seconds. For example, a trader can send 5× matching requests in a single burst but must wait 5 seconds before more can be sent.
Which requests count as matching
The following requests count asmatching and per-instrument matching:
private/orderprivate/replace(counted as 1 request)private/cancelprivate/cancel_by_nonceprivate/cancel_by_instrumentprivate/cancel_by_label(only when theinstrument_nameparam is set)
custom rate-limited requests:
private/cancel_all— 1 TPSprivate/cancel_by_label— 10 TPS (wheninstrument_nameparam is NOT set)
non-matching.
How to apply for increased limits
Market makers are eligible for higher rate limits. To apply, contact Derive support or complete the Institutional Trading Rewards contact form. Increased limits are granted alongside the fee-tier and rebate benefits of the program.V3 rate-limit model
The canonical rate-limit model, class semantics, error codes, and thepublic/getRateLimits runtime introspection method live on the main reference page:
Rate Limits reference
Two-tier model, class definitions, budget windows, error codes, and the live
public/getRateLimits method.Related
Market Maker Protections
MMP configuration and cancel-on-disconnect that pair with rate limits.
Error Codes
-32000 and -32100 rate-limit rejections and the retry semantics.