Skip to content

UpdateBrand

symbol_set_ids is optional. When present, it atomically replaces all SymbolSets assigned to the brand; when omitted, current assignments remain unchanged. Use an empty array to remove all symbol access.

Description: Updates an existing brand configuration.

Access Control

SESSION_ADMIN with super_admin = 1. A brand admin cannot update brand configuration.

HTTP Route

PUT /brand

Request Parameters

Name Type Required Description
brand string Yes Brand name
dark_logo string Yes Dark logo path or URL
light_logo string Yes Light logo path or URL
favicon string Yes Favicon path or URL
terminal_host string Yes Terminal host
affiliate_host string Yes Affiliate Cabinet hostname without scheme, port, or path; the cabinet is served from its root
enable int Yes Enable flag, 0 or 1
can_open_demo int No Allows customer self-service DEMO account opening when set to 1
can_open_real int No Allows customer self-service REAL account opening when set to 1
kyc_required_for_real int No Requires approved customer KYC before REAL account opening when set to 1
default_language string No Default terminal language; existing value is preserved when omitted
settings object No Additional brand settings object

Request Example

{
  "brand": "IonMarkets",
  "dark_logo": "/images/ion-dark.svg",
  "light_logo": "/images/ion-light.svg",
  "favicon": "/images/favicon.ico",
  "terminal_host": "terminal.ionmarkets.com",
  "affiliate_host": "affiliate.ionmarkets.com",
  "enable": 1,
  "can_open_demo": 1,
  "can_open_real": 1,
  "kyc_required_for_real": 1,
  "default_language": "de",
  "settings": {
    "primary_color": "#222222"
  }
}

Default terminal language

default_language controls the redirect for terminal paths without a language prefix. Supported values are:

en, ru, de, es, fr, pt, zh, cn, tr, hu, ja, pl, ko, vi, jp, id, th, fa, ms, it, cs, ro, ar.

The value is normalized to lowercase. Missing and unsupported values fall back to en. For example, with default_language: "de", /sign/in redirects to /de/sign/in, while /en/sign/in is not redirected. Existing query parameters are retained in the redirect URL.

Response Example

{
  "data": "OK"
}

Error Examples

{
  "error": "INVALID_DATA",
  "message": "settings must be an object"
}
{
  "error": "BRAND_UPDATE_ERROR",
  "message": "..."
}