REST API

MarketData

get

Required operations: trading-ui

Authorizations
Path parameters
marketSymbolstringRequired
Query parameters
typestringOptional
startDatestring · date-timeOptional
endDatestring · date-timeOptional
countinteger · int32Optional
Responses
200

OK

get
GET /marketdata/api/v4/instruments/{marketSymbol}/history HTTP/1.1
Host: 
Authorization: Bearer JWT
Accept: */*
{
  "data": [
    {
      "instrument": "text",
      "start": "2025-09-09T23:03:37.501Z",
      "end": "2025-09-09T23:03:37.501Z",
      "low": "text",
      "high": "text",
      "open": "text",
      "close": "text"
    }
  ]
}
get

Required operations: trading-ui

Authorizations
Path parameters
marketSymbolstringRequired
Query parameters
limitinteger · int32Optional
offsetinteger · int32Optional
appliedAtFromstring · dateOptional
appliedAtTostring · dateOptional
Responses
200

OK

get
GET /marketdata/api/v4/instruments/{marketSymbol}/funding HTTP/1.1
Host: 
Authorization: Bearer JWT
Accept: */*
{
  "fundingData": [
    {
      "appliedAt": "2025-09-09T23:03:37.501Z",
      "interval": 1,
      "rate": "text"
    }
  ],
  "hasMore": true
}

Trading

get

Required operations: trading-ui

Authorizations
Responses
200

OK

get
GET /frontoffice/api/v4/account-margin-settings/assets HTTP/1.1
Host: 
Authorization: Bearer JWT
Accept: */*
{
  "assets": [
    {
      "assetId": "text",
      "assetName": "text",
      "available": "text",
      "total": "text",
      "marginRatio": "text",
      "isSelected": true
    }
  ]
}
post

Required operations: trading-ui

Authorizations
Path parameters
assetIdstringRequired
Responses
200

OK

Responseobject
post
POST /frontoffice/api/v4/account-margin-settings/assets/{assetId} HTTP/1.1
Host: 
Authorization: Bearer JWT
Accept: */*
{}
delete

Required operations: trading-ui

Authorizations
Path parameters
assetIdstringRequired
Responses
200

OK

Responseobject
delete
DELETE /frontoffice/api/v4/account-margin-settings/assets/{assetId} HTTP/1.1
Host: 
Authorization: Bearer JWT
Accept: */*
{}
post

Required operations: trading-ui

Authorizations
Header parameters
accountIdstringRequired
Body
Responses
200

OK

post
POST /frontoffice/api/cfd/v4/order-data HTTP/1.1
Host: 
Authorization: Bearer JWT
accountId: text
Content-Type: application/json; x-api-version=4.0
Accept: */*
Content-Length: 285

{
  "order": {
    "marketId": "text",
    "orderType": "Unspecified",
    "side": "Unspecified",
    "requestedPrice": "text",
    "requestedLotAmount": "text",
    "leverage": 1,
    "takeProfit": {
      "triggerType": "Unspecified",
      "triggerSize": "text"
    },
    "stopLoss": {
      "triggerType": "Unspecified",
      "triggerSize": "text",
      "isTrailing": true
    }
  }
}
{
  "order": {
    "requiredMarginInRAT": "text",
    "quoteAmount": "text",
    "commissionAmountInRAT": "text",
    "marginLevel": "text",
    "takeProfit": {
      "price": "text",
      "rate": "text",
      "points": 1,
      "pnl": "text"
    },
    "stopLoss": {
      "price": "text",
      "rate": "text",
      "points": 1,
      "pnl": "text"
    }
  }
}
post

Required operations: trading-ui

Authorizations
Header parameters
accountIdstringRequired
Body
Responses
200

OK

post
POST /frontoffice/api/cfd/v4/orders HTTP/1.1
Host: 
Authorization: Bearer JWT
accountId: text
Content-Type: application/json; x-api-version=4.0
Accept: */*
Content-Length: 271

{
  "order": {
    "marketId": "text",
    "orderType": "Unspecified",
    "side": "Unspecified",
    "requestedPrice": "text",
    "requestedLotAmount": "text",
    "timeInForce": "Unspecified",
    "cancellationDate": "text",
    "leverage": 1,
    "takeProfit": {
      "price": "text"
    },
    "stopLoss": {
      "price": "text",
      "isTrailing": true
    }
  }
}
{
  "order": {
    "orderId": "text",
    "status": "Unspecified"
  }
}
post

Required operations: trading-ui

Authorizations
Header parameters
accountIdstringRequired
Body
Responses
200

OK

post
POST /frontoffice/api/cfd/v4/stop-orders HTTP/1.1
Host: 
Authorization: Bearer JWT
accountId: text
Content-Type: application/json; x-api-version=4.0
Accept: */*
Content-Length: 296

{
  "order": {
    "marketId": "text",
    "orderType": "Unspecified",
    "side": "Unspecified",
    "requestedPrice": "text",
    "activationPrice": "text",
    "requestedLotAmount": "text",
    "timeInForce": "Unspecified",
    "cancellationDate": "text",
    "leverage": 1,
    "takeProfit": {
      "price": "text"
    },
    "stopLoss": {
      "price": "text",
      "isTrailing": true
    }
  }
}
{
  "order": {
    "orderId": "text",
    "status": "Unspecified"
  }
}
get

Required operations: trading-ui

Authorizations
Responses
200

OK

get
GET /frontoffice/api/v4/markets-categories HTTP/1.1
Host: 
Authorization: Bearer JWT
Accept: */*
{
  "categories": [
    {
      "id": "text",
      "name": "text",
      "categories": [
        {
          "id": "text",
          "name": "text",
          "categories": [
            "[Circular Reference]"
          ]
        }
      ]
    }
  ]
}
get

Required operations: trading-ui

Authorizations
Query parameters
categoryIdstringOptional
Responses
200

OK

get
GET /frontoffice/api/v4/markets HTTP/1.1
Host: 
Authorization: Bearer JWT
Accept: */*
[
  {
    "marketId": "text",
    "displayName": "text",
    "fullName": "text",
    "type": "Unspecified",
    "subtype": "Unspecified"
  }
]
get

Required operations: trading-ui

Authorizations
Path parameters
marketIdstringRequired
Responses
200

OK

get
GET /frontoffice/api/v4/markets/{marketId} HTTP/1.1
Host: 
Authorization: Bearer JWT
Accept: */*
{
  "marketId": "text",
  "displayName": "text",
  "fullName": "text",
  "baseAssetId": "text",
  "quoteAssetId": "text",
  "minAmount": "text",
  "maxBaseAmount": "text",
  "priceDeviation": "text",
  "priceScale": 1,
  "amountScale": 1,
  "type": "Unspecified",
  "subtype": "Unspecified",
  "swapSettings": {
    "type": "Unspecified",
    "shortPositionSettings": {
      "size": "text",
      "assetId": "text"
    },
    "longPositionSettings": {
      "size": "text",
      "assetId": "text"
    }
  },
  "lotSize": 1,
  "minLotAmount": "text",
  "maxLotAmount": 1,
  "tickSize": "text",
  "lotStep": "text",
  "slippageRate": "text",
  "maxLeverage": 1,
  "isConstLeverage": true,
  "calendar": {
    "timeZoneId": "text",
    "tradingSessions": [
      {
        "dayOfWeek": "Unspecified",
        "timeIntervals": [
          {
            "start": "23:03:37",
            "end": "23:03:37"
          }
        ]
      }
    ],
    "sessionOverrides": [
      {
        "date": "2025-09-09",
        "timeIntervals": [
          {
            "start": "23:03:37",
            "end": "23:03:37"
          }
        ]
      }
    ]
  },
  "fundingStartTime": "23:03:37",
  "fundingIntervalInHours": 1
}
get

Required operations: trading-ui

Authorizations
Path parameters
orderIdstringRequired
Header parameters
accountIdstringRequired
Responses
200

OK

get
GET /frontoffice/api/v4/orders/{orderId} HTTP/1.1
Host: 
Authorization: Bearer JWT
accountId: text
Accept: */*
{
  "order": {
    "marketId": "text",
    "marketType": "Unspecified",
    "marketDisplayName": "text",
    "marketFullName": "text",
    "orderId": "text",
    "timeInForce": "Unspecified",
    "status": "Unspecified",
    "source": "Unspecified",
    "reason": "Trader",
    "side": "Unspecified",
    "orderType": "Unspecified",
    "requestedAmount": "text",
    "remainingAmount": "text",
    "requestedPrice": "text",
    "executionPrice": "text",
    "createdAt": "2025-09-09T23:03:37.501Z",
    "updatedAt": "2025-09-09T23:03:37.501Z",
    "cancellationDate": "2025-09-09T23:03:37.501Z",
    "commissionAssetId": "text",
    "commissionAmount": "text",
    "leverage": 1,
    "rejectDetails": "text",
    "fillFactor": "text"
  }
}
post

Required operations: trading-ui

Authorizations
Header parameters
accountIdstringRequired
Body
limitinteger · int32 | nullableOptional
createdAtFromstring · date-time | nullableOptional
createdAtTostring · date-time | nullableOptional
lastOrderIdstring | nullableOptional
Responses
200

OK

post
POST /frontoffice/api/v4/order-list HTTP/1.1
Host: 
Authorization: Bearer JWT
accountId: text
Content-Type: application/json; x-api-version=4.0
Accept: */*
Content-Length: 146

{
  "limit": 1,
  "createdAtFrom": "2025-09-09T23:03:37.501Z",
  "createdAtTo": "2025-09-09T23:03:37.501Z",
  "orderStatus": [
    "Unspecified"
  ],
  "lastOrderId": "text"
}
{
  "data": [
    {
      "marketId": "text",
      "marketType": "Unspecified",
      "marketDisplayName": "text",
      "marketFullName": "text",
      "orderId": "text",
      "timeInForce": "Unspecified",
      "status": "Unspecified",
      "source": "Unspecified",
      "reason": "Trader",
      "side": "Unspecified",
      "orderType": "Unspecified",
      "requestedAmount": "text",
      "remainingAmount": "text",
      "requestedPrice": "text",
      "executionPrice": "text",
      "createdAt": "2025-09-09T23:03:37.501Z",
      "updatedAt": "2025-09-09T23:03:37.501Z",
      "cancellationDate": "2025-09-09T23:03:37.501Z",
      "commissionAssetId": "text",
      "commissionAmount": "text",
      "leverage": 1,
      "rejectDetails": "text",
      "fillFactor": "text"
    }
  ]
}
post

Required operations: trading-ui

Authorizations
Header parameters
accountIdstringRequired
Body
createdAtFromstring · date-time | nullableOptional
createdAtTostring · date-time | nullableOptional
limitinteger · int32 | nullableOptional
lastOrderIdstring | nullableOptional
Responses
200

OK

post
POST /frontoffice/api/v4/orders/closed-positions HTTP/1.1
Host: 
Authorization: Bearer JWT
accountId: text
Content-Type: application/json; x-api-version=4.0
Accept: */*
Content-Length: 116

{
  "createdAtFrom": "2025-09-09T23:03:37.501Z",
  "createdAtTo": "2025-09-09T23:03:37.501Z",
  "limit": 1,
  "lastOrderId": "text"
}
{
  "data": [
    {
      "marketId": "text",
      "marketFullName": "text",
      "marketDisplayName": "text",
      "marketType": "Unspecified",
      "orderId": "text",
      "orderType": "Unspecified",
      "timeInForce": "Unspecified",
      "side": "Unspecified",
      "positionCloseLotAmount": "text",
      "reason": "Trader",
      "realizedPnlInRAT": "text",
      "closedAt": "2025-09-09T23:03:37.501Z",
      "positionId": "text",
      "openPrice": "text",
      "closePrice": "text",
      "positionPriceInRAT": "text",
      "rateToRAT": "text",
      "openedAt": "2025-09-09T23:03:37.501Z"
    }
  ],
  "isExceeded": true
}
post

