🔗 DEVELOPER

API Documentation

Pull your own account balance, equity, drawdown, win rate and trade stats into a spreadsheet, Zapier, or your own dashboard — no browser session required.

🔑 Getting a key

Every key is personal — it can only ever return your own data, the same account your dashboard's "My EA Performance" card shows. Generate one from Dashboard → Settings → API Access. The raw key is shown once at creation time; if you lose it, revoke it and generate a new one. Give each integration (a spreadsheet, a Zapier flow) its own key so you can revoke one without breaking the others.

⚠️ Treat your key like a password — anyone who has it can read your live account data. Never share it publicly or commit it to a public repository.

📡 Endpoint

GEThttps://www.vexriano.com/api/my-mt5-account.php?key=YOUR_KEY

Requires either a logged-in session cookie (used by the dashboard itself) or a valid ?key= query parameter (used by everything else — curl, Google Apps Script, Zapier's "Webhooks by Zapier" trigger, a personal backend). Responses are plain JSON, never cached (Cache-Control: no-store), and reflect whatever your terminal's EA most recently pushed.

Example request

curl "https://www.vexriano.com/api/my-mt5-account.php?key=YOUR_KEY"

Example response

{ "account": "62257252", "account_name": "Jordan S.", "account_type": "real", "platform": "mt5", "currency": "USD", "balance": 10412.50, "equity": 10388.20, "profit": -24.30, "free_margin": 9820.10, "drawdown_pct": 1.8, "drawdown_amount": 190.40, "max_drawdown_pct": 6.2, "max_drawdown_amount": 640.10, "booked_today": 12.50, "booked_week": 88.20, "booked_month": 340.00, "booked_3m": 1120.75, "booked_all": 4890.60, "trades_total": 214, "trades_win": 148, "trades_loss": 66, "win_rate_pct": 69.2, "profit_factor": 1.84, "avg_win": 42.10, "avg_loss": -28.60, "positions_count": 2, "positions": [ {"symbol":"EURUSD","side":"buy","volume":0.10,"open_price":1.0842,"current_price":1.0851,"profit":9.00} ], "received_at": "2026-08-15 09:41:02", "online": true, "age_secs": 4, "health": {"score": 82, "label": "Excellent", "color": "#22c55e", "insufficient_data": false, "trades_total": 214}, "mode": "single", "ok": true }

📋 Field reference

FieldTypeNotes
okboolfalse plus an error string if the request failed — see Errors below.
onlineboolFalse once age_secs exceeds the site's configured stale-after threshold (default 60s) — your terminal likely isn't pushing right now.
balance / equity / profitnumberLive account figures, USD unless currency says otherwise.
drawdown_pct / drawdown_amountnumberCurrent dip from your highest-ever equity. max_* variants are the worst it's ever reached.
booked_todaybooked_allnumberRealized (closed-trade) profit over each rolling window.
healthobject0–100 composite score (win rate, profit factor, drawdown, sample size). score is null and insufficient_data is true below 10 closed trades — don't render a fabricated grade in that case.
positionsarrayCurrently open trades, capped at 20.

⚠️ Errors

HTTP statusMeaning
401Missing/invalid ?key= and no logged-in session, or your email isn't verified yet.
404Your key is valid, but no MT4/MT5 account has been activated on your account yet — see Dashboard → Activate EA License.

Every error response is still valid JSON: {"ok":false,"error":"..."} — check ok rather than relying on the HTTP status alone.

🧭 Good practice

How often can I poll this?

Your terminal itself only pushes fresh numbers every few seconds, so polling faster than that just re-fetches the same figures. Once every 5–15 seconds is the same cadence the dashboard widget itself uses; once a minute is plenty for a spreadsheet or periodic report.

Can I get another client's data with a valid key?

No — a key can only ever resolve to the account it was generated for. There is no request parameter that selects a different account.

What if I revoke a key that's still in use somewhere?

That integration starts getting 401 immediately. Generate a fresh key and update it there — revoking never affects your other keys.

Generate your key →   Questions? Contact us