Skip to content

Get Market Symbol

Returns extended details for a single symbol in the context of a specific user/group (permissions, margins, lots, commissions, analytics).

GET

https://{some_domain}/market/symbol

Authorization

This endpoint requires an authenticated session with one of the following access types:

  • SESSION_USER
  • SESSION_MANAGER
  • SESSION_ADMIN
  • SESSION_DEALER

Request

Query Parameters

Field Type Required Description
login int Yes User account login ID
symbol string Yes Symbol code (for example, EURUSD)

Request Example

GET https://{some_domain}/market/symbol?login=100001&symbol=EURUSD
Authorization: <JWT_TOKEN>

Response

Success (200)

{
  "symbol": "EURUSD",
  "description": "Euro vs US Dollar",
  "currency": "USD",
  "margin_currency": "USD",
  "quote_currency": "USD",
  "group": "Forex",
  "digits": 5,
  "trade": 1,
  "spread": 20,
  "spread_balance": 10,
  "swap_enable": 1,
  "margin_divider": 1.0,
  "margin_mode": 0,
  "stops_level": 0,
  "contract_size": 100000,
  "long_only": 0,
  "ask": 1.10501,
  "bid": 1.10498,
  "point": 0.00001,
  "tick_value": 10,
  "tick_size": 0.00001,
  "lot_min": 0.01,
  "lot_max": 100.0,
  "lot_step": 0.01,
  "comm_base": 0,
  "comm_type": 0,
  "performance": {
    "1W": 0.5,
    "1M": 1.2,
    "3M": -0.7,
    "6M": 2.1,
    "YTD": 3.8,
    "1Y": 5.6
  },
  "seasons": [[1, 2, null], [3, 4, 5]],
  "sessions": [
    {
      "trade_overnight": 1,
      "trade": [
        {"open_hour": 0, "open_min": 0, "close_hour": 23, "close_min": 59},
        {"open_hour": 0, "open_min": 0, "close_hour": 0, "close_min": 0},
        {"open_hour": 0, "open_min": 0, "close_hour": 0, "close_min": 0}
      ]
    }
  ]
}

Main Field Groups

  • Identity and pricing: symbol, description, digits, ask, bid, point, tick_value, tick_size.
  • Trading setup: trade, profit_mode, exemode, spread, swap_*, stops_level, gtc_pendings.
  • Margin and volume: margin_*, contract_size, instant_max_volume, max_volume, lot_min, lot_max, lot_step.
  • Group commissions: comm_* (comm_agent, comm_base, comm_type, etc.).
  • Metadata: exchange, category, industry, sector, market_cap, ratings.
  • Analytics: performance, seasons.
  • Trading calendar: sessions for 7 days x up to 3 intervals per day.

Behavioral Notes

  • If symbol is hidden/not allowed for the user's security group, request fails with SYMBOL_NOT_ALLOWED.
  • margin_divider may come from group override (group.secmargins) instead of symbol default.
  • lot_* and comm_* values are taken from group security settings.

Error Responses

HTTP error Description
400 INVALID_DATA Request validation failed (login/symbol)
403 USER_NOT_FOUND_OR_INCORRECT User not found
403 SYMBOL_NOT_ALLOWED Symbol is not available for user's group
404 GROUP_NOT_FOUND User group not found

Error Example

{
  "error": "SYMBOL_NOT_ALLOWED"
}

Notes

  • Endpoint is internally handled by command GetMarketSymbol.
  • Route pattern supports optional trailing slash: GET /market/symbol/?.
  • Response contains many fields; clients should tolerate additional fields in future versions.