Required operations: trading-ui

Authorizations
Header parameters
accountIdstringRequired
Body
orderIdsstring[]Optional
limitinteger · int32 | nullableOptional
Responses
200

OK

post
POST /frontoffice/api/v4/orders/executions/list HTTP/1.1
Host: 
Authorization: Bearer JWT
accountId: text
Content-Type: application/json; x-api-version=4.0
Accept: */*
Content-Length: 31

{
  "orderIds": [
    "text"
  ],
  "limit": 1
}
{
  "executions": [
    {
      "positionId": "text",
      "orderId": "text",
      "side": "Unspecified",
      "reason": "Trader",
      "createdAt": "2025-09-09T23:03:37.501Z",
      "executionId": "text",
      "baseAmount": "text",
      "executionPrice": "text",
      "realizedPnlInRAT": "text",
      "commissionAmountInRAT": "text",
      "commissions": [
        {
          "assetId": "text",
          "amount": "text"
        }
      ]
    }
  ],
  "isExceeded": true
}
post

Required operations: trading-ui

Authorizations
Path parameters
orderIdstringRequired
Header parameters
accountIdstringRequired
Body
limitinteger · int32 | nullableOptional
lastExecutionIdstring | nullableOptional
Responses
200

OK

post
POST /frontoffice/api/v4/orders/{orderId}/executions/list HTTP/1.1
Host: 
Authorization: Bearer JWT
accountId: text
Content-Type: application/json; x-api-version=4.0
Accept: */*
Content-Length: 36

{
  "limit": 1,
  "lastExecutionId": "text"
}
{
  "executions": [
    {
      "positionId": "text",
      "orderId": "text",
      "side": "Unspecified",
      "reason": "Trader",
      "createdAt": "2025-09-09T23:03:37.501Z",
      "executionId": "text",
      "baseAmount": "text",
      "executionPrice": "text",
      "realizedPnlInRAT": "text",
      "commissionAmountInRAT": "text",
      "commissions": [
        {
          "assetId": "text",
          "amount": "text"
        }
      ]
    }
  ],
  "isExceeded": true
}
post

Required operations: trading-ui

Authorizations
Header parameters
accountIdstringRequired
Body
Responses
200

OK

post
POST /frontoffice/api/perpetual/v4/order-data HTTP/1.1
Host: 
Authorization: Bearer JWT
accountId: text
Content-Type: application/json; x-api-version=4.0
Accept: */*
Content-Length: 285

{
  "order": {
    "marketId": "text",
    "orderType": "Unspecified",
    "side": "Unspecified",
    "requestedPrice": "text",
    "requestedLotAmount": "text",
    "leverage": 1,
    "takeProfit": {
      "triggerType": "Unspecified",
      "triggerSize": "text"
    },
    "stopLoss": {
      "triggerType": "Unspecified",
      "triggerSize": "text",
      "isTrailing": true
    }
  }
}
{
  "order": {
    "requiredMarginInRAT": "text",
    "quoteAmount": "text",
    "commissionAmountInRAT": "text",
    "marginLevel": "text",
    "takeProfit": {
      "price": "text",
      "rate": "text",
      "points": 1,
      "pnl": "text"
    },
    "stopLoss": {
      "price": "text",
      "rate": "text",
      "points": 1,
      "pnl": "text"
    }
  }
}
post

Required operations: trading-ui

Authorizations
Header parameters
accountIdstringRequired
Body
Responses
200

OK

post
POST /frontoffice/api/perpetual/v4/orders HTTP/1.1
Host: 
Authorization: Bearer JWT
accountId: text
Content-Type: application/json; x-api-version=4.0
Accept: */*
Content-Length: 271

{
  "order": {
    "marketId": "text",
    "orderType": "Unspecified",
    "side": "Unspecified",
    "requestedPrice": "text",
    "requestedLotAmount": "text",
    "timeInForce": "Unspecified",
    "cancellationDate": "text",
    "leverage": 1,
    "takeProfit": {
      "price": "text"
    },
    "stopLoss": {
      "price": "text",
      "isTrailing": true
    }
  }
}
{
  "order": {
    "orderId": "text",
    "status": "Unspecified"
  }
}
post

Required operations: trading-ui

Authorizations
Header parameters
accountIdstringRequired
Body
Responses
200

OK

post
POST /frontoffice/api/perpetual/v4/stop-orders HTTP/1.1
Host: 
Authorization: Bearer JWT
accountId: text
Content-Type: application/json; x-api-version=4.0
Accept: */*
Content-Length: 296

{
  "order": {
    "marketId": "text",
    "orderType": "Unspecified",
    "side": "Unspecified",
    "requestedPrice": "text",
    "activationPrice": "text",
    "requestedLotAmount": "text",
    "timeInForce": "Unspecified",
    "cancellationDate": "text",
    "leverage": 1,
    "takeProfit": {
      "price": "text"
    },
    "stopLoss": {
      "price": "text",
      "isTrailing": true
    }
  }
}
{
  "order": {
    "orderId": "text",
    "status": "Unspecified"
  }
}
post

Required operations: trading-ui

Authorizations
Header parameters
accountIdstringRequired
Body
positionIdsstring[]Optional
limitinteger · int32 | nullableOptional
Responses
200

OK

post
POST /frontoffice/api/v4/positions/executions/list HTTP/1.1
Host: 
Authorization: Bearer JWT
accountId: text
Content-Type: application/json; x-api-version=4.0
Accept: */*
Content-Length: 34

{
  "positionIds": [
    "text"
  ],
  "limit": 1
}
{
  "executions": [
    {
      "positionId": "text",
      "orderId": "text",
      "side": "Unspecified",
      "reason": "Trader",
      "createdAt": "2025-09-09T23:03:37.501Z",
      "executionId": "text",
      "baseAmount": "text",
      "executionPrice": "text",
      "commissionAmountInRAT": "text",
      "commissions": [
        {
          "assetId": "text",
          "amount": "text"
        }
      ]
    }
  ]
}
post

Required operations: trading-ui

Authorizations
Path parameters
positionIdstringRequired
Header parameters
accountIdstringRequired
Body
limitinteger · int32 | nullableOptional
offsetinteger · int32 | nullableOptional
Responses
200

OK

post
POST /frontoffice/api/v4/positions/{positionId}/executions/list HTTP/1.1
Host: 
Authorization: Bearer JWT
accountId: text
Content-Type: application/json; x-api-version=4.0
Accept: */*
Content-Length: 22

{
  "limit": 1,
  "offset": 1
}
{
  "executions": [
    {
      "positionId": "text",
      "orderId": "text",
      "side": "Unspecified",
      "reason": "Trader",
      "createdAt": "2025-09-09T23:03:37.501Z",
      "executionId": "text",
      "baseAmount": "text",
      "executionPrice": "text",
      "commissionAmountInRAT": "text",
      "commissions": [
        {
          "assetId": "text",
          "amount": "text"
        }
      ]
    }
  ]
}
post

Required operations: trading-ui

Authorizations
Path parameters
positionIdstringRequired
Header parameters
accountIdstringRequired
Body
closePositionLotAmountstring | nullableOptional
Responses
200

OK

post
POST /frontoffice/api/v4/positions/{positionId}/close HTTP/1.1
Host: 
Authorization: Bearer JWT
accountId: text
Content-Type: application/json; x-api-version=4.0
Accept: */*
Content-Length: 33

{
  "closePositionLotAmount": "text"
}
{
  "positionId": "text"
}
post

Required operations: trading-ui

Authorizations
Path parameters
positionIdstringRequired
Header parameters
accountIdstringRequired
Body
closePositionLotAmountstring | nullableOptional
closePositionLotAmountInPercentstring | nullableOptional
Responses
200

OK

post
POST /frontoffice/api/v4/positions/{positionId}/close/calculation HTTP/1.1
Host: 
Authorization: Bearer JWT
accountId: text
Content-Type: application/json; x-api-version=4.0
Accept: */*
Content-Length: 74

{
  "closePositionLotAmount": "text",
  "closePositionLotAmountInPercent": "text"
}
{
  "closePositionLotAmount": "text",
  "closePositionLotAmountInPercent": "text"
}
put

Required operations: trading-ui

Authorizations
Path parameters
positionIdstringRequired
Header parameters
accountIdstringRequired
Body
Responses
200

OK

put
PUT /frontoffice/api/v4/positions/{positionId}/triggers HTTP/1.1
Host: 
Authorization: Bearer JWT
accountId: text
Content-Type: application/json; x-api-version=4.0
Accept: */*
Content-Length: 77

{
  "takeProfit": {
    "price": "text"
  },
  "stopLoss": {
    "price": "text",
    "isTrailing": true
  }
}
{
  "positionId": "text"
}
post

Required operations: trading-ui

Authorizations
Path parameters
positionIdstringRequired
Header parameters
accountIdstringRequired
Body
Responses
200

OK

post
POST /frontoffice/api/v4/positions/{positionId}/trigger-data HTTP/1.1
Host: 
Authorization: Bearer JWT
accountId: text
Content-Type: application/json; x-api-version=4.0
Accept: */*
Content-Length: 145

{
  "takeProfit": {
    "triggerType": "Unspecified",
    "triggerSize": "text"
  },
  "stopLoss": {
    "triggerType": "Unspecified",
    "triggerSize": "text",
    "isTrailing": true
  }
}
{
  "takeProfit": {
    "price": "text",
    "rate": "text",
    "points": 1,
    "pnl": "text"
  },
  "stopLoss": {
    "price": "text",
    "rate": "text",
    "points": 1,
    "pnl": "text"
  }
}

Accounts

get

Required operations: trading-ui

Authorizations
Responses
200

OK

application/json
get
GET /frontoffice/api/v3/accounts HTTP/1.1
Host: 
Authorization: Bearer JWT
Accept: */*
200

OK

[
  {
    "accountId": "text",
    "accountName": "text",
    "accountType": "Hedging",
    "totalBalanceInRAT": "text"
  }
]

Assets

get

Required operations: trading-ui

Authorizations
Responses
200

OK

application/json
get
GET /frontoffice/api/v3/assets HTTP/1.1
Host: 
Authorization: Bearer JWT
Accept: */*
200

OK

[
  {
    "assetId": "text",
    "assetName": "text",
    "isRootAsset": true
  }
]

Markets

get

Required operations: trading-ui

Authorizations
Responses
200

OK

application/json
get
GET /frontoffice/api/v3/markets HTTP/1.1
Host: 
Authorization: Bearer JWT
Accept: */*
200

OK

[
  {
    "marketId": "text",
    "displayName": "text"
  }
]
get

Required operations: trading-ui

Authorizations
Path parameters
marketIdstringRequired
Responses
200

OK

application/json
get
GET /frontoffice/api/v3/markets/{marketId} HTTP/1.1
Host: 
Authorization: Bearer JWT
Accept: */*
{
  "marketId": "text",
  "displayName": "text",
  "baseAssetId": "text",
  "quoteAssetId": "text",
  "minAmount": "text",
  "priceDeviation": "text",
  "priceScale": 1,
  "amountScale": 1,
  "status": "text",
  "side": "text",
  "isHidden": true
}

Orders

post

Required operations: trading-ui

Authorizations
Header parameters
accountIdstringRequired
Body
Responses
200

OK

application/json
post
POST /frontoffice/api/v3/order-data HTTP/1.1
Host: 
Authorization: Bearer JWT
accountId: text
Content-Type: application/json
Accept: */*
Content-Length: 146

{
  "order": {
    "marketId": "text",
    "orderType": "Market",
    "side": "Buy",
    "requestedPrice": "text",
    "requestedBaseAmount": "text",
    "requestedQuoteAmount": "text"
  }
}
{
  "order": {
    "baseAmount": "text",
    "quoteAmount": "text",
    "commissionAmount": "text",
    "total": "text"
  }
}
post

Required operations: trading-ui

Authorizations
Header parameters
accountIdstringRequired
Body
Responses
200

