Skip to main content
The Polymarket US API enforces rate limits to ensure fair usage and system stability. All limits are per participant firm unless stated otherwise.

REST API

Trading Endpoints

REST API traffic is subject to a firm-wide cap of 100 requests per second per firm, averaged over a 1-minute window. This means short bursts above 100 req/sec are permitted as long as the average stays within budget. Some REST endpoints may also enforce additional lower limits, such as the query/report endpoints listed below.

Query / Report Endpoints

In addition to the firm-wide REST cap above, these read-heavy endpoints have lower per-firm limits. Cache responses where noted.

Combos Endpoints

Upcoming - beta access required. Combos and RFQ API endpoints are not generally available yet. Reach out to institutional@polymarket.us to join the beta test.
In addition to the firm-wide REST cap above, Combos endpoints have these per-firm limits:

RFQ Endpoints

RFQ endpoints have these per-firm limits:

Public (Unauthenticated) Endpoints

gRPC Streaming

Ingress rate is averaged over a 1-minute window, allowing short bursts. Exceeding the average limit will result in throttled or rejected messages. This limit applies to all participants.

FIX Protocol

FIX rate limiting is enforced at the FIX gateway level. This limit applies to all participants.

Summary

Rate Limit Response

When rate limited, the REST API returns:
HTTP Status: 429 Too Many Requests

Retry Strategy

When receiving a 429 response:
  1. Stop making requests immediately
  2. Wait 1 second before retrying
  3. Implement exponential backoff for repeated 429s
  4. Consider reducing your request rate

Latency Stopgap on Orders

During periods of increased latency, Polymarket US applies a 5-second stopgap to inbound orders. If an order has been received by Polymarket US but has not been processed within 5 seconds, we reject it to protect you from a bad fill at a stale price.
These rejects carry the message Global Rate Limit Exceeded, but they are not an actual rate limit. You do not need to throttle your traffic in response to them. Treat them as a transient latency reject, not a signal to back off.
What it applies to:
  • New orders — rejected if not processed within 5 seconds.
  • Order modifications via cancel/replace — also subject to the stopgap.
  • Pure cancels are not affected — a standalone cancel is never rejected by this stopgap.
You can always cancel an order before you have received an acknowledgement, and even before it has been processed.

Best Practices

Use Streaming Instead of Polling

The API is designed as a streaming-first system. Instead of repeatedly polling for updates, subscribe to real-time streams:
Streaming connections don’t count against the REST rate limit. One streaming connection can replace hundreds of polling requests.

Cache Reference Data

Reference data (instruments, symbols, metadata) changes infrequently - ListInstruments and ListSymbols are limited to just 6 req/min. Cache responses locally:

Batch Operations

Where possible, batch your operations instead of making individual requests:
  • Use SearchOrders with filters instead of fetching orders one by one
  • Use ListInstruments with symbol filters instead of individual lookups
  • Subscribe to multiple symbols in a single streaming connection

Monitoring Your Usage

Track your request patterns to stay within limits:

Abuse Prevention

Patterns that may result in temporary or permanent restrictions:
  • Sustained requests above the rate limit
  • Polling for data available via streaming
  • Requesting the same unchanged data repeatedly
  • Automated retry loops without backoff
Abuse of the API may result in temporary or permanent restrictions on your API credentials. Contact onboarding@polymarket.us if you need higher limits for legitimate use cases.

Troubleshooting Rate Limits

Consistently Hitting Limits

If you’re consistently receiving 429 errors:
  • Reduce request frequency
  • Batch multiple operations where possible
  • Cache responses that don’t change frequently (reference data, instrument lists)
  • Use streaming endpoints instead of polling
  • Contact support to discuss higher rate limits for production use

Need Higher Limits

For production use cases requiring higher limits:
  1. Document your use case and expected volume
  2. Contact support at onboarding@polymarket.us
  3. Provide environment (dev, preprod, prod)
  4. Specify which endpoints you need higher limits for

Next Steps

gRPC Streaming

Replace polling with real-time streams

Authentication

Set up API authentication