API reference

Market data

Instruments, latest prices and OHLC history — for a watchlist or a chart in your own dashboard.

The prices your accounts are filled against, and the history behind the charts. Useful if you want a watchlist or a chart in your own dashboard rather than sending traders to the executor for it.

Instruments

GET/v1/instrumentsPlannedscope · accounts:read
200 OK
{
  "data": [
    {
      "instrument": "EURUSD",
      "asset_class": "fx",
      "digits": 5,
      "contract_size": 100000,
      "default_leverage": 100
    },
    {
      "instrument": "XAUUSD",
      "asset_class": "metals",
      "digits": 2,
      "contract_size": 100,
      "default_leverage": 50
    }
  ],
  "next_cursor": null
}

Leverage is per asset class and is frozen onto an account at creation, so this shows the default your rule sets apply going forward — not necessarily what an existing account is margined at.

Latest prices

GET/v1/pricesPlannedscope · accounts:read
curl
curl "https://api.propexecutor.com/v1/prices?instruments=EURUSD,XAUUSD,BTCUSD" \
  -H "Authorization: Bearer $PFX_KEY"
instrumentstring
The symbol.
bidnumber
Where a long closes.
asknumber
Where a long opens.
timestampinteger
Unix milliseconds of the last update.
staleboolean
true when nothing has been published for this symbol inside the cache window — the market is closed, or that symbol’s feed is down. Show it as stale rather than as a live price.

This is a snapshot, not a stream

Polling this per symbol per second will spend your read budget and still be behind. For a live ticker, use the executor, or ask us about a streaming endpoint — book a call.

Candles

GET/v1/candlesPlannedscope · accounts:read

OHLC bars for one instrument, rolled up from one-minute bars. History goes back to 2000 for FX and metals and 2015 for BTCUSD; newer symbols start when our feed did.

instrumentstring · required
One symbol per request.
intervalstring
1m, 5m, 15m, 1h, 4h, 1d. Default 1h.
beforetimestamp
Page backwards from here — how the executor's chart loads older history on scroll.
limitinteger
Bars per request. Default 500, maximum 5000.

Bars are bid-side, matching what the executor charts and what a real terminal shows.