OK

application/json
post
POST /frontoffice/api/v3/orders HTTP/1.1
Host: 
Authorization: Bearer JWT
accountId: text
Content-Type: application/json
Accept: */*
Content-Length: 158

{
  "order": {
    "marketId": "text",
    "orderType": "Market",
    "side": "Buy",
    "requestedPrice": "text",
    "requestedAmount": "text",
    "timeInForce": "Gtc",
    "cancellationDate": "text"
  }
}
{
  "order": {
    "marketId": "text",
    "marketDisplayName": "text",
    "orderId": "text",
    "orderType": "Market",
    "side": "Buy",
    "status": "Started",
    "source": "Manual",
    "timeInForce": "Gtc",
    "commission": "text",
    "requestedAmount": "text",
    "remainingAmount": "text",
    "requestedPrice": "text",
    "executionPrice": "text",
    "createdAt": "2025-09-09T23:03:37.501Z",
    "updatedAt": "2025-09-09T23:03:37.501Z",
    "rejectDetails": "text",
    "cancellationDate": "2025-09-09T23:03:37.501Z",
    "fillFactor": "text"
  }
}
get

Required operations: trading-ui

Authorizations
Path parameters
orderIdstringRequired
Header parameters
accountIdstringRequired
Responses
200

OK

application/json
get
GET /frontoffice/api/v3/orders/{orderId} HTTP/1.1
Host: 
Authorization: Bearer JWT
accountId: text
Accept: */*
{
  "order": {
    "marketId": "text",
    "marketDisplayName": "text",
    "orderId": "text",
    "orderType": "Market",
    "side": "Buy",
    "status": "Started",
    "source": "Manual",
    "timeInForce": "Gtc",
    "commission": "text",
    "requestedAmount": "text",
    "remainingAmount": "text",
    "requestedPrice": "text",
    "executionPrice": "text",
    "createdAt": "2025-09-09T23:03:37.501Z",
    "updatedAt": "2025-09-09T23:03:37.501Z",
    "rejectDetails": "text",
    "cancellationDate": "2025-09-09T23:03:37.501Z",
    "fillFactor": "text"
  }
}
delete

Required operations: trading-ui

Authorizations
Path parameters
orderIdstringRequired
Header parameters
accountIdstringRequired
Responses
200

OK

application/json
delete
DELETE /frontoffice/api/v3/orders/{orderId} HTTP/1.1
Host: 
Authorization: Bearer JWT
accountId: text
Accept: */*
{
  "order": {
    "marketId": "text",
    "marketDisplayName": "text",
    "orderId": "text",
    "orderType": "Market",
    "side": "Buy",
    "status": "Started",
    "source": "Manual",
    "timeInForce": "Gtc",
    "commission": "text",
    "requestedAmount": "text",
    "remainingAmount": "text",
    "requestedPrice": "text",
    "executionPrice": "text",
    "createdAt": "2025-09-09T23:03:37.501Z",
    "updatedAt": "2025-09-09T23:03:37.501Z",
    "rejectDetails": "text",
    "cancellationDate": "2025-09-09T23:03:37.501Z",
    "fillFactor": "text"
  }
}
post

Required operations: trading-ui

Authorizations
Header parameters
accountIdstringRequired
Body
createdAtFromstring · date-time | nullableOptional
createdAtTostring · date-time | nullableOptional
lastOrderIdstring | nullableOptional
limitinteger · int32 | nullableOptional
Responses
200

OK

application/json
post
POST /frontoffice/api/v3/order-list HTTP/1.1
Host: 
Authorization: Bearer JWT
accountId: text
Content-Type: application/json
Accept: */*
Content-Length: 142

{
  "createdAtFrom": "2025-09-09T23:03:37.501Z",
  "createdAtTo": "2025-09-09T23:03:37.501Z",
  "orderStatus": [
    "Started"
  ],
  "lastOrderId": "text",
  "limit": 1
}
{
  "data": [
    {
      "marketId": "text",
      "marketDisplayName": "text",
      "orderId": "text",
      "orderType": "Market",
      "side": "Buy",
      "status": "Started",
      "source": "Manual",
      "timeInForce": "Gtc",
      "commission": "text",
      "requestedAmount": "text",
      "remainingAmount": "text",
      "requestedPrice": "text",
      "executionPrice": "text",
      "createdAt": "2025-09-09T23:03:37.501Z",
      "updatedAt": "2025-09-09T23:03:37.501Z",
      "rejectDetails": "text",
      "cancellationDate": "2025-09-09T23:03:37.501Z",
      "fillFactor": "text"
    }
  ]
}

Stop orders

post

Required operations: trading-ui

Authorizations
Header parameters
accountIdstringRequired
Body
Responses
200

OK

application/json
post
POST /frontoffice/api/v3/stop-orders HTTP/1.1
Host: 
Authorization: Bearer JWT
accountId: text
Content-Type: application/json
Accept: */*
Content-Length: 183

{
  "order": {
    "marketId": "text",
    "orderType": "Market",
    "side": "Buy",
    "requestedPrice": "text",
    "activationPrice": "text",
    "requestedAmount": "text",
    "timeInForce": "Gtc",
    "cancellationDate": "text"
  }
}
{
  "order": {
    "marketId": "text",
    "marketDisplayName": "text",
    "orderId": "text",
    "orderType": "Market",
    "side": "Buy",
    "requestedPrice": "text",
    "activationPrice": "text",
    "requestedAmount": "text",
    "timeInForce": "Gtc",
    "status": "WaitingForActivation",
    "createdAt": "2025-09-09T23:03:37.501Z",
    "updatedAt": "2025-09-09T23:03:37.501Z",
    "cancellationDate": "2025-09-09T23:03:37.501Z"
  }
}
delete

Required operations: trading-ui

Authorizations
Path parameters
stopOrderIdstringRequired
Header parameters
accountIdstringRequired
Responses
200

OK

application/json
delete
DELETE /frontoffice/api/v3/stop-orders/{stopOrderId} HTTP/1.1
Host: 
Authorization: Bearer JWT
accountId: text
Accept: */*
{
  "order": {
    "marketId": "text",
    "marketDisplayName": "text",
    "orderId": "text",
    "orderType": "Market",
    "side": "Buy",
    "requestedPrice": "text",
    "activationPrice": "text",
    "requestedAmount": "text",
    "timeInForce": "Gtc",
    "status": "WaitingForActivation",
    "createdAt": "2025-09-09T23:03:37.501Z",
    "updatedAt": "2025-09-09T23:03:37.501Z",
    "cancellationDate": "2025-09-09T23:03:37.501Z"
  }
}

Margin levels

get

Required operations: trading-ui

Authorizations
Responses
200

OK

application/json
get
GET /frontoffice/api/v3/margin-levels HTTP/1.1
Host: 
Authorization: Bearer JWT
Accept: */*
200

OK

{
  "marginCallLevel": "text",
  "stopOutLevel": "text"
}

Trading UI settings

get

Required operations: trading-ui

Authorizations
Responses
200

OK

application/json
get
GET /frontoffice/api/v3/ui/settings HTTP/1.1
Host: 
Authorization: Bearer JWT
Accept: */*
{
  "selectedLayoutId": "text",
  "isIntroductionTourCompleted": true,
  "is24HTimeFormatUsed": true,
  "theme": "text"
}
patch

Required operations: trading-ui

Authorizations
Body
selectedLayoutIdstring | nullableOptional
isIntroductionTourCompletedboolean | nullableOptional
is24HTimeFormatUsedboolean | nullableOptional
themestring | nullableOptional
Responses
200

OK

No content

patch
PATCH /frontoffice/api/v3/ui/settings HTTP/1.1
Host: 
Authorization: Bearer JWT
Content-Type: application/json
Accept: */*
Content-Length: 104

{
  "selectedLayoutId": "text",
  "isIntroductionTourCompleted": true,
  "is24HTimeFormatUsed": true,
  "theme": "text"
}

No content

Layouts

get

Required operations: trading-ui

Authorizations
Responses
200

OK

application/json
get
GET /frontoffice/api/v3/ui/layouts HTTP/1.1
Host: 
Authorization: Bearer JWT
Accept: */*
{
  "layouts": [
    {
      "id": "text",
      "name": "text",
      "tabs": [
        {
          "id": "text",
          "selectedWidgetId": "text",
          "sizes": {
            "x": 1,
            "y": 1,
            "cols": 1,
            "rows": 1,
            "layerIndex": 1
          },
          "widgets": [
            {
              "id": "text",
              "settings": {
                "pairs": [
                  "text"
                ]
              },
              "type": "text"
            }
          ]
        }
      ]
    }
  ]
}
post

Required operations: trading-ui

Authorizations
Body
idstring | nullableOptional
namestring | nullableOptional
Responses
201

Created

No content

post
POST /frontoffice/api/v3/ui/layouts HTTP/1.1
Host: 
Authorization: Bearer JWT
Content-Type: application/json
Accept: */*
Content-Length: 209

{
  "id": "text",
  "name": "text",
  "tabs": [
    {
      "id": "text",
      "selectedWidgetId": "text",
      "sizes": {
        "x": 1,
        "y": 1,
        "cols": 1,
        "rows": 1,
        "layerIndex": 1
      },
      "widgets": [
        {
          "id": "text",
          "type": "BbpFavorites",
          "settings": {
            "pairs": [
              "text"
            ]
          }
        }
      ]
    }
  ]
}

No content

put

Required operations: trading-ui

Authorizations
Path parameters
idstringRequired
Body
Responses
200

OK

No content

put
PUT /frontoffice/api/v3/ui/layouts/{id} HTTP/1.1
Host: 
Authorization: Bearer JWT
Content-Type: application/json
Accept: */*
Content-Length: 183

{
  "tabs": [
    {
      "id": "text",
      "selectedWidgetId": "text",
      "sizes": {
        "x": 1,
        "y": 1,
        "cols": 1,
        "rows": 1,
        "layerIndex": 1
      },
      "widgets": [
        {
          "id": "text",
          "type": "BbpFavorites",
          "settings": {
            "pairs": [
              "text"
            ]
          }
        }
      ]
    }
  ]
}

No content

delete

Required operations: trading-ui

Authorizations
Path parameters
idstringRequired
Responses
200

OK

No content

delete
DELETE /frontoffice/api/v3/ui/layouts/{id} HTTP/1.1
Host: 
Authorization: Bearer JWT
Accept: */*

No content

put

Required operations: trading-ui

Authorizations
Path parameters
idstringRequired
Body
namestring | nullableOptional
Responses
200

OK

No content

put
PUT /frontoffice/api/v3/ui/layouts/{id}/name HTTP/1.1
Host: 
Authorization: Bearer JWT
Content-Type: application/json
Accept: */*
Content-Length: 15

{
  "name": "text"
}

No content

put

Required operations: trading-ui

Authorizations
Body
layoutOrderstring[]Optional
Responses
200

OK

No content

put
PUT /frontoffice/api/v3/ui/layouts/order HTTP/1.1
Host: 
Authorization: Bearer JWT
Content-Type: application/json
Accept: */*
Content-Length: 24

{
  "layoutOrder": [
    "text"
  ]
}

No content

Templates

get

Required operations: trading-ui

Authorizations
Responses
200

OK

application/json
get
GET /frontoffice/api/v3/ui/templates HTTP/1.1
Host: 
Authorization: Bearer JWT
Accept: */*
{
  "templates": [
    {
      "id": "text",
      "name": "text",
      "isDefault": true,
      "tabs": [
        {
          "id": "text",
          "selectedWidgetId": "text",
          "sizes": {
            "x": 1,
            "y": 1,
            "cols": 1,
            "rows": 1,
            "layerIndex": 1
          },
          "widgets": [
            {
              "id": "text",
              "type": "text"
            }
          ]
        }
      ]
    }
  ]
}

System info

get

Required operations: trading-ui

Authorizations
Responses
200

OK

