Skip to main content

Rate limits

OnlyTrade runs on a fair-use policy. There are no hard published quotas on the shared reference deployment today; instead, follow the guidance below so your integration stays well-behaved and predictable.

Fair-use guidance

SurfaceGuidance
Auth (/auth/v1/oauth2/*)Keep login/token under ~60 requests/min per IP. Cache the access_token and reuse it until it expires — don't log in per request.
Public (/api/v1/public/*)Keep signup / password-reset under ~20 requests/min per IP.
Authenticated REST (/api/v1/*)Batch and cache. Read reference data (symbols, groups) once and reuse; don't poll endpoints you can get from the WebSocket stream.
WebSocket (/ws/v1)Use one connection per session and subscribe to what you need — prefer the stream over polling for prices and account updates.

Best practices

  • Reuse tokens. An access token is valid for its full expires_in; refresh it rather than re-authenticating.
  • Prefer the stream. Live prices, position P&L, and account/money updates are pushed over WebSocket — polling them over REST is the most common cause of excess load.
  • Back off on errors. On 429/503, retry with exponential backoff and jitter.
Per-deployment limits

Because each broker runs a dedicated deployment, your operator may enable enforced per-IP limits tuned to your traffic. If hard limits are active on your deployment, exceeding them returns 429 Too Many Requests; honour the response and back off.