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 global max # of orders per subaccount per market.

  • These limits equally apply to both http requests and Websocket messages.

  • Limits are applied on a 1 minute and 10 seconds basis.

Limits

  • IP addresses have a max weight limit of 2400 per minute or 400 every 10 seconds across both queries and executes.

  • Wallet addresses have a max weight limit of 600 per minute or 100 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 or 100 every 10 seconds across all markets.

    • Place orders (without spot leverage): up to 30 per minute or 5 every 10 seconds across all markets. Note: orders without spot leverage are 20x more expensive to place due to additional health checks needed.

    • Order cancellations: up to 600 per minute or 100 every 10 seconds.

Query Weights

Queries are rate-limited based on IP. The following weights are applied per query:

Archive (indexer) Weights

  • Archive (indexer) queries are rate-limited based on IP.

  • IP addresses have a max weight limit of 2400 per minute or 400 every 10 seconds.

The following weights are applied per query:

Execute Weights

Executes are rate-limited based on Wallet address. The following weights are applied per execute:

  • Place order:

    • With spot leverage: Wallet weight = 1

    • Without spot leverage: Wallet weight = 20

  • Cancel orders:

    • When no digests are provided: Wallet weight = 1

    • When digests are provided: Wallet weight = total digests

  • Cancel Product Orders:

    • When no productIds are provided: Wallet weight = 50

    • When productIds are provided: Wallet weight = 5 * total productIds

  • Withdraw Collateral:

    • With spot leverage: Wallet weight = 10

    • Without spot leverage: Wallet weight = 20

  • Liquidate Subaccount: Wallet weight = 20

  • Mint LP:

    • 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