application/json
get
GET /frontoffice/api/v3/info HTTP/1.1
Host: 
Authorization: Bearer JWT
Accept: */*
200

OK

{
  "serverTime": "text",
  "serverTimeZone": "text"
}

Notification subscriptions

post

Required operations: trading-ui

Authorizations
Header parameters
accountIdstringRequired
Body
marketIdsstring[] | nullableOptional
limitinteger · int32 | nullableOptional
offsetinteger · int32 | nullableOptional
Responses
200

OK

application/json
post
POST /frontoffice/api/v3/notification-subscriptions/marketPrice/markets HTTP/1.1
Host: 
Authorization: Bearer JWT
accountId: text
Content-Type: application/json
Accept: */*
Content-Length: 43

{
  "marketIds": [
    "text"
  ],
  "limit": 1,
  "offset": 1
}
{
  "markets": [
    {
      "marketId": "text",
      "subscriptions": [
        {
          "id": "text",
          "price": "text",
          "condition": "Gte"
        }
      ]
    }
  ]
}
post

Required operations: trading-ui

Authorizations
Header parameters
accountIdstringRequired
Body
marketIdstring | nullableOptional
pricestring | nullableOptional
conditionstring · enumOptionalPossible values:
Responses
200

OK

application/json
post
POST /frontoffice/api/v3/notification-subscriptions/marketPrice HTTP/1.1
Host: 
Authorization: Bearer JWT
accountId: text
Content-Type: application/json
Accept: */*
Content-Length: 52

{
  "marketId": "text",
  "price": "text",
  "condition": "Gte"
}
{
  "id": "text"
}
delete

Required operations: trading-ui

Authorizations
Header parameters
accountIdstringRequired
Body
idsstring[] | nullableOptional
Responses
200

OK

application/json
Responseobject
delete
DELETE /frontoffice/api/v3/notification-subscriptions/marketPrice HTTP/1.1
Host: 
Authorization: Bearer JWT
accountId: text
Content-Type: application/json
Accept: */*
Content-Length: 16

{
  "ids": [
    "text"
  ]
}
{}

History server

post

Required operations: view-active-accounts

Authorizations
Body
Responses
200

OK

post
POST /api/active-accounts HTTP/1.1
Host: 
Authorization: Bearer JWT
Content-Type: application/json
Accept: */*
Content-Length: 69

{
  "filters": [
    {
      "entryType": "Unspecified",
      "field": "text",
      "value": true
    }
  ]
}
200

OK

{
  "total": 1
}
get

Required operations: view-balances

Authorizations
Path parameters
userIdstringRequired
Responses
200

OK

get
GET /api/users/{userId}/balances HTTP/1.1
Host: 
Authorization: Bearer JWT
Accept: */*
{
  "totalBalanceInRAT": 1
}
post

Required operations: view-balances

Authorizations
Body
Responses
200

OK

post
POST /api/users/balances HTTP/1.1
Host: 
Authorization: Bearer JWT
Content-Type: application/json
Accept: */*
Content-Length: 69

{
  "filters": [
    {
      "entryType": "Unspecified",
      "field": "text",
      "value": true
    }
  ]
}
{
  "data": [
    {
      "userId": "text",
      "assetId": "text",
      "assetName": "text",
      "totalAssetAmount": 1,
      "availableAssetAmount": 1,
      "lockedAssetAmount": 1,
      "rateToRootAsset": 1,
      "totalAssetAmountInRAT": 1,
      "availableAssetAmountInRAT": 1,
      "lockedAssetAmountInRAT": 1
    }
  ]
}
post

Required operations: view-balances

Authorizations
Body
Responses
200

OK

post
POST /api/accounts/balances HTTP/1.1
Host: 
Authorization: Bearer JWT
Content-Type: application/json
Accept: */*
Content-Length: 69

{
  "filters": [
    {
      "entryType": "Unspecified",
      "field": "text",
      "value": true
    }
  ]
}
{
  "data": [
    {
      "userId": "text",
      "accountId": "text",
      "accountName": "text",
      "assetId": "text",
      "assetName": "text",
      "totalAssetAmount": 1,
      "availableAssetAmount": 1,
      "lockedAssetAmount": 1,
      "rateToRootAsset": 1,
      "totalAssetAmountInRAT": 1,
      "availableAssetAmountInRAT": 1,
      "lockedAssetAmountInRAT": 1
    }
  ]
}
post

Required operations: view-billing-info

Authorizations
Body
Responses
200

OK

post
POST /api/billing/billing-info HTTP/1.1
Host: 
Authorization: Bearer JWT
Content-Type: application/json
Accept: */*
Content-Length: 69

{
  "filters": [
    {
      "entryType": "Unspecified",
      "field": "text",
      "value": true
    }
  ]
}
200

OK

{
  "activeAccounts": 1,
  "rootAsset": "text",
  "tradedVolumeSpotInRAT": 1,
  "tradedVolumeCfdInRAT": 1,
  "tradedVolumeTotalInRAT": 1
}
post

Required operations: manage-charts

Authorizations
Body
marketIdstring | nullableOptional
intervalstring | nullableOptional
dateFromstring · date-time | nullableOptional
dateTostring · date-time | nullableOptional
Responses
200Success
text/csv
Responsestring · binary
post
POST /api/charting HTTP/1.1
Host: 
Authorization: Bearer JWT
Content-Type: application/json
Accept: */*
Content-Length: 111

{
  "marketId": "text",
  "interval": "text",
  "dateFrom": "2025-09-09T23:03:37.501Z",
  "dateTo": "2025-09-09T23:03:37.501Z"
}
200Success
binary
post

Required operations: view-commissions

Authorizations
Body
Responses
200

OK

post
POST /api/commissions/accounts-assets HTTP/1.1
Host: 
Authorization: Bearer JWT
Content-Type: application/json
Accept: */*
Content-Length: 69

{
  "filters": [
    {
      "entryType": "Unspecified",
      "field": "text",
      "value": true
    }
  ]
}
200

OK

{
  "data": [
    {
      "userId": "text",
      "accountId": "text",
      "accountName": "text",
      "assetId": "text",
      "assetName": "text",
      "totalAssetAmount": 1,
      "totalAssetAmountInRAT": 1,
      "totalAssetCommission": 1,
      "totalAssetCommissionInRAT": 1
    }
  ]
}
post

Required operations: view-commissions

Authorizations
Body
Responses
200

OK

post
POST /api/commissions/users-assets HTTP/1.1
Host: 
Authorization: Bearer JWT
Content-Type: application/json
Accept: */*
Content-Length: 69

{
  "filters": [
    {
      "entryType": "Unspecified",
      "field": "text",
      "value": true
    }
  ]
}
200

OK

{
  "data": [
    {
      "userId": "text",
      "assetId": "text",
      "assetName": "text",
      "totalAssetAmount": 1,
      "totalAssetAmountInRAT": 1,
      "totalAssetCommission": 1,
      "totalAssetCommissionInRAT": 1
    }
  ]
}
post

Required operations: view-commissions

Authorizations
Body
limitinteger · int32Optional
offsetinteger · int32 | nullableOptional
Responses
200

OK

post
POST /api/commissions/users HTTP/1.1
Host: 
Authorization: Bearer JWT
Content-Type: application/json
Accept: */*
Content-Length: 156

{
  "filters": [
    {
      "entryType": "Unspecified",
      "field": "text",
      "value": true
    }
  ],
  "limit": 1,
  "offset": 1,
  "sort": {
    "field": "text",
    "column": "text",
    "direction": "Unspecified"
  }
}
200

OK

{
  "data": [
    {
      "userId": "text",
      "userEmail": "text",
      "status": "Unspecified",
      "totalBalanceInRAT": 1,
      "totalCommissionInRAT": 1,
      "totalTradedVolumeInRAT": 1
    }
  ]
}
post

Required operations: view-commissions

Authorizations
Body
limitinteger · int32Optional
offsetinteger · int32 | nullableOptional
Responses
200

OK

post
POST /api/commissions/accounts HTTP/1.1
Host: 
Authorization: Bearer JWT
Content-Type: application/json
Accept: */*
Content-Length: 156

{
  "filters": [
    {
      "entryType": "Unspecified",
      "field": "text",
      "value": true
    }
  ],
  "limit": 1,
  "offset": 1,
  "sort": {
    "field": "text",
    "column": "text",
    "direction": "Unspecified"
  }
}
200

OK

{
  "data": [
    {
      "userId": "text",
      "userEmail": "text",
      "accountId": "text",
      "accountName": "text",
      "totalBalanceInRAT": 1,
      "totalCommissionInRAT": 1,
      "totalTradedVolumeInRAT": 1
    }
  ]
}
post

Required operations: view-commissions

Authorizations
Body
Responses
200

OK

post
POST /api/commissions/assets HTTP/1.1
Host: 
Authorization: Bearer JWT
Content-Type: application/json
Accept: */*
Content-Length: 69

{
  "filters": [
    {
      "entryType": "Unspecified",
      "field": "text",
      "value": true
    }
  ]
}
200

OK

{
  "data": [
    {
      "assetId": "text",
      "assetName": "text",
      "assetAmountScale": 1,
      "totalAssetAmount": 1,
      "totalAssetAmountInRAT": 1,
      "totalAssetCommission": 1,
      "totalAssetCommissionInRAT": 1,
      "createdAt": "2025-09-09T23:03:37.501Z"
    }
  ]
}
post

Required operations: view-orders

Authorizations
Body
limitinteger · int32Optional
Responses
200

OK

post
POST /api/external-orders HTTP/1.1
Host: 
Authorization: Bearer JWT
Content-Type: application/json
Accept: */*
Content-Length: 79

{
  "filters": [
    {
      "entryType": "Unspecified",
      "field": "text",
      "value": true
    }
  ],
  "limit": 1
}
200

OK

{
  "data": [
    {
      "externalOrderId": "text",
      "lpOrderId": "text",
      "orderId": "text",
      "userId": "text",
      "userEmail": "text",
      "accountId": "text",
      "accountName": "text",
      "marketId": "text",
      "marketDisplayName": "text",
      "side": "Unspecified",
      "orderType": "Unspecified",
      "timeInForce": "Unspecified",
      "orderStatus": "Unspecified",
      "baseAmount": 1,
      "quoteAmount": 1,
      "avgExecutionPrice": 1,
      "limitPrice": 1,
      "filledAmount": 1,
      "remainingAmount": 1,
      "commissionAmount": 1,
      "commissionAssetId": "text",
      "commissionAssetName": "text",
      "commissionInRAT": 1,
      "createdAt": "2025-09-09T23:03:37.501Z",
      "updatedAt": "2025-09-09T23:03:37.501Z"
    }
  ],
  "limit": {
    "isExceeded": true
  }
}
post

Required operations: view-markup-revenue

Authorizations
Body
limitinteger · int32Optional
offsetinteger · int32 | nullableOptional
Responses
200

OK

post
POST /api/v1/markups/revenue HTTP/1.1
Host: 
Authorization: Bearer JWT
Content-Type: application/json
Accept: */*
Content-Length: 156

{
  "limit": 1,
  "offset": 1,
  "filters": [
    {
      "entryType": "Unspecified",
      "field": "text",
      "value": true
    }
  ],
  "sort": {
    "field": "text",
    "column": "text",
    "direction": "Unspecified"
  }
}
200

OK

[
  {
    "marketId": "text",
    "displayName": "text",
    "tradesCount": 1,
    "tradedVolume": 1,
    "tradedVolumeInRat": 1,
    "markupProfitInRat": 1,
    "commissionProfitInRat": 1
  }
]
post

Required operations: view-orders

Authorizations
Body
limitinteger · int32Optional
offsetinteger · int32 | nullableOptional
Responses
200

OK

post
POST /api/open-orders HTTP/1.1
Host: 
Authorization: Bearer JWT
Content-Type: application/json
Accept: */*
Content-Length: 156

