A Simpler Alternative to the Tradovate API

A REST API for your futures accounts that uses one X-API-Key header instead of OAuth and token renewal.

What makes the direct Tradovate API hard

Using Tradovate's own API means obtaining an access token, renewing it before it expires, keeping a WebSocket alive for live data, and handling disconnects without losing track of orders. For a trading bot or a TradingView bridge, that connection code often ends up larger than the strategy itself.

Signal Trade App keeps the broker connection open on its side. You call a REST endpoint with an API key, and we handle the broker session, symbol resolution and reconnection.

Authentication and scopes

Create a key on the API Keys page (/api-keys) and send it in the X-API-Key header on every request. A key has scopes. A read key can list accounts, positions and orders. A trade key can place, modify and cancel orders, set protection and flatten. A missing or invalid key returns 401, and a key without the needed scope returns 403.

Endpoints you will use

All paths sit under /api/v1.

A short order example

To place a bracketed market buy, send a POST to /api/v1/accounts/:id/orders with your X-API-Key header and a JSON body containing symbol, action, qty, orderType and either takeProfit and stopLoss or a bracket object. A successful call returns 201 with the order id. Action and order type are accepted in any case, and price is required for limit and stop orders.

If the broker refuses an order, you get a 502 with the code BROKER_ORDER_REJECTED and the broker's reason. An unresolvable symbol returns a 400 with the code UNKNOWN_SYMBOL. If the entry is placed but a bracket leg is refused, you get a 409 with the code BRACKET_INCOMPLETE and the order id, so you inspect the position instead of resubmitting.

Idempotency, retries and limits

Send an Idempotency-Key header of 8 to 128 characters with an order. If you retry with the same key within 24 hours, you get the stored response back instead of a second order. That matters when a network timeout leaves you unsure whether the first request landed.

Requests are limited to 120 per minute per API key, and going over returns 429. Orders that open exposure are refused while trading is paused on your account, and an inactive account returns a 403 until you reconnect the broker. Quote and candle endpoints are disabled for API consumers, so bring your own market data.

Tradovate and Rithmic

The same endpoints work on accounts connected through Tradovate or Rithmic, and the account list reports the broker for each one. Order routing runs under 50ms on Tradovate and under 5ms on Rithmic. Accounts are addressed by their Signal Trade App id, so your code does not change when you add a broker.

Developers choose this when they want to spend their time on strategy logic instead of authentication, reconnects and symbol roots. One key, one set of endpoints, and error codes that say what went wrong.

Pricing is $29/month, with a 5-day trial that requires a card. A self-hosted option is available for $599 one time. API access is part of the account.

Frequently Asked Questions

Do I need OAuth or token renewal?

No. You send one X-API-Key header. The broker session and its renewal are handled on our side.

What can a read-only key do?

It can list accounts, read positions, orders, working orders and risk, view strategies and read your user record. Trading calls require a key with the trade scope.

How do I avoid duplicate orders on retry?

Send an Idempotency-Key header of 8 to 128 characters. A repeat with the same key within 24 hours returns the first response.

What is the rate limit?

120 requests per minute per API key, and from October 17, 2026, 12 reads per minute of the same endpoint. Exceeding it returns 429. For live data, use the /stream endpoint instead of polling.

Can I get quotes or candles from the API?

No. Those endpoints are disabled for API consumers. Use your own data source.

Does it work with Rithmic accounts?

Yes. The same endpoints work on accounts connected through Rithmic, and order routing there runs under 5ms.

How much does it cost?

$29/month. The 5-day trial requires a card. Self-hosted is $599 one time.

Related Pages

Related Tools & Reading