MetaTrader 4 Forex Trading icon

MetaTrader 4 community, broker catalog and geo data

MetaQuotes Ltd · Banking

MetaTrader 4 Forex Trading is the Android FX terminal from Cyprus-based MetaQuotes Ltd. Traders connect to a broker access point, watch a quotes list, open charts with indicators, send market and pending orders from the Trade and Order screens, manage positions, scroll account history, read broker mail and news, and join MQL5 Channels after community sign-in (including Google). Demo logins are allocated from the Open a demo account flow; the Accounts screens cover OTP, biometrics and an investor password. The client is used worldwide by retail forex and CFD traders and by brokers who white-label the same terminal, sitting alongside MetaTrader 5, cTrader and TradingView as a mobile FX desk.

Broker directory records pin company, legalCountry and regulationStatus to each white-label access point, next to regNumber, officesLocation and a servers list, while MQL5 community profiles hold user_login, user_email, metaquotes_id and chat_token after sign-in. A community status read writes geo.country into the client locale; install attribution adds countryISO and city beside utm_campaign and utm_source. Channel reports carry chatId, chatAuthorLogin and a complaint signature; push registration tags hid, uid and app_build.

Compliance desks match regulationStatus to a login's server name, community CRMs store user_login beside geo.country, growth ops seed the first broker list from install geo and campaign tags, and device inventories keep hid and uid tied to one MetaQuotes id so quote and order alerts follow the account. openData Studio turns that community, broker-directory and geo data into callable open data.

Screenshots

  • MetaTrader 4 Forex Trading screenshot 1
  • MetaTrader 4 Forex Trading screenshot 2
  • MetaTrader 4 Forex Trading screenshot 3
  • MetaTrader 4 Forex Trading screenshot 4
  • MetaTrader 4 Forex Trading screenshot 5
  • MetaTrader 4 Forex Trading screenshot 6
  • MetaTrader 4 Forex Trading screenshot 7
  • MetaTrader 4 Forex Trading screenshot 8

API surface