{
  "filters": [
    {
      "entryType": "Unspecified",
      "field": "text",
      "value": true
    }
  ],
  "sort": {
    "field": "text",
    "column": "text",
    "direction": "Unspecified"
  },
  "limit": 1,
  "offset": 1
}
200

OK

{
  "total": 1,
  "data": [
    {
      "orderId": "text",
      "userId": "text",
      "userEmail": "text",
      "accountId": "text",
      "accountName": "text",
      "marketId": "text",
      "marketDisplayName": "text",
      "side": "Unspecified",
      "orderType": "Unspecified",
      "timeInForce": "Unspecified",
      "orderStatus": "Unspecified",
      "hedge": 1,
      "baseAmount": 1,
      "quoteAmount": 1,
      "filledAmount": 1,
      "remainingAmount": 1,
      "avgExecutionPrice": 1,
      "limitPrice": 1,
      "commissionAmount": 1,
      "commissionAssetId": "text",
      "commissionAssetName": "text",
      "commissionInRAT": 1,
      "createdAt": "2025-09-09T23:03:37.501Z",
      "updatedAt": "2025-09-09T23:03:37.501Z"
    }
  ]
}
post

Required operations: view-orders

Authorizations
Body
limitinteger · int32Optional
Responses
200

OK

post
POST /api/orders HTTP/1.1
Host: 
Authorization: Bearer JWT
Content-Type: application/json
Accept: */*
Content-Length: 79

{
  "filters": [
    {
      "entryType": "Unspecified",
      "field": "text",
      "value": true
    }
  ],
  "limit": 1
}
200

OK

{
  "data": [
    {
      "orderId": "text",
      "userId": "text",
      "userEmail": "text",
      "accountId": "text",
      "accountName": "text",
      "marketId": "text",
      "marketDisplayName": "text",
      "side": "Unspecified",
      "orderType": "Unspecified",
      "timeInForce": "Unspecified",
      "orderStatus": "Unspecified",
      "hedge": 1,
      "baseAmount": 1,
      "quoteAmount": 1,
      "avgExecutionPrice": 1,
      "limitPrice": 1,
      "filledAmount": 1,
      "remainingAmount": 1,
      "commissionAmount": 1,
      "commissionAssetId": "text",
      "commissionAssetName": "text",
      "commissionInRAT": 1,
      "createdAt": "2025-09-09T23:03:37.501Z",
      "updatedAt": "2025-09-09T23:03:37.501Z"
    }
  ],
  "limit": {
    "isExceeded": true
  }
}
get

Required operations: trading-ui

Authorizations
Path parameters
orderIdstringRequired
Query parameters
Responses
200

OK

get
GET /api/history/orders/{orderId} HTTP/1.1
Host: 
Authorization: Bearer JWT
Accept: */*
200

OK

[
  {
    "marketId": "text",
    "orderId": "text",
    "timeInForce": "Unspecified",
    "status": "Unspecified",
    "source": "Unspecified",
    "side": "Unspecified",
    "orderType": "Unspecified",
    "requestedAmount": 1,
    "remainingAmount": 1,
    "requestedPrice": 1,
    "executionPrice": 1,
    "hedge": 1,
    "createdAt": "2025-09-09T23:03:37.501Z",
    "updatedAt": "2025-09-09T23:03:37.501Z",
    "cancellationDate": "2025-09-09T23:03:37.501Z",
    "commission": 1
  }
]
post

Required operations: trading-ui

Authorizations
Query parameters
Body
createdAtFromstring · date-time | nullableOptional
createdAtTostring · date-time | nullableOptional
lastOrderIdstring | nullableOptional
limitinteger · int32 | nullableOptional
Responses
200

OK

post
POST /api/history/orders/list HTTP/1.1
Host: 
Authorization: Bearer JWT
Content-Type: application/json
Accept: */*
Content-Length: 148

{
  "createdAtFrom": "2025-09-09T23:03:37.501Z",
  "createdAtTo": "2025-09-09T23:03:37.501Z",
  "orderStatuses": [
    "Unspecified"
  ],
  "lastOrderId": "text",
  "limit": 1
}
200

OK

[
  {
    "marketId": "text",
    "orderId": "text",
    "timeInForce": "Unspecified",
    "status": "Unspecified",
    "source": "Unspecified",
    "side": "Unspecified",
    "orderType": "Unspecified",
    "requestedAmount": 1,
    "remainingAmount": 1,
    "requestedPrice": 1,
    "executionPrice": 1,
    "hedge": 1,
    "createdAt": "2025-09-09T23:03:37.501Z",
    "updatedAt": "2025-09-09T23:03:37.501Z",
    "cancellationDate": "2025-09-09T23:03:37.501Z",
    "commission": 1
  }
]
post

Required operations: manage-reports

Authorizations
Body
reportNamestring | nullableOptional
sourcestring · enumOptionalPossible values:
sourceNamestring | nullableOptional
notifyEmailsstring[] | nullableOptional
formatstring · enumOptionalPossible values:
Responses
200

OK

post
POST /api/reports HTTP/1.1
Host: 
Authorization: Bearer JWT
Content-Type: application/json
Accept: */*
Content-Length: 248

{
  "reportName": "text",
  "source": "Unspecified",
  "sourceName": "text",
  "notifyEmails": [
    "text"
  ],
  "filters": [
    {
      "entryType": "Unspecified",
      "field": "text",
      "value": true
    }
  ],
  "sorting": {
    "field": "text",
    "column": "text",
    "direction": "Unspecified"
  },
  "format": "Unspecified"
}
{
  "id": "123e4567-e89b-12d3-a456-426614174000"
}
get

Required operations: view-reports

Authorizations
Query parameters
TemplateIdstring · uuidOptional
CreatedBystringOptional
ReportNamestringOptional
Sourcestring · enumOptionalPossible values:
StatusTypestring · enumOptionalPossible values:
CreatedBeforestring · date-timeOptional
CreatedAfterstring · date-timeOptional
ExcludeExpiredbooleanOptional
Offsetinteger · int32Optional
Limitinteger · int32Optional
UserRolesstring[]Optional
Responses
200

OK

get
GET /api/reports HTTP/1.1
Host: 
Authorization: Bearer JWT
Accept: */*
{
  "data": [
    {
      "id": "123e4567-e89b-12d3-a456-426614174000",
      "reportName": "text",
      "templateName": "text",
      "templateId": "123e4567-e89b-12d3-a456-426614174000",
      "source": "Unspecified",
      "sourceName": "text",
      "filters": [
        {
          "entryType": "Unspecified",
          "field": "text",
          "value": true
        }
      ],
      "sorting": {
        "field": "text",
        "column": "text",
        "direction": "Unspecified"
      },
      "createdAt": "2025-09-09T23:03:37.501Z",
      "expiredAt": "2025-09-09T23:03:37.501Z",
      "statusType": "New",
      "statusReason": "text",
      "createdBy": "text",
      "notifyEmails": [
        "text"
      ],
      "format": "Unspecified"
    }
  ]
}
get

Required operations: view-reports

Authorizations
Path parameters
reportIdstring · uuidRequired
Responses
200

OK

get
GET /api/reports/{reportId} HTTP/1.1
Host: 
Authorization: Bearer JWT
Accept: */*
{
  "id": "123e4567-e89b-12d3-a456-426614174000",
  "reportName": "text",
  "templateName": "text",
  "templateId": "123e4567-e89b-12d3-a456-426614174000",
  "source": "Unspecified",
  "sourceName": "text",
  "filters": [
    {
      "entryType": "Unspecified",
      "field": "text",
      "value": true
    }
  ],
  "sorting": {
    "field": "text",
    "column": "text",
    "direction": "Unspecified"
  },
  "createdAt": "2025-09-09T23:03:37.501Z",
  "expiredAt": "2025-09-09T23:03:37.501Z",
  "statusType": "New",
  "statusReason": "text",
  "createdBy": "text",
  "notifyEmails": [
    "text"
  ],
  "format": "Unspecified"
}
delete

Required operations: manage-reports

Authorizations
Path parameters
reportIdstring · uuidRequired
Responses
200

OK

No content

delete
DELETE /api/reports/{reportId} HTTP/1.1
Host: 
Authorization: Bearer JWT
Accept: */*

No content

get
Authorizations
Path parameters
reportIdstring · uuidRequired
Responses
200

OK

Responsestring · binary
get
GET /api/reports/{reportId}/download HTTP/1.1
Host: 
Authorization: Bearer JWT
Accept: */*
binary
get

Required operations: view-reports

Authorizations
Path parameters
templateIdstring · uuidRequired
Responses
200

OK

get
GET /api/reports/templates/{templateId} HTTP/1.1
Host: 
Authorization: Bearer JWT
Accept: */*
{
  "id": "123e4567-e89b-12d3-a456-426614174000",
  "templateName": "text",
  "source": "Unspecified",
  "sourceName": "text",
  "schedule": {
    "baseDate": "2025-09-09T23:03:37.501Z",
    "frequency": "Daily",
    "daysOfWeek": [
      "Sunday"
    ]
  },
  "filters": [
    {
      "entryType": "Unspecified",
      "field": "text",
      "value": true
    }
  ],
  "sorting": {
    "field": "text",
    "column": "text",
    "direction": "Unspecified"
  },
  "notifyEmails": [
    "text"
  ],
  "createdAt": "2025-09-09T23:03:37.501Z",
  "createdBy": "text",
  "updatedAt": "2025-09-09T23:03:37.501Z",
  "updatedBy": "text",
  "deletedAt": "2025-09-09T23:03:37.501Z",
  "deletedBy": "text",
  "format": "Unspecified"
}
put

Required operations: manage-reports

Authorizations
Path parameters
templateIdstring · uuidRequired
Body
templateIdstring · uuidOptional
templateNamestring | nullableOptional
sourcestring · enumOptionalPossible values:
sourceNamestring | nullableOptional
notifyEmailsstring[] | nullableOptional
formatstring · enumOptionalPossible values:
principalUserIdstring | nullableRead-onlyOptional
Responses
200

OK

No content

put
PUT /api/reports/templates/{templateId} HTTP/1.1
Host: 
Authorization: Bearer JWT
Content-Type: application/json
Accept: */*
Content-Length: 397

{
  "templateId": "123e4567-e89b-12d3-a456-426614174000",
  "templateName": "text",
  "source": "Unspecified",
  "sourceName": "text",
  "schedule": {
    "baseDate": "2025-09-09T23:03:37.501Z",
    "frequency": "Daily",
    "daysOfWeek": [
      "Sunday"
    ]
  },
  "notifyEmails": [
    "text"
  ],
  "filters": [
    {
      "entryType": "Unspecified",
      "field": "text",
      "value": true
    }
  ],
  "sorting": {
    "field": "text",
    "column": "text",
    "direction": "Unspecified"
  },
  "format": "Unspecified"
}

No content

delete

Required operations: manage-reports

Authorizations
Path parameters
templateIdstring · uuidRequired
Responses
200

OK

No content

delete
DELETE /api/reports/templates/{templateId} HTTP/1.1
Host: 
Authorization: Bearer JWT
Accept: */*

No content

get

Required operations: view-reports

Authorizations
Query parameters
CreatedBystringOptional
UpdatedBystringOptional
TemplateNamestringOptional
Sourcestring · enumOptionalPossible values:
CreatedBeforestring · date-timeOptional
CreatedAfterstring · date-timeOptional
UpdatedBeforestring · date-timeOptional
UpdatedAfterstring · date-timeOptional
RegularOnlybooleanOptional
Offsetinteger · int32Optional
UserRolesstring[]Optional
Limitinteger · int32Optional
Responses
200

OK

get
GET /api/reports/templates HTTP/1.1
Host: 
Authorization: Bearer JWT
Accept: */*
{
  "data": [
    {
      "id": "123e4567-e89b-12d3-a456-426614174000",
      "templateName": "text",
      "source": "Unspecified",
      "sourceName": "text",
      "schedule": {
        "baseDate": "2025-09-09T23:03:37.501Z",
        "frequency": "Daily",
        "daysOfWeek": [
          "Sunday"
        ]
      },
      "filters": [
        {
          "entryType": "Unspecified",
          "field": "text",
          "value": true
        }
      ],
      "sorting": {
        "field": "text",
        "column": "text",
        "direction": "Unspecified"
      },
      "notifyEmails": [
        "text"
      ],
      "createdAt": "2025-09-09T23:03:37.501Z",
      "createdBy": "text",
      "updatedAt": "2025-09-09T23:03:37.501Z",
      "updatedBy": "text",
      "deletedAt": "2025-09-09T23:03:37.501Z",
      "deletedBy": "text",
      "format": "Unspecified"
    }
  ]
}
post

