MarketLabs intelligence and simulations
Read a shared market snapshot and queue a private simulation with the same fxapis API key. Simulations are polled. They do not place an order.
MarketLabs is coming soon. It is not available to workspaces yet: until it is, its endpoints answer
404 NOT_FOUNDand it does not appear in the console. This guide describes how it will work.
MarketLabs is part of fxapis. You use the same dashboard, the same session, and the same API key. A plan that does not include MarketLabs is refused with 402 FEATURE_NOT_IN_PLAN. A key without the scope is refused with 403 MISSING_SCOPE.
| Scope | Allows |
|---|---|
marketlabs:read | Intelligence, events, forecasts, performance, usage, and your own simulations |
marketlabs:run | Queue and cancel your own simulations |
marketlabs:manage is not grantable on a key. It belongs to the workspace owner.
Reading intelligence does not start a simulation, and it does not spend a connected account's live-read allowance. A simulation is private to the workspace that created it. Another workspace's id is 404.
Read a snapshot
curl "https://api.fxapis.com/v1/marketlabs/markets/EURUSD/intelligence" \
-H "Authorization: Bearer $FXAPIS_KEY"The body is under data, with asOf, freshness (fresh or stale), and baseline as a decimal string. Times are UTC.
Queue a simulation
Send Idempotency-Key. The same key and the same body return the first simulation. The same key and a different body is 409 IDEMPOTENCY_KEY_REUSED.
curl -X POST "https://api.fxapis.com/v1/marketlabs/simulations" \
-H "Authorization: Bearer $FXAPIS_KEY" \
-H "Idempotency-Key: research-20261104-eurusd-01" \
-H "Content-Type: application/json" \
-d '{"instrument":"EURUSD","horizon":"4h","configuration":{"personas":20,"repetitions":3}}'The answer is 202, with data.id and data.pollUrl. Poll GET /v1/marketlabs/simulations/{id} until status is succeeded, failed, or cancelled. DELETE cancels a queued simulation and releases its credit. A simulation that has already finished is 409 SIMULATION_NOT_CANCELLABLE.
GET /v1/marketlabs/usage reports included, reserved, and used for the current UTC month. Past the included count, creating one is 402 QUOTA_EXCEEDED. If MarketLabs cannot accept the request, the answer is 503 MARKETLABS_UNAVAILABLE. Trading routes are unaffected.
A simulation never places an order. Closing a position is a separate call, with a trading scope, on an account you choose.
Read MT5 quotes and recent candles over REST
What fxapis market data is, and is not: a REST poll of the account's broker quotes, and up to 1,000 recent candles from that terminal. No tick history, no deep archive, no WebSocket stream.
MCP server: connect Claude, ChatGPT and AI agents to MetaTrader 5
Connect Claude (claude.ai, Desktop, Code), ChatGPT and other AI agents to your MetaTrader 5 accounts through the fxapis MCP server: sign in, choose read-only or trading per account, revoke any time. Setup per client, the tool reference, and the safety model.