The endpoints and request/response examples below are reconstructed from the app's interface — illustrative, not a live capture.

  • MQL5 community Google auth

    POST /v1/community/sessions/google osint

    Exchanges Google sign-in material for the nested community user object — user_login, user_email, metaquotes_id and chat_token — used after MQL5 sign-in.

    Auth: Signed POST: query mid, ggtok (encrypted Google token), tok, sign (SHA-256 digest) and rnd. The nested user.chat_token is kept as the community session.

    • mid
    • ggtok
    • tok
    • sign
    • rnd
    • user_id
    • user_login
    • user_full_name
    • user_email
    • user_phone
    • metaquotes_id
    • avatar_url
    • chat_token
    • balance_total
    • balance_locked
    • balance_free_hosting_minutes
    • finance_state
    POST /v1/community/sessions/google?mid=<mid>&ggtok=<encrypted_google_token>&tok=<encrypted_tok>&sign=<sha256_sign>&rnd=1729084800 HTTP/1.1
    Accept-Language: en-US
    {
      "user": {
        "user_id": 12004567,
        "user_login": "trader_nick",
        "user_full_name": "Nick Trader",
        "user_email": "[email protected]",
        "user_phone": "+12025550123",
        "metaquotes_id": "MQID-8891",
        "avatar_url": "https://cdn.example.com/avatars/trader_nick.png",
        "chat_token": "<chat_token>",
        "balance_total": 12,
        "balance_locked": 0,
        "balance_free_hosting_minutes": 43200,
        "finance_state": 1
      }
    }
  • MQL5 community Google register

    POST /v1/community/accounts/google osint

    Creates an MQL5 community login from the Google register flow and returns the same user object used for Channels chat.

    Auth: Unauthenticated POST. Encrypted credentials plus a SHA-256 sign; a 200 body becomes the community user profile. A duplicate email returns an EmailExists error marker.

    • mid
    • login
    • sign
    • user_id
    • user_login
    • user_full_name
    • user_email
    • chat_token
    • metaquotes_id
    POST /v1/community/accounts/google HTTP/1.1
    Accept-Language: en-US
    Content-Type: application/x-www-form-urlencoded
    
    mid=<mid>&login=trader_nick&sign=<sha256_sign>
    {
      "user": {
        "user_id": 12004567,
        "user_login": "trader_nick",
        "user_full_name": "Nick Trader",
        "user_email": "[email protected]",
        "chat_token": "<chat_token>",
        "metaquotes_id": "MQID-8891"
      }
    }
  • MQL5 user status and geo

    POST /v1/community/profile/state osint

    Loads community status; geo.country is written into the client locale store, and the user block becomes the session profile.

    Auth: Community session after identity auth. Accept-Language is sent from the app's UI language setting.

    • geo
    • country
    • user_login
    • chat_token
    • balance_total
    • finance_state
    POST /v1/community/profile/state HTTP/1.1
    Accept-Language: en-US
    {
      "geo": {
        "country": "US"
      },
      "user": {
        "user_login": "trader_nick",
        "chat_token": "<chat_token>",
        "balance_total": 12,
        "finance_state": 1
      }
    }
  • Delete MQL5 community account

    POST /v1/community/accounts/close osint

    Deletes the signed-in MQL5 community account from the account-settings flow.

    Auth: Community chat_token issued at sign-in.

    • user_login
    • chat_token
    • status
    POST /v1/community/accounts/close HTTP/1.1
    Content-Type: application/json
    
    {
      "user_login": "trader_nick",
      "chat_token": "<chat_token>"
    }
    {
      "status": "ok"
    }
  • MQL5 channel complaint

    POST /v1/channels/reports osint

    Reports a Channels dialog or message — chatId, chatLink, author login/name, message body and a native complaint signature.

    Auth: Community native token from the chat engine plus a complaint signature computed over chatId.

    • token
    • complaintType
    • complaintText
    • chatId
    • chatLink
    • chatAuthorLogin
    • chatAuthorName
    • chatMessage
    • chatMessageAuthorLogin
    • chatMessageAuthorName
    • chatUsersCount
    • chatType
    • signature
    POST /v1/channels/reports HTTP/1.1
    Content-Type: application/x-www-form-urlencoded
    
    token=<chat_token>&complaintType=1&complaintText=spam&chatId=0x4a21&chatLink=https://community.example/channels/fx-signals&chatAuthorLogin=publisher_fx&chatAuthorName=FX Publisher&chatMessage=buy%20EURUSD&chatMessageAuthorLogin=publisher_fx&chatMessageAuthorName=FX Publisher&chatUsersCount=1204&chatType=2&signature=<complaint_signature>
    {
      "ok": true
    }
  • MQL5 user complaint

    POST /v1/community/members/reports osint

    Reports another MQL5 community user — userId, complaintType and complaintText — signed with the same native complaint helper as Channels.

    Auth: Community token plus a complaint signature over the reported user id. Form fields token, signature, complaintType, complaintText, userId.

    • token
    • signature
    • complaintType
    • complaintText
    • userId
    POST /v1/community/members/reports HTTP/1.1
    Content-Type: application/x-www-form-urlencoded
    
    token=<chat_token>&signature=<complaint_signature>&complaintType=1&complaintText=spam&userId=12004567
    {
      "ok": true
    }
  • White-label broker network

    POST /v1/brokers/directory opendata

    Downloads the signed white-label broker catalog for the requested server names — company, legalCountry, regulationStatus and the access-point list shown on the broker search screen.

    Auth: Signed form body servers={csv}&signature={broker_signature}. A terminal-build User-Agent is sent, and requests go to one of several regional API access points. An alternate body servers={csv}&code=mt4 is also accepted.

    • company
    • regNumber
    • regAddress
    • officesLocation
    • website
    • genericEmail
    • abuseEmail
    • abuseUrl
    • phone
    • regulation
    • regulationStatus
    • legalCountry
    • limitedAccess
    • logoHash
    • servers
    • redirect
    POST /v1/brokers/directory HTTP/1.1
    Content-Type: application/x-www-form-urlencoded
    User-Agent: MetaTrader4/400.1475
    
    servers=MetaQuotes-Demo%2CExampleBroker-Live&signature=<broker_signature>
    {
      "company": "Example Broker Ltd",
      "regNumber": "CIF 000/00",
      "regAddress": "1 Example Street, Limassol",
      "officesLocation": "Limassol, CY",
      "website": "https://broker.example",
      "genericEmail": "[email protected]",
      "abuseEmail": "[email protected]",
      "abuseUrl": "https://broker.example/abuse",
      "phone": "+35725000000",
      "regulation": true,
      "regulationStatus": "CySEC",
      "legalCountry": "CY",
      "limitedAccess": false,
      "logoHash": "a1b2c3",
      "servers": [
        {
          "name": "ExampleBroker-Live",
          "accessPoint": "trade.broker.example:443"
        }
      ],
      "redirect": null
    }
  • Install confirm and geo

    GET /v1/installs/android/attribution osint

    Confirms the Android MT4 install channel and returns campaign tags plus install-geo countryISO/city used to seed the first broker list.

    Auth: Unauthenticated GET. JSON keys utm_campaign, utm_source, servers, geo and utmCookie are parsed into the install-confirmation and install-geo records.

    • utm_campaign
    • utm_source
    • servers
    • geo
    • countryISO
    • city
    • utmCookie
    GET /v1/installs/android/attribution HTTP/1.1
    Accept: application/json
    {
      "utm_campaign": "play_organic",
      "utm_source": "google-play",
      "servers": [
        "MetaQuotes-Demo"
      ],
      "geo": {
        "countryISO": "US",
        "city": "New York"
      },
      "utmCookie": "utm=play_organic"
    }
  • Campaign referrer decode

    GET /v1/campaigns/referrer/resolve opendata

    Decodes a Play install referrer into campaign tags and a preferred broker server list consumed by the first-launch campaign check.

    Auth: Unauthenticated GET with a query string appended from the Play install referrer. Response is a query-string of utm_campaign, utm_source and servers/server.

    • utm_campaign
    • utm_source
    • servers
    • server
    • referrer
    GET /v1/campaigns/referrer/resolve?referrer=utm_source%3Dgoogle-play%26utm_campaign%3Dbroker_promo HTTP/1.1
    utm_campaign=broker_promo&utm_source=google-play&servers=ExampleBroker-Live
  • Push token bind

    GET /v1/devices/push/register osint

    Binds the device push token for MT4 quote and order alerts, tagging hid, uid and app_build.

    Auth: Device bind: hid (device id), token (FCM or Huawei push token), optional uid (MetaQuotes id), plus device fingerprint fields. Huawei builds use a sibling route with the same query.

    • hid
    • token
    • uid
    • user
    • device
    • os_build
    • app_build
    • lang
    GET /v1/devices/push/register?hid=dev_9c10&token=<push_token>&uid=mqid_8f21&user=Pixel%208&device=google&os_build=14&app_build=1475&lang=en HTTP/1.1
    {
      "ok": true
    }