Required operations: manage-reports

Authorizations
Body
templateNamestring | nullableOptional
sourcestring · enumOptionalPossible values:
sourceNamestring | nullableOptional
notifyEmailsstring[] | nullableOptional
formatstring · enumOptionalPossible values:
Responses
200

OK

post
POST /api/reports/templates HTTP/1.1
Host: 
Authorization: Bearer JWT
Content-Type: application/json
Accept: */*
Content-Length: 345

{
  "templateName": "text",
  "source": "Unspecified",
  "sourceName": "text",
  "schedule": {
    "baseDate": "2025-09-09T23:03:37.501Z",
    "frequency": "Daily",
    "daysOfWeek": [
      "Sunday"
    ]
  },
  "notifyEmails": [
    "text"
  ],
  "filters": [
    {
      "entryType": "Unspecified",
      "field": "text",
      "value": true
    }
  ],
  "sorting": {
    "field": "text",
    "column": "text",
    "direction": "Unspecified"
  },
  "format": "Unspecified"
}
{
  "id": "123e4567-e89b-12d3-a456-426614174000"
}
post

Required operations: manage-reports

Authorizations
Path parameters
templateIdstring · uuidRequired
Responses
200

OK

post
POST /api/reports/templates/{templateId}/run HTTP/1.1
Host: 
Authorization: Bearer JWT
Accept: */*
{
  "reportId": "123e4567-e89b-12d3-a456-426614174000"
}
post

Required operations: view-trades

Authorizations
Body
limitinteger · int32Optional
Responses
200

OK

post
POST /api/trades HTTP/1.1
Host: 
Authorization: Bearer JWT
Content-Type: application/json
Accept: */*
Content-Length: 79

{
  "filters": [
    {
      "entryType": "Unspecified",
      "field": "text",
      "value": true
    }
  ],
  "limit": 1
}
200

OK

{
  "data": [
    {
      "userId": "text",
      "userEmail": "text",
      "accountId": "text",
      "accountName": "text",
      "orderId": "text",
      "externalOrderId": "text",
      "lpOrderId": "text",
      "executionId": "text",
      "lpExecutionId": "text",
      "marketId": "text",
      "marketDisplayName": "text",
      "side": "Unspecified",
      "orderType": "Unspecified",
      "timeInForce": "Unspecified",
      "baseAmount": 1,
      "quoteAmount": 1,
      "executionPrice": 1,
      "commissionAmount": 1,
      "commissionAssetId": "text",
      "commissionAssetName": "text",
      "commissionInRAT": 1,
      "createdAt": "2025-09-09T23:03:37.501Z"
    }
  ],
  "limit": {
    "isExceeded": true
  }
}
post

Required operations: view-transfers

Authorizations
Body
limitinteger · int32Optional
Responses
200

OK

post
POST /api/transfers HTTP/1.1
Host: 
Authorization: Bearer JWT
Content-Type: application/json
Accept: */*
Content-Length: 79

{
  "filters": [
    {
      "entryType": "Unspecified",
      "field": "text",
      "value": true
    }
  ],
  "limit": 1
}
200

OK

{
  "data": [
    {
      "userId": "text",
      "userEmail": "text",
      "accountId": "text",
      "accountName": "text",
      "transferId": "text",
      "assetId": "text",
      "assetName": "text",
      "type": "Unspecified",
      "status": "Unspecified",
      "assetAmount": 1,
      "createdAt": "2025-09-09T23:03:37.501Z",
      "rateToRootAsset": 1,
      "assetAmountInRAT": 1,
      "deduplicationId": "text"
    }
  ],
  "limit": {
    "isExceeded": true
  }
}
post

Required operations: view-trades

Authorizations
Body
limitinteger · int32Optional
Responses
200

OK

post
POST /api/unsolicited-trades HTTP/1.1
Host: 
Authorization: Bearer JWT
Content-Type: application/json
Accept: */*
Content-Length: 79

{
  "filters": [
    {
      "entryType": "Unspecified",
      "field": "text",
      "value": true
    }
  ],
  "limit": 1
}
200

OK

{
  "data": [
    {
      "userId": "text",
      "userEmail": "text",
      "accountId": "text",
      "accountName": "text",
      "orderId": "text",
      "externalOrderId": "text",
      "lpOrderId": "text",
      "executionId": "text",
      "lpExecutionId": "text",
      "marketId": "text",
      "marketDisplayName": "text",
      "side": "Unspecified",
      "orderType": "Unspecified",
      "timeInForce": "Unspecified",
      "baseAmount": 1,
      "quoteAmount": 1,
      "executionPrice": 1,
      "createdAt": "2025-09-09T23:03:37.501Z"
    }
  ],
  "limit": {
    "isExceeded": true
  }
}

Transfers

get

Required operations: view-transfers

Authorizations
Path parameters
transferIdstringRequired
Header parameters
x-api-versionstringOptional
Responses
200

OK

get
GET /back-api/backoffice/transfers/{transferId} HTTP/1.1
Host: 
Authorization: Bearer JWT
Accept: */*
{
  "transferId": "text",
  "deduplicationId": "text",
  "assetId": "text",
  "type": "Unspecified",
  "status": "Unspecified",
  "amount": "text",
  "createdAt": "2025-09-09T23:03:37.501Z",
  "updatedAt": "2025-09-09T23:03:37.501Z"
}
get

Required operations: view-transfers

Authorizations
Path parameters
accountIdstringRequired
Query parameters
statusstring · enumOptionalPossible values:
limitinteger · int32Optional
offsetinteger · int32Optional
Header parameters
x-api-versionstringOptional
Responses
200

OK

get
GET /back-api/backoffice/transfers/accounts/{accountId} HTTP/1.1
Host: 
Authorization: Bearer JWT
Accept: */*
[
  {
    "transferId": "text",
    "deduplicationId": "text",
    "assetId": "text",
    "type": "Unspecified",
    "status": "Unspecified",
    "amount": "text",
    "createdAt": "2025-09-09T23:03:37.501Z",
    "updatedAt": "2025-09-09T23:03:37.501Z"
  }
]
post

Required operations: manage-transfers

Authorizations
Header parameters
x-api-versionstringOptional
Body
deduplicationIdstringOptional
accountIdstringOptional
amountstringOptional
assetIdstringOptional
callbackUrlstring | nullableOptional
Responses
201

Created

post
POST /back-api/backoffice/transfers/deposit HTTP/1.1
Host: 
Authorization: Bearer JWT
Content-Type: application/json; x-api-version=1.0
Accept: */*
Content-Length: 99

{
  "deduplicationId": "text",
  "accountId": "text",
  "amount": "text",
  "assetId": "text",
  "callbackUrl": "text"
}
{
  "transferId": "text",
  "deduplicationId": "text",
  "assetId": "text",
  "type": "Unspecified",
  "status": "Unspecified",
  "amount": "text",
  "createdAt": "2025-09-09T23:03:37.501Z",
  "updatedAt": "2025-09-09T23:03:37.501Z"
}
post

Required operations: manage-transfers

Authorizations
Header parameters
x-api-versionstringOptional
Body
deduplicationIdstringOptional
accountIdstringOptional
amountstringOptional
assetIdstringOptional
callbackUrlstring | nullableOptional
Responses
201

Created

post
POST /back-api/backoffice/transfers/withdrawal HTTP/1.1
Host: 
Authorization: Bearer JWT
Content-Type: application/json; x-api-version=1.0
Accept: */*
Content-Length: 99

{
  "deduplicationId": "text",
  "accountId": "text",
  "amount": "text",
  "assetId": "text",
  "callbackUrl": "text"
}
{
  "transferId": "text",
  "deduplicationId": "text",
  "assetId": "text",
  "type": "Unspecified",
  "status": "Unspecified",
  "amount": "text",
  "createdAt": "2025-09-09T23:03:37.501Z",
  "updatedAt": "2025-09-09T23:03:37.501Z"
}
post

Required operations: manage-transfers

Authorizations
Header parameters
x-api-versionstringOptional
Body
accountIdstringOptional
transferIdstringOptional
callbackUrlstring | nullableOptional
Responses
200

OK

No content

post
POST /back-api/backoffice/transfers/withdrawal-confirm HTTP/1.1
Host: 
Authorization: Bearer JWT
Content-Type: application/json; x-api-version=1.0
Accept: */*
Content-Length: 61

{
  "accountId": "text",
  "transferId": "text",
  "callbackUrl": "text"
}

No content

post

Required operations: manage-transfers

Authorizations
Header parameters
x-api-versionstringOptional
Body
accountIdstringOptional
transferIdstringOptional
callbackUrlstring | nullableOptional
Responses
200

OK

No content

post
POST /back-api/backoffice/transfers/withdrawal-cancel HTTP/1.1
Host: 
Authorization: Bearer JWT
Content-Type: application/json; x-api-version=1.0
Accept: */*
Content-Length: 61

{
  "accountId": "text",
  "transferId": "text",
  "callbackUrl": "text"
}

No content

Settings

get

Required operations: view-common

Authorizations
Query parameters
idstringOptional
namestringOptional
sourcestring · enumOptionalPossible values:
typestring · enumOptionalPossible values:
limitinteger · int32Optional
offsetinteger · int32Optional
Responses
200

OK

get
GET /back-api/backoffice/v2/assets/list HTTP/1.1
Host: 
Authorization: Bearer JWT
Accept: */*
[
  {
    "name": "text",
    "id": "text",
    "scale": 1,
    "type": "Unspecified",
    "source": "Unspecified"
  }
]
get

Required operations: view-commission-rules

Authorizations
Path parameters
commissionProfileIdstringRequired
Responses
200

OK

get
GET /back-api/backoffice/v2/commission-profiles/{commissionProfileId}/rules HTTP/1.1
Host: 
Authorization: Bearer JWT
Accept: */*
200

OK

[
  {
    "commissionProfileRuleId": "text",
    "priority": 1,
    "isDefault": true,
    "feeSettings": {
      "spot": {
        "type": "Unspecified",
        "size": "text"
      },
      "cfd": {
        "assetId": "text",
        "type": "Unspecified",
        "size": "text"
      },
      "minFeeRAT": "text"
    },
    "marketId": "text",
    "marketName": "text",
    "marketGroupId": "text",
    "marketGroupName": "text",
    "commissionProfileId": "text",
    "commissionProfileName": "text"
  }
]
post

Required operations: manage-commission-rules

Authorizations
Path parameters
commissionProfileIdstringRequired
Body
Responses
201

Created

post
POST /back-api/backoffice/v2/commission-profiles/{commissionProfileId}/rules HTTP/1.1
Host: 
Authorization: Bearer JWT
Content-Type: application/json; x-api-version=2.0
Accept: */*
Content-Length: 283

{
  "commissionProfileRule": {
    "marketId": "text",
    "marketGroupId": "text",
    "feeSettings": {
      "spot": {
        "type": "Unspecified",
        "size": "text"
      },
      "cfd": {
        "assetId": "text",
        "type": "Unspecified",
        "size": "text"
      },
      "minFeeRAT": "text"
    },
    "priority": 1
  },
  "priorities": [
    {
      "commissionProfileRuleId": "text",
      "priority": 1
    }
  ]
}
{
  "id": "text"
}
put

