Rate limits
Vertex Websocket and REST API Rate limits.
Overview
Vertex uses a weight-based rate-limiting system across queries and executes. We limit based on
IP address
,Wallet address
, and a globalmax # of orders per subaccount per market
.These limits equally apply to both
http
requests andWebsocket
messages.Limits are applied on a
1 minute
and10 seconds
basis.
Limits
IP addresses have a max weight limit of
2400
per minute or400
every 10 seconds across both queries and executes.Wallet addresses have a max weight limit of
600
per minute or100
every 10 seconds applied only to executes.Users can have up to
500
open orders per subaccount per market.Orders have the following additional limits:
Place orders (with spot leverage): up to
600
per minute or100
every 10 seconds across all markets.Place orders (without spot leverage): up to
30
per minute or5
every 10 seconds across all markets. Note: orders without spot leverage are20x
more expensive to place due to additional health checks needed.Order cancellations: up to
600
per minute or100
every 10 seconds.
Query Weights
Queries are rate-limited based on IP. The following weights are applied per query:
Status:
IP weight = 1
Contracts:
IP weight = 1
Nonces:
IP weight = 2
Order:
IP weight = 1
Orders:
IP weight = 2
Subaccount Info:
IP weight = 10
Market Liquidity:
IP weight = 1
Symbols:
IP weight = 2
All Products:
IP weight = 5
Market Prices:
IP weight = 1
Max Order Size:
IP weight = 5
Max Withdrawable:
IP weight = 5
Max LP Mintable:
IP weight = 50
Health Groups:
IP weight = 2
Linked Signer:
IP weight = 5
Insurance:
IP weight = 2
Fee Rates:
IP weight = 2
Assets:
IP weight = 2
Orderbook:
IP weight = 1
Min Deposit Rates:
IP Weight = 5
Archive (indexer) Weights
Archive (indexer) queries are rate-limited based on IP.
IP addresses have a max weight limit of
2400
per minute or400
every 10 seconds.
The following weights are applied per query:
Orders:
IP Weight = 5
Matches:
IP Weight = 2 + limit / 10
; wherelimit
is a query param.Events:
IP Weight = 2 + limit / 10
; wherelimit
is a query param.Summary:
IP Weight = 5
Candlesticks:
IP Weight = 2 + limit / 10
; wherelimit
is a query param.Funding Rate:
IP Weight = 2
Interest & funding payments:
IP Weight = 5
Oracle Price:
IP Weight = 2
Perp Prices:
IP Weight = 2
Product Snapshots:
IP Weight = 10
Market Snapshots:
IP Weight = 10
Maker Statistics:
IP Weight = 10
Merkle Proofs:
IP Weight = 2
Rewards:
IP Weight = 10
Referral Code:
IP Weight = 2
Liquidation Feed:
IP Weight = 2
Linked Signer Rate Limit:
IP Weight = 2
Signatures:
IP Weight = 2 + len(digests) / 10
; wheredigests
is a query param.Subaccounts:
IP Weight = 2
USDC Price:
IP Weight = 2
Execute Weights
Executes are rate-limited based on Wallet address. The following weights are applied per execute:
With spot leverage:
Wallet weight = 1
Without spot leverage:
Wallet weight = 20
When no digests are provided:
Wallet weight = 1
When digests are provided:
Wallet weight = total digests
When no productIds are provided:
Wallet weight = 50
When productIds are provided:
Wallet weight = 5 * total productIds
The sum of Cancel orders + Place order limits
With spot leverage:
Wallet weight = 10
Without spot leverage:
Wallet weight = 20
Liquidate Subaccount:
Wallet weight = 20
With spot leverage:
Wallet weight = 10
Without spot leverage:
Wallet weight = 20
Burn LP:
Wallet weight = 10
Link Signer:
Wallet weight = 50
Can only perform a max of 5 link signer requests every 7 days per subaccount.
Transfer Quote:
Wallet weight = 10
Can only transfer to a max of 5 new recipients within 24hrs.
Last updated