Data categories

  • MQL5 community profile
  • broker catalog
  • install geo
  • campaign attribution
  • device push bind
  • community complaints

Where teams use this data

  • White-label broker KYC match

    Compliance joins BrokerInfo legalCountry, regulationStatus and company from the signed network catalog with the login's server name so a desk only routes flow to regulated access points.

  • MQL5 identity join

    A community CRM stores q32 user_login, user_email, metaquotes_id and chat_token next to geo.country from the status call, then matches userId on later complaint filings.

  • Install-geo campaign routing

    Growth ops read ConfirmGeo countryISO and city plus utm_campaign / utm_source from the confirm and Finteza decode calls to seed the first broker list a new install sees.

  • Push-token device inventory

    A desk inventory stores hid, uid, device, os_build and app_build from the GCM/HMS bind so quote and order alerts stay tied to the same MetaQuotes id.

Frequently asked questions

What MQL5 community fields does MetaTrader 4 keep after Google sign-in?

The community user object carries user_id, user_login, user_full_name, user_email, user_phone, metaquotes_id, avatar_url, chat_token, balance_total, balance_locked, balance_free_hosting_minutes and finance_state. A later status read also writes geo.country.

Where does the broker list come from?

The terminal posts a signed request for the mobile broker directory. Each record returns company, legalCountry, regulationStatus, logoHash and the server access-point list; the install-attribution call then adds countryISO and city to pick the first brokers a new install sees.

Which campaign and geo tags arrive on first launch?

The Android install confirmation carries utm_campaign, utm_source, servers, geo (countryISO, city) and utmCookie. A separate referrer decode turns the Play install referrer into the same utm tags plus a preferred servers/server list.

How are Channels and user complaints filed?

A Channels complaint sends token, complaintType, complaintText, chatId, chatLink, author login/name, message body, chatUsersCount, chatType and a signature. A user complaint sends token, signature, complaintType, complaintText and userId.

Apps similar to MetaTrader 4 Forex Trading

  • MetaTrader 5 — Forex, Stocks — MetaTrader 5 is MetaQuotes' multi-asset successor to the MT4 terminal, covering forex, stocks and futures with Expert Advisors, copy-trading signals and Android/iOS clients that brokers license next to the older platform.
  • cTrader — cTrader is Spotware Systems' Limassol electronic platform for margin CFDs on forex, commodities, indexes, stocks and cryptocurrencies, with desktop, web and mobile clients, C# and Python cBots, and built-in cTrader Copy.
  • TradingView: Track All Markets — TradingView's Supercharts cover stocks, crypto, forex pairs and futures and let users place trades through connected brokers such as OANDA and FOREX.com.
  • NinjaTrader — NinjaTrader is a Chicago futures software and brokerage firm with desktop, web and mobile apps for live and simulated trading, customizable charts and NinjaScript strategies.
  • thinkorswim — thinkorswim is Charles Schwab's electronic trading platform geared for self-directed stock, options and futures traders.
  • Interactive Brokers — Interactive Brokers is a Greenwich, Connecticut brokerage that provides automated execution and custody for stocks, options, futures, foreign exchange, bonds and funds, and launched an iOS mobile app in 2009.
  • eToro — eToro is a multi-asset brokerage whose platform covers stocks, ETFs, CFDs and cryptoassets and lets users replicate other investors' trades via copy trading.
  • IQ Option – Trading Platform — IQ Option is a Limassol broker whose web and iOS/Android apps trade CFDs on stocks, forex and crypto, along with commodities and ETFs.

Topics

  • MetaTrader 4 API
  • MQL5 community login
  • MT4 broker white label
  • MetaTrader 4 legalCountry
  • MT4 install geo countryISO
  • MQL5 chat complaint
  • openData Studio

Need this app's data API integrated?

We deliver scoped integrations for any named app — from USD 500 with source-code handoff, or hosted access billed per call. Tell us the data you need.

  • NDA + SOW on every engagement
  • Delivery in 3–7 days
  • Payment only after acceptance
  • Work scoped to authorized use

Get a quote