Required operations: manage-commission-rules

Authorizations
Path parameters
commissionProfileIdstringRequired
commissionProfileRuleIdstringRequired
Body
Responses
200

OK

No content

put
PUT /back-api/backoffice/v2/commission-profiles/{commissionProfileId}/rules/{commissionProfileRuleId} HTTP/1.1
Host: 
Authorization: Bearer JWT
Content-Type: application/json; x-api-version=2.0
Accept: */*
Content-Length: 270

{
  "commissionProfileRule": {
    "marketId": "text",
    "marketGroupId": "text",
    "feeSettings": {
      "spot": {
        "type": "Unspecified",
        "size": "text"
      },
      "cfd": {
        "assetId": "text",
        "type": "Unspecified",
        "size": "text"
      },
      "minFeeRAT": "text"
    }
  },
  "priorities": [
    {
      "commissionProfileRuleId": "text",
      "priority": 1
    }
  ]
}

No content

delete

Required operations: manage-commission-rules

Authorizations
Path parameters
commissionProfileIdstringRequired
commissionProfileRuleIdstringRequired
Responses
200

OK

No content

delete
DELETE /back-api/backoffice/v2/commission-profiles/{commissionProfileId}/rules/{commissionProfileRuleId} HTTP/1.1
Host: 
Authorization: Bearer JWT
Accept: */*

No content

post

Required operations: manage-commission-rules

Authorizations
Path parameters
commissionProfileIdstringRequired
commissionProfileRuleIdstringRequired
Body
Responses
200

OK

Responseobject
post
POST /back-api/backoffice/v2/commission-profiles/{commissionProfileId}/rules/{commissionProfileRuleId}/validate-update HTTP/1.1
Host: 
Authorization: Bearer JWT
Content-Type: application/json; x-api-version=2.0
Accept: */*
Content-Length: 68

{
  "commissionProfileRule": {
    "marketId": "text",
    "marketGroupId": "text"
  }
}
{}
post

Required operations: manage-commission-rules

Authorizations
Path parameters
commissionProfileIdstringRequired
commissionProfileRuleIdstringRequired
Responses
200

OK

Responseobject
post
POST /back-api/backoffice/v2/commission-profiles/{commissionProfileId}/rules/{commissionProfileRuleId}/validate-delete HTTP/1.1
Host: 
Authorization: Bearer JWT
Accept: */*
{}
put

Required operations: manage-commission-rules

Authorizations
Path parameters
commissionProfileIdstringRequired
Bodyobject[]
commissionProfileRuleIdstring | nullableOptional
priorityinteger · int32 | nullableOptional
Responses
200

OK

No content

put
PUT /back-api/backoffice/v2/commission-profiles/{commissionProfileId}/rules/priorities HTTP/1.1
Host: 
Authorization: Bearer JWT
Content-Type: application/json; x-api-version=2.0
Accept: */*
Content-Length: 49

[
  {
    "commissionProfileRuleId": "text",
    "priority": 1
  }
]

No content

post

Required operations: manage-assets

Authorizations
Body
idstring | nullableOptional
namestring | nullableOptional
scaleinteger · int32 | nullableOptional
typestring · enumOptionalPossible values:
Responses
201

Created

post
POST /back-api/backoffice/v2/internal-assets HTTP/1.1
Host: 
Authorization: Bearer JWT
Content-Type: application/json; x-api-version=2.0
Accept: */*
Content-Length: 58

{
  "id": "text",
  "name": "text",
  "scale": 1,
  "type": "Unspecified"
}
{
  "id": "text",
  "name": "text",
  "scale": 1,
  "source": "Unspecified",
  "type": "Unspecified"
}
put

Required operations: manage-assets

Authorizations
Path parameters
idstringRequired
Body
namestring | nullableOptional
scaleinteger · int32 | nullableOptional
typestring · enumOptionalPossible values:
Responses
200

OK

No content

put
PUT /back-api/backoffice/v2/internal-assets/{id} HTTP/1.1
Host: 
Authorization: Bearer JWT
Content-Type: application/json; x-api-version=2.0
Accept: */*
Content-Length: 46

{
  "name": "text",
  "scale": 1,
  "type": "Unspecified"
}

No content

get

Required operations: view-common

Authorizations
Responses
200

OK

get
GET /back-api/backoffice/v2/markets-categories HTTP/1.1
Host: 
Authorization: Bearer JWT
Accept: */*
{
  "categories": [
    {
      "id": "text",
      "name": "text",
      "markets": [
        {
          "id": "text",
          "displayName": "text",
          "fullName": "text"
        }
      ],
      "categories": [
        {
          "id": "text",
          "name": "text",
          "markets": [
            {
              "id": "text",
              "displayName": "text",
              "fullName": "text"
            }
          ],
          "categories": [
            "[Circular Reference]"
          ]
        }
      ]
    }
  ]
}
put

Required operations: manage-markets-categories

Authorizations
Body
Responses
200

OK

put
PUT /back-api/backoffice/v2/markets-categories HTTP/1.1
Host: 
Authorization: Bearer JWT
Content-Type: application/json; x-api-version=2.0
Accept: */*
Content-Length: 163

{
  "categories": [
    {
      "id": "text",
      "name": "text",
      "categories": [
        {
          "id": "text",
          "name": "text",
          "categories": [
            "[Circular Reference]"
          ],
          "markets": [
            "text"
          ]
        }
      ],
      "markets": [
        "text"
      ]
    }
  ]
}
{
  "categories": [
    {
      "id": "text",
      "name": "text",
      "markets": [
        {
          "id": "text",
          "displayName": "text",
          "fullName": "text"
        }
      ],
      "categories": [
        {
          "id": "text",
          "name": "text",
          "markets": [
            {
              "id": "text",
              "displayName": "text",
              "fullName": "text"
            }
          ],
          "categories": [
            "[Circular Reference]"
          ]
        }
      ]
    }
  ]
}
get

Required operations: view-common

Authorizations
Path parameters
marketIdstringRequired
Responses
200

OK

get
GET /back-api/backoffice/v2/markets/{marketId} HTTP/1.1
Host: 
Authorization: Bearer JWT
Accept: */*
{
  "marketId": "text",
  "displayName": "text",
  "fullName": "text",
  "baseAssetId": "text",
  "quoteAssetId": "text",
  "minAmount": "text",
  "priceDeviation": "text",
  "priceScale": 1,
  "amountScale": 1,
  "slippageRate": "text",
  "status": "Unspecified",
  "type": "Unspecified",
  "subtype": "Unspecified",
  "isSynchronized": true,
  "createdAt": "2025-09-09T23:03:37.501Z",
  "updatedAt": "2025-09-09T23:03:37.501Z",
  "externalTtl": 1,
  "internalTtl": 1,
  "lotSize": 1,
  "minLotAmount": "text",
  "maxLotAmount": 1,
  "tickSize": "text",
  "lotStep": "text",
  "swapSettings": {
    "type": "Unspecified",
    "shortPositionSettings": {
      "swapSize": "text",
      "assetId": "text"
    },
    "longPositionSettings": {
      "swapSize": "text",
      "assetId": "text"
    }
  },
  "calendarId": "text",
  "marketGroupId": "text",
  "marketGroupName": "text",
  "calendarName": "text",
  "maxLeverage": 1,
  "isConstLeverage": true,
  "minQuoteAmount": "text",
  "maxBaseAmount": "text",
  "tradingSessions": [
    {
      "id": "text",
      "name": "text",
      "status": "Unspecified",
      "liquidityProviderId": "text"
    }
  ],
  "marketDataSessions": [
    {
      "id": "text",
      "name": "text",
      "status": "Unspecified",
      "liquidityProviderId": "text"
    }
  ]
}
put

Required operations: manage-markets

Authorizations
Path parameters
marketIdstringRequired
Body
fullNamestring | nullableOptional
displayNamestring | nullableOptional
minAmountstring | nullableOptional
priceDeviationstring | nullableOptional
priceScaleinteger · int32 | nullableOptional
amountScaleinteger · int32 | nullableOptional
slippageRatestring | nullableOptional
statusstring · enumOptionalPossible values:
subtypestring · enumOptionalPossible values:
isSynchronizedboolean | nullableOptional
externalTtlinteger · int32 | nullableOptional
internalTtlinteger · int32 | nullableOptional
marketGroupIdstring | nullableOptional
calendarIdstring | nullableOptional
lotSizeinteger · int32 | nullableOptional
minLotAmountstring | nullableOptional
maxLotAmountinteger · int32 | nullableOptional
tickSizestring | nullableOptional
lotStepstring | nullableOptional
maxLeverageinteger · int32 | nullableOptional
isConstLeverageboolean | nullableOptional
minQuoteAmountstring | nullableOptional
maxBaseAmountstring | nullableOptional
tradingSessionIdsstring[] | nullableOptional
marketDataSessionIdsstring[] | nullableOptional
Responses
200

OK

No content

put
PUT /back-api/backoffice/v2/markets/{marketId} HTTP/1.1
Host: 
Authorization: Bearer JWT
Content-Type: application/json; x-api-version=2.0
Accept: */*
Content-Length: 672

{
  "fullName": "text",
  "displayName": "text",
  "minAmount": "text",
  "priceDeviation": "text",
  "priceScale": 1,
  "amountScale": 1,
  "slippageRate": "text",
  "status": "Unspecified",
  "subtype": "Unspecified",
  "isSynchronized": true,
  "externalTtl": 1,
  "internalTtl": 1,
  "marketGroupId": "text",
  "calendarId": "text",
  "lotSize": 1,
  "minLotAmount": "text",
  "maxLotAmount": 1,
  "tickSize": "text",
  "lotStep": "text",
  "swapSettings": {
    "type": "Unspecified",
    "shortPositionSettings": {
      "swapSize": "text",
      "assetId": "text"
    },
    "longPositionSettings": {
      "swapSize": "text",
      "assetId": "text"
    }
  },
  "maxLeverage": 1,
  "isConstLeverage": true,
  "minQuoteAmount": "text",
  "maxBaseAmount": "text",
  "tradingSessionIds": [
    "text"
  ],
  "marketDataSessionIds": [
    "text"
  ]
}

No content

get

Required operations: view-common

Authorizations
Query parameters
marketIdstringOptional
displayNamestringOptional
fullNamestringOptional
marketGroupIdstringOptional
statusstring · enumOptionalPossible values:
isSynchronizedbooleanOptional
excludeMarketGroupIdstringOptional
limitinteger · int32Optional
offsetinteger · int32Optional
Responses
200

OK

get
GET /back-api/backoffice/v2/markets HTTP/1.1
Host: 
Authorization: Bearer JWT
Accept: */*
[
  {
    "marketId": "text",
    "displayName": "text",
    "fullName": "text"
  }
]
post

Required operations: manage-markets

Authorizations
Body
baseAssetIdstring · min: 1Required
quoteAssetIdstring · min: 1Required
fullNamestring | nullableOptional
displayNamestring | nullableOptional
minAmountstring | nullableOptional
priceDeviationstring | nullableOptional
priceScaleinteger · int32 | nullableOptional
amountScaleinteger · int32 | nullableOptional
slippageRatestring | nullableOptional
statusstring · enumOptionalPossible values:
typestring · enumOptionalPossible values:
subtypestring · enumOptionalPossible values:
isSynchronizedboolean | nullableOptional
externalTtlinteger · int32 | nullableOptional
internalTtlinteger · int32 | nullableOptional
marketGroupIdstring | nullableOptional
calendarIdstring | nullableOptional
lotSizeinteger · int32 | nullableOptional
minLotAmountstring | nullableOptional
maxLotAmountinteger · int32 | nullableOptional
tickSizestring | nullableOptional
lotStepstring | nullableOptional
maxLeverageinteger · int32 | nullableOptional
isConstLeverageboolean | nullableOptional
minQuoteAmountstring | nullableOptional
maxBaseAmountstring | nullableOptional
tradingSessionIdsstring[] | nullableOptional
marketDataSessionIdsstring[] | nullableOptional
Responses
201

