Account connectivity
Connect an MT5 account with its login and server. We keep a terminal ready for it — always on, or warmed when you trade.
Connect MetaTrader 5 accounts. Place, modify and close orders. Move many accounts with one instruction. Build trading products on infrastructure that tells you exactly what happened to every order.
From connecting accounts to executing across many at once — one developer-first API for MetaTrader 5 trading, with every order's outcome recorded, never guessed.
Connect an MT5 account with its login and server. We keep a terminal ready for it — always on, or warmed when you trade.
Market and pending orders, closes and stop moves. Each ends filled, rejected, or unknown and being reconciled — never quietly failed.
One instruction across many accounts, released together at a barrier, with a result for every leg.
Orders whose outcome was lost in transit are settled from the broker's own history — matched, never guessed.
Scoped keys, shown once and stored only as digests. Rename, re-scope or revoke — revocation applies on the next request.
Broker passwords are encrypted per account and never returned by any endpoint or written to a log.
One consistent JSON API. Retry safely with an idempotency key — the same key never places a second order.
Read the docs> curl -X POST https://api.fxapis.com/v1/accounts/$ACCOUNT_ID/orders/market \
-H "Authorization: Bearer $FXAPIS_KEY" \
-H "Idempotency-Key: 7f3e0c9a-order-1" \
-H "Content-Type: application/json" \
-d '{
"symbol": "EURUSD",
"side": "buy",
"volume": "0.10"
}'{
"data": {
"id": "b1c7…9e2a",
"symbol": "EURUSD",
"side": "buy",
"volume": "0.10",
"state": "filled",
"filledVolume": "0.10",
"filledPrice": "1.13722",
"brokerOrderId": "2104837096"
}
}Every terminal is warmed first, then every leg is released together. We measure how tight that release is, so you can see it.
Release the ready legs, wait for all, or hold until a deadline.
First leg to last, reported on every wave.
A wave is not atomic, so each account reports its own fill.
Retrying a wave cannot place a second order anywhere.
Every order ends in a state that tells the truth — filled, rejected, or unknown and being reconciled. Nothing is retried on a guess.
Orders go to a terminal that is already logged in. A 100-account wave leaves within 30 ms, first leg to last.
One terminal per account, fenced even across nodes — and a billing problem never stops you closing a position.
Pay by card or in crypto, monthly. Over your plan, opening is paused — closing never is.
Arranged directly with us
Create an account, issue an API key, and place your first order in minutes.