Created

post
POST /back-api/backoffice/v2/markets HTTP/1.1
Host: 
Authorization: Bearer JWT
Content-Type: application/json; x-api-version=2.0
Accept: */*
Content-Length: 736

{
  "baseAssetId": "text",
  "quoteAssetId": "text",
  "fullName": "text",
  "displayName": "text",
  "minAmount": "text",
  "priceDeviation": "text",
  "priceScale": 1,
  "amountScale": 1,
  "slippageRate": "text",
  "status": "Unspecified",
  "type": "Unspecified",
  "subtype": "Unspecified",
  "isSynchronized": true,
  "externalTtl": 1,
  "internalTtl": 1,
  "marketGroupId": "text",
  "calendarId": "text",
  "lotSize": 1,
  "minLotAmount": "text",
  "maxLotAmount": 1,
  "tickSize": "text",
  "lotStep": "text",
  "swapSettings": {
    "type": "Unspecified",
    "shortPositionSettings": {
      "swapSize": "text",
      "assetId": "text"
    },
    "longPositionSettings": {
      "swapSize": "text",
      "assetId": "text"
    }
  },
  "maxLeverage": 1,
  "isConstLeverage": true,
  "minQuoteAmount": "text",
  "maxBaseAmount": "text",
  "tradingSessionIds": [
    "text"
  ],
  "marketDataSessionIds": [
    "text"
  ]
}
{
  "marketId": "text"
}
post

Required operations: view-common

Authorizations
Body
marketIdsstring[] | nullableOptional
displayNamesstring[] | nullableOptional
fullNamesstring[] | nullableOptional
calendarIdsstring[] | nullableOptional
marketGroupIdsstring[] | nullableOptional
excludeMarketGroupIdsstring[] | nullableOptional
baseAssetIdsstring[] | nullableOptional
quoteAssetIdsstring[] | nullableOptional
marketIdstring | nullableOptional
limitinteger · int32 | nullableOptional
offsetinteger · int32 | nullableOptional
tradingSessionNamesstring[] | nullableOptional
marketDataSessionNamesstring[] | nullableOptional
tradingSessionStatusstring · enumOptionalPossible values:
marketDataSessionStatusstring · enumOptionalPossible values:
Responses
200

OK

post
POST /back-api/backoffice/v2/markets/list HTTP/1.1
Host: 
Authorization: Bearer JWT
Content-Type: application/json; x-api-version=2.0
Accept: */*
Content-Length: 514

{
  "marketIds": [
    "text"
  ],
  "types": [
    "Unspecified"
  ],
  "subtypes": [
    "Unspecified"
  ],
  "displayNames": [
    "text"
  ],
  "fullNames": [
    "text"
  ],
  "calendarIds": [
    "text"
  ],
  "marketGroupIds": [
    "text"
  ],
  "excludeMarketGroupIds": [
    "text"
  ],
  "baseAssetIds": [
    "text"
  ],
  "quoteAssetIds": [
    "text"
  ],
  "statuses": [
    "Unspecified"
  ],
  "marketId": "text",
  "limit": 1,
  "offset": 1,
  "sort": {
    "direction": "Unspecified",
    "field": "Unspecified"
  },
  "tradingSessionNames": [
    "text"
  ],
  "marketDataSessionNames": [
    "text"
  ],
  "tradingSessionStatus": "Unspecified",
  "marketDataSessionStatus": "Unspecified"
}
{
  "markets": [
    {
      "marketId": "text",
      "displayName": "text",
      "fullName": "text",
      "baseAssetId": "text",
      "quoteAssetId": "text",
      "minAmount": "text",
      "priceDeviation": "text",
      "priceScale": 1,
      "amountScale": 1,
      "status": "Unspecified",
      "internalTtl": 1,
      "externalTtl": 1,
      "calendarId": "text",
      "calendarName": "text",
      "type": "Unspecified",
      "subtype": "Unspecified",
      "lotSize": 1,
      "minLotAmount": "text",
      "maxLotAmount": 1,
      "tickSize": "text",
      "lotStep": "text",
      "swapSettings": {
        "type": "Unspecified",
        "shortPositionSettings": {
          "swapSize": "text",
          "assetId": "text"
        },
        "longPositionSettings": {
          "swapSize": "text",
          "assetId": "text"
        }
      },
      "createdAt": "2025-09-09T23:03:37.501Z",
      "updatedAt": "2025-09-09T23:03:37.501Z",
      "slippageRate": "text",
      "marketGroupId": "text",
      "marketGroupName": "text",
      "isSynchronized": true,
      "maxLeverage": "text",
      "isConstLeverage": true,
      "minQuoteAmount": "text",
      "maxBaseAmount": "text",
      "tradingSessions": [
        {
          "id": "text",
          "name": "text",
          "status": "Unspecified",
          "liquidityProviderId": "text"
        }
      ],
      "marketDataSessions": [
        {
          "id": "text",
          "name": "text",
          "status": "Unspecified",
          "liquidityProviderId": "text"
        }
      ]
    }
  ]
}
post

Required operations: manage-markets

Authorizations
Body
filestring · binaryOptional
Responses
200

OK

post
POST /back-api/backoffice/v2/markets/file HTTP/1.1
Host: 
Authorization: Bearer JWT
Content-Type: multipart/form-data; x-api-version=2.0
Accept: */*
Content-Length: 17

{
  "file": "binary"
}
200

OK

{
  "id": "123e4567-e89b-12d3-a456-426614174000",
  "status": "InProcess"
}
get

Required operations: manage-markets

Authorizations
Path parameters
idstring · uuidRequired
Responses
200

OK

get
GET /back-api/backoffice/v2/markets/file/{id} HTTP/1.1
Host: 
Authorization: Bearer JWT
Accept: */*
{
  "status": "InProcess",
  "created": 1,
  "updated": 1,
  "errors": 1,
  "incorrectRows": [
    1
  ]
}
get

Required operations: manage-markets

Authorizations
Responses
200

OK

get
GET /back-api/backoffice/v2/markets/download HTTP/1.1
Host: 
Authorization: Bearer JWT
Accept: */*
200

OK

{
  "id": "123e4567-e89b-12d3-a456-426614174000",
  "status": "InProcess"
}
get

Required operations: view-common

Authorizations
Path parameters
userIdstringRequired
Query parameters
accountNamestringOptional
accountTypestring · enumOptionalPossible values:
limitinteger · int32Optional
offsetinteger · int32Optional
Responses
200

OK

get
GET /back-api/backoffice/v2/users/{userId}/accounts HTTP/1.1
Host: 
Authorization: Bearer JWT
Accept: */*
[
  {
    "accountId": "text",
    "accountName": "text",
    "accountType": "Unspecified",
    "balances": [
      {
        "assetId": "text",
        "locked": "text",
        "total": "text"
      }
    ]
  }
]
post

Required operations: manage-accounts

Authorizations
Path parameters
userIdstringRequired
Body
accountNamestring | nullableOptional
accountGroupIdstring | nullableOptional
accountTypestring · enumOptionalPossible values:
Responses
201

Created

post
POST /back-api/backoffice/v2/users/{userId}/accounts HTTP/1.1
Host: 
Authorization: Bearer JWT
Content-Type: application/json; x-api-version=2.0
Accept: */*
Content-Length: 74

{
  "accountName": "text",
  "accountGroupId": "text",
  "accountType": "Unspecified"
}
{
  "accountId": "text"
}
get

Required operations: view-common

Authorizations
Path parameters
userIdstringRequired
accountIdstringRequired
Responses
200

OK

get
GET /back-api/backoffice/v2/users/{userId}/accounts/{accountId} HTTP/1.1
Host: 
Authorization: Bearer JWT
Accept: */*
{
  "accountId": "text",
  "accountName": "text",
  "accountType": "Unspecified",
  "balances": [
    {
      "assetId": "text",
      "locked": "text",
      "total": "text"
    }
  ]
}

Admin notifications

post

Required operations: view-common

Authorizations
Body
unreadOnlybooleanOptional
lastIdstring · ulid | nullableOptional
limitinteger · int32 | nullableOptional
createdFromstring · date-time | nullableOptional
createdTostring · date-time | nullableOptional
Responses
200

OK

post
POST /notification/api/v1/admin-notifications HTTP/1.1
Host: 
Authorization: Bearer JWT
Content-Type: application/json; x-api-version=1.0
Accept: */*
Content-Length: 158

{
  "unreadOnly": true,
  "types": [
    "ExternalOrderTimeout"
  ],
  "lastId": "text",
  "limit": 1,
  "createdFrom": "2025-09-09T23:03:37.501Z",
  "createdTo": "2025-09-09T23:03:37.501Z"
}
{
  "notifications": [
    {
      "id": "text",
      "type": "ExternalOrderTimeout",
      "data": {
        "interval": "text",
        "timeouts": [
          {
            "marketId": "text",
            "count": 1
          }
        ],
        "type": "ExternalOrderTimeout"
      },
      "isRead": true,
      "createdAt": "2025-09-09T23:03:37.501Z"
    }
  ]
}
get

Required operations: view-common

Authorizations
Responses
200

OK

get
GET /notification/api/v1/admin-notifications/unread-count HTTP/1.1
Host: 
Authorization: Bearer JWT
Accept: */*
{
  "count": 1
}
post

Required operations: view-common

Authorizations
Body
idsstring · ulid[] | nullableOptional
Responses
200

OK

Responseobject
post
POST /notification/api/v1/admin-notifications/mark-as-read HTTP/1.1
Host: 
Authorization: Bearer JWT
Content-Type: application/json; x-api-version=1.0
Accept: */*
Content-Length: 16

{
  "ids": [
    "text"
  ]
}
{}
post

Required operations: view-common

Authorizations
Responses
200

OK

Responseobject
post
POST /notification/api/v1/admin-notifications/mark-all-as-read HTTP/1.1
Host: 
Authorization: Bearer JWT
Accept: */*
{}

Trader notifications

post

Required operations: trading-ui

Authorizations
Header parameters
accountIdstringRequired
Body
isUnreadOnlybooleanOptional
lastIdstring · ulid | nullableOptional
limitinteger · int32 | nullableOptional
Responses
200

OK

post
POST /notification/api/v1/trader-notifications HTTP/1.1
Host: 
Authorization: Bearer JWT
accountId: text
Content-Type: application/json; x-api-version=1.0
Accept: */*
Content-Length: 47

{
  "isUnreadOnly": true,
  "lastId": "text",
  "limit": 1
}
{
  "notifications": [
    {
      "id": "text",
      "isRead": true,
      "createdAt": "2025-09-09T23:03:37.501Z",
      "type": "MarketPrice",
      "data": {
        "accountName": "text",
        "marginCallLevel": "text",
        "type": "MarketPrice"
      }
    }
  ]
}
get

Required operations: trading-ui

Authorizations
Header parameters
accountIdstringRequired
Responses
200

OK

get
GET /notification/api/v1/trader-notifications/unread-count HTTP/1.1
Host: 
Authorization: Bearer JWT
accountId: text
Accept: */*
{
  "count": 1
}
post

Required operations: trading-ui

Authorizations
Header parameters
accountIdstringRequired
Body
idsstring[] | nullableOptional
Responses
200

OK

Responseobject
post
POST /notification/api/v1/trader-notifications/mark-as-read HTTP/1.1
Host: 
Authorization: Bearer JWT
accountId: text
Content-Type: application/json; x-api-version=1.0
Accept: */*
Content-Length: 16

{
  "ids": [
    "text"
  ]
}
{}
post

Required operations: trading-ui

Authorizations
Header parameters
accountIdstringRequired
Responses
200

OK

Responseobject
post
POST /notification/api/v1/trader-notifications/mark-all-as-read HTTP/1.1
Host: 
Authorization: Bearer JWT
accountId: text
Accept: */*
{}

Last updated

Was this helpful?