Trakx Exchange Api - Dev

Signing API requests

Before calling private endpoint you will need to generate three headers

  • X-Auth-Apikey : the API key you have generated from the exchange UI.
  • X-Auth-Nonce : the Unix time stamp, in milliseconds, used to generate the signature.
  • X-Auth-Signature : HMAC-SHA256 signature digest, in hexadecimal form, of the concatenation of X-Auth-Nonce and X-Auth-Apikey signed by the Api Secret generated from the exchange UI.
  • and add them to your Http requests.

    Example values to test your code :

    Please feel free to use the following values to test that your code is producing the correct signatures.

    # Current unix timestamp in milliseconds
    nonce = '12345678789'
    # API Key generated using the exchange web application.
    api_key = 'abcdef1234'
    # API Secret generated using the exchange web application.
    secret = '1234567abcdef'
    # HMAC-SHA256 signature digest in hexadecimal representation.
    signature = HMAC.HexDigest(algorithm: "SHA256", secret: secret, value: nonce + api_key)

    With the above value, the signature is expected to be

    4b617b1162ba00c892b960b49dca41dd7978dd19ed14bd482ba324417b43d79a

    OpenApi description

        
    openapi: 3.0.0 info: title: Trakx Exchange API description: All exchange API endpoints contact: name: trakx.io email: [email protected] url: https://trakx.io license: name: private url: http://trakx.io version: '2.4.1' servers: - url: 'https://dev-api.trakx.io/' description: Trakx Dev API tags: - name: account description: Endpoints related to user account operations (deposits, balances, withdraws, etc.). - name: resource description: Endpoints used to detail resources available to the user (api keys, verification labels, etc.). - name: public description: Unauthenticated endpoints. - name: market description: Endpoints related to authenticated market operations (placing orders, review past trades, etc.). paths: /exchange/public/health/ready: get: description: Get application readiness status responses: "200": description: Get application readiness status tags: - public operationId: getPublicHealthReady /exchange/public/health/alive: get: description: Get application liveness status responses: "200": description: Get application liveness status tags: - public operationId: getPublicHealthAlive /exchange/public/version: get: description: Get running Peatio version and build details. responses: "200": description: Get running Peatio version and build details. tags: - public operationId: getPublicVersion /exchange/public/timestamp: get: description: Get server current time. responses: "200": description: Get server current time, in seconds since Unix epoch. content: application/text: schema: type: string format: date-time tags: - public operationId: getPublicTimestamp /exchange/public/member-levels: get: description: Returns hash of minimum levels and the privileges they provide. responses: "200": description: Returns hash of minimum levels and the privileges they provide. tags: - public operationId: getPublicMemberLevels "/exchange/public/markets/{market}/tickers": get: description: Get ticker of specific market. parameters: - in: path name: market description: "" required: true schema: type: string responses: "200": description: Get ticker of specific market. content: application/json: schema: $ref: '#/components/schemas/Ticker' tags: - public operationId: getPublicMarketsMarketTickers /exchange/public/markets/tickers: get: description: Get ticker of all markets. responses: "200": description: Get ticker of all markets. content: application/json: schema: $ref: '#/components/schemas/Tickers' tags: - public operationId: getPublicMarketsTickers "/exchange/public/markets/{market}/k-line": get: description: Get OHLC(k line) of specific market. parameters: - in: path name: market description: "" required: true schema: type: string - in: query name: period description: Time period of K line, default to 1. You can choose between 1, 5, 15, 30, 60, 120, 240, 360, 720, 1440, 4320, 10080 required: false schema: type: integer format: int32 enum: - 1 - 5 - 15 - 30 - 60 - 120 - 240 - 360 - 720 - 1440 - 4320 - 10080 default: 1 - in: query name: time_from description: An integer represents the seconds elapsed since Unix epoch. If set, only k-line data after that time will be returned. required: false schema: type: integer format: int32 - in: query name: time_to description: An integer represents the seconds elapsed since Unix epoch. If set, only k-line data till that time will be returned. required: false schema: type: integer format: int32 - in: query name: limit description: Limit the number of returned data points default to 30. Ignored if time_from and time_to are given. required: false schema: type: integer format: int32 minimum: 1 maximum: 10000 default: 30 responses: "200": description: Get OHLC(k line) of specific market. tags: - public operationId: getPublicMarketsMarketKLine "/exchange/public/markets/{market}/depth": get: description: Get depth or specified market. Both asks and bids are sorted from highest price to lowest. parameters: - in: path name: market description: "" required: true schema: type: string - in: query name: limit description: Limit the number of returned price levels. Default to 300. required: false schema: type: integer format: int32 minimum: 1 maximum: 1000 default: 300 responses: "200": description: Get depth or specified market. Both asks and bids are sorted from highest price to lowest. tags: - public operationId: getPublicMarketsMarketDepth "/exchange/public/markets/{market}/trades": get: description: Get recent trades on market, each trade is included only once. Trades are sorted in reverse creation. parameters: - in: path name: market description: "" required: true schema: type: string - in: query name: limit description: Limit the number of returned trades. Default to 100. required: false schema: type: integer format: int32 minimum: 1 maximum: 1000 default: 100 - in: query name: page description: Specify the page of paginated results. required: false schema: type: integer format: int32 default: 1 - in: query name: timestamp description: An integer represents the seconds elapsed since Unix epoch. If set, only trades executed before the time will be returned. required: false schema: type: integer format: int32 - in: query name: order_by description: If set, returned trades will be sorted in specific order, default to 'desc'. required: false schema: $ref: "#/components/schemas/Ordering" default: desc responses: "200": description: Get recent trades on market, each trade is included only once. Trades are sorted in reverse creation order. content: application/json: schema: type: array items: $ref: "#/components/schemas/Trade" tags: - public operationId: getPublicMarketsMarketTrades "/exchange/public/markets/{market}/order-book": get: description: Get the order book of specified market. parameters: - in: path name: market description: "" required: true schema: type: string - in: query name: asks_limit description: Limit the number of returned sell orders. Default to 20. required: false schema: type: integer format: int32 minimum: 1 maximum: 200 default: 20 - in: query name: bids_limit description: Limit the number of returned buy orders. Default to 20. required: false schema: type: integer format: int32 minimum: 1 maximum: 200 default: 20 responses: "200": description: Get the order book of specified market. content: application/json: schema: type: array items: $ref: "#/components/schemas/OrderBook" tags: - public operationId: getPublicMarketsMarketOrderBook /exchange/public/markets: get: description: Get all available markets. responses: "200": description: Get all available markets. content: application/json: schema: type: array items: $ref: "#/components/schemas/Market" tags: - public operationId: getPublicMarkets /exchange/public/currencies: get: description: Get list of currencies parameters: - in: query name: type description: Currency type required: false schema: type: string enum: - fiat - coin responses: "200": description: Get list of currencies content: application/json: schema: type: array items: $ref: "#/components/schemas/Currency" tags: - public operationId: getPublicCurrencies "/exchange/public/currencies/{id}": get: description: Get a currency parameters: - in: path name: id description: Currency code. required: true schema: type: string responses: "200": description: Get a currency content: application/json: schema: $ref: "#/components/schemas/Currency" tags: - public operationId: getPublicCurrenciesId "/exchange/account/balances/{currency}": get: description: Get user account by currency parameters: - in: path name: currency description: The currency code. required: true schema: type: string responses: "200": description: Get user account by currency content: application/json: schema: $ref: "#/components/schemas/Account" tags: - account security: - ApiKey: [] - ApiKeyNonce: [] - ApiKeySignature: [] - BearerToken: [] operationId: getAccountBalancesCurrency /exchange/account/balances: get: description: Get list of user accounts responses: "200": description: Get list of user accounts content: application/json: schema: type: array items: $ref: "#/components/schemas/Account" tags: - account security: - ApiKey: [] - ApiKeyNonce: [] - ApiKeySignature: [] - BearerToken: [] operationId: getAccountBalances "/exchange/account/deposit_address/{currency}": get: description: Returns deposit address for account you want to deposit to by currency. The address may be blank because address generation process is still in progress. If this case you should try again later. parameters: - in: path name: currency description: The account you want to deposit to. required: true schema: type: string - in: query name: address_format description: Address format legacy/cash required: false schema: type: string enum: - legacy - cash responses: "200": description: Returns deposit address for account you want to deposit to by currency. The address may be blank because address generation process is still in progress. If this case you should try again later. content: application/json: schema: $ref: "#/components/schemas/Deposit" tags: - account security: - ApiKey: [] - ApiKeyNonce: [] - ApiKeySignature: [] - BearerToken: [] operationId: getAccountDepositAddressCurrency "/exchange/account/deposits/{txid}": get: description: Get details of specific deposit. parameters: - in: path name: txid description: Deposit transaction id required: true schema: type: string responses: "200": description: Get details of specific deposit. content: application/json: schema: $ref: "#/components/schemas/Deposit" tags: - account security: - ApiKey: [] - ApiKeyNonce: [] - ApiKeySignature: [] - BearerToken: [] operationId: getAccountDepositsTxid /exchange/account/deposits: get: description: Get your deposits history. parameters: - in: query name: currency description: Currency code required: false schema: type: string - in: query name: state description: "" required: false schema: type: string enum: - submitted - canceled - rejected - accepted - collected - in: query name: limit description: Number of deposits per page (defaults to 100, maximum is 100). required: false schema: type: integer format: int32 minimum: 1 maximum: 100 default: 100 - in: query name: page description: Page number (defaults to 1). required: false schema: type: integer format: int32 default: 1 responses: "200": description: Get your deposits history. content: application/json: schema: type: array items: $ref: "#/components/schemas/Deposit" tags: - account security: - ApiKey: [] - ApiKeyNonce: [] - ApiKeySignature: [] - BearerToken: [] operationId: getAccountDeposit /exchange/account/withdraws: get: description: List your withdraws as paginated collection. parameters: - in: query name: currency description: Currency code. required: false schema: type: string - in: query name: limit description: Number of withdraws per page (defaults to 100, maximum is 100). required: false schema: type: integer format: int32 minimum: 1 maximum: 100 default: 100 - in: query name: page description: Page number (defaults to 1). required: false schema: type: integer format: int32 default: 1 responses: "200": description: List your withdraws as paginated collection. content: application/json: schema: type: array items: $ref: "#/components/schemas/Withdraw" tags: - account security: - ApiKey: [] - ApiKeyNonce: [] - ApiKeySignature: [] - BearerToken: [] operationId: getAccountWithdraws /exchange/market/trades: get: description: Get your executed trades. Trades are sorted in reverse creation order. parameters: - in: query name: market description: "" required: false schema: type: string - in: query name: limit description: Limit the number of returned trades. Default to 100. required: false schema: type: integer format: int32 minimum: 1 maximum: 1000 default: 100 - in: query name: page description: Specify the page of paginated results. required: false schema: type: integer format: int32 default: 1 - in: query name: time_from description: An integer represents the seconds elapsed since Unix epoch.If set, only trades executed after the time will be returned. required: false schema: type: integer format: int32 - in: query name: time_to description: An integer represents the seconds elapsed since Unix epoch.If set, only trades executed before the time will be returned. required: false schema: type: integer format: int32 - in: query name: order_by description: If set, returned trades will be sorted in specific order, default to 'desc'. required: false schema: $ref: "#/components/schemas/Ordering" default: desc responses: "200": description: Get your executed trades. Trades are sorted in reverse creation order. content: application/json: schema: type: array items: $ref: "#/components/schemas/Trade" tags: - market security: - ApiKey: [] - ApiKeyNonce: [] - ApiKeySignature: [] - BearerToken: [] operationId: getMarketTrades /matching/market/orders/cancel: post: description: Cancel many orders. requestBody: content: application/json: schema: $ref: "#/components/schemas/CancelOrderRequest" responses: "200": description: Canceled many my orders successfully. content: text/plain: schema: type: string tags: - market security: - ApiKey: [] - ApiKeyNonce: [] - ApiKeySignature: [] - BearerToken: [] operationId: postMarketOrdersCancel "/matching/market/orders/cancel/{uuid}": post: description: Cancel an order. parameters: - in: path name: uuid description: "The Guid of the order to be cancelled" required: true schema: type: string format: uuid responses: "200": description: Cancel an order. content: application/json: schema: $ref: "#/components/schemas/CancelOrderResponse" tags: - market security: - ApiKey: [] - ApiKeyNonce: [] - ApiKeySignature: [] - BearerToken: [] operationId: postMarketOrdersIdCancel /matching/market/orders: post: description: Create a Sell/Buy order. requestBody: content: application/json: schema: $ref: "#/components/schemas/CreateOrderRequest" responses: "201": description: Create a Sell/Buy order. content: application/json: schema: $ref: "#/components/schemas/CreateOrderResponse" tags: - market security: - ApiKey: [] - ApiKeyNonce: [] - ApiKeySignature: [] - BearerToken: [] operationId: postMarketOrders /exchange/market/orders: get: description: Get your orders, results is paginated. parameters: - in: query name: market description: "" required: false schema: type: string - in: query name: state description: Filter order by state. required: false schema: $ref: "#/components/schemas/OrderState" - in: query name: limit description: Limit the number of returned orders, default to 100. required: false schema: type: integer format: int32 minimum: 0 maximum: 1000 default: 100 - in: query name: page description: Specify the page of paginated results. required: false schema: type: integer format: int32 default: 1 - in: query name: order_by description: If set, returned orders will be sorted in specific order, default to "desc". required: false schema: $ref: "#/components/schemas/Ordering" default: desc - in: query name: ord_type description: Filter order by ord_type. required: false schema: type: string enum: - market - limit - in: query name: type description: Filter order by type. required: false schema: type: string enum: - buy - sell responses: "200": description: Get your orders, results is paginated. content: application/json: schema: type: array items: $ref: "#/components/schemas/Order" tags: - market security: - ApiKey: [] - ApiKeyNonce: [] - ApiKeySignature: [] - BearerToken: [] operationId: getMarketOrders "/exchange/market/orders/{id}": get: description: Get information of specified order. parameters: - in: path name: id description: "" required: true schema: type: integer format: int32 responses: "200": description: Get information of specified order. content: application/json: schema: $ref: "#/components/schemas/Order" tags: - market security: - ApiKey: [] - ApiKeyNonce: [] - ApiKeySignature: [] - BearerToken: [] operationId: getMarketOrdersId /permissions/resource/api_keys: get: description: List all api keys for current account. parameters: - in: query name: page description: Page number (defaults to 1). required: false schema: type: integer format: int32 default: 1 - in: query name: limit description: Number of api keys per page (defaults to 100, maximum is 1000). required: false schema: type: integer format: int32 default: 100 responses: "200": description: List all api keys for current account. "400": description: Require 2FA and totp code "401": description: Invalid bearer token tags: - resource security: - ApiKey: [] - ApiKeyNonce: [] - ApiKeySignature: [] - BearerToken: [] operationId: getResourceApiKeys "/permissions/resource/users/activity/{topic}": get: description: Returns user activity parameters: - in: query name: page description: Page number (defaults to 1). required: false schema: type: integer format: int32 default: 1 - in: query name: limit description: Number of activity per page (defaults to 100, maximum is 1000). required: false schema: type: integer format: int32 default: 100 - in: path name: topic description: "Topic of user activity. Allowed: [all, password, session, otp]" required: true schema: type: string responses: "200": description: Returns user activity tags: - resource security: - ApiKey: [] - ApiKeyNonce: [] - ApiKeySignature: [] - BearerToken: [] operationId: getResourceUsersActivityTopic /permissions/resource/users/me: get: description: Returns current user responses: "200": description: Returns current user content: application/json: schema: $ref: "#/components/schemas/User" tags: - resource security: - ApiKey: [] - ApiKeyNonce: [] - ApiKeySignature: [] - BearerToken: [] operationId: getResourceUsersMe components: securitySchemes: ApiKey: type: apiKey in: header name: X-Auth-Apikey ApiKeyNonce: type: apiKey in: header name: X-Auth-Nonce ApiKeySignature: type: apiKey in: header name: X-Auth-Signature schemas: Currency: type: object properties: name: type: string example: Bitcoin description: Currency name symbol: type: string example: ฿ description: Currency symbol explorer_transaction: type: string example: https://testnet.blockchain.info/tx/ description: Currency transaction exprorer url template explorer_address: type: string example: https://testnet.blockchain.info/address/ description: Currency address exprorer url template type: type: string example: coin description: Currency type deposit_enabled: type: boolean description: Currency deposit possibility status (true/false). withdrawal_enabled: type: boolean description: Currency withdrawal possibility status (true/false). deposit_fee: type: number format: double example: "0.0" description: Currency deposit fee min_deposit_amount: type: number format: double example: "0.0000356" description: Minimal deposit amount withdraw_fee: type: number format: double example: "0.0" description: Currency withdraw fee min_withdraw_amount: type: number format: double example: "0.0" description: Minimal withdraw amount withdraw_limit_24h: type: string example: "0.1" description: Currency 24h withdraw limit withdraw_limit_72h: type: number format: double example: "0.2" description: Currency 72h withdraw limit base_factor: type: integer format: int64 description: Currency base factor. precision: type: integer format: int32 description: Currency precision. position: type: integer format: int32 description: Currency position. icon_url: type: string example: https://upload.wikimedia.org/wikipedia/commons/0/05/Ethereum_logo_2014.svg description: Currency icon min_confirmations: type: integer format: int32 description: Number of confirmations required for confirming deposit or withdrawal code: type: string description: Unique currency code. blockchain_key: type: string description: Associated blockchain key which will perform transactions synchronization for currency. min_collection_amount: type: number format: double description: Minimal collection amount. visible: type: boolean description: Currency display status (true/false). subunits: type: integer format: int32 description: Fraction of the basic monetary unit. options: $ref: '#/components/schemas/CurrencyOptions' created_at: type: string format: date-time description: Currency created time in iso8601 format. updated_at: type: string format: date-time description: Currency updated time in iso8601 format. description: Get list of currencies CurrencyOptions: type: object properties: gas_price: type: integer format: int64 description: Price of gas to be paid for the transaction, in wei erc20_contract_address: type: string description: For erc20 tokens, the address of the contract defining the token gas_limit: type: integer format: int64 description: Maximum amount of gas to be spent for a transaction description: Currency options. Ordering: description: If set, returned values will be sorted in specific order type: string enum: - asc - desc TradeType: type: string enum: - created - updated - completed DateRangePicker: description: Date range picker, defaults to 'created'. type: string enum: - created - updated - completed default: created Operation: type: object properties: id: type: integer nullable: true format: int32 description: Unique operation identifier in database. code: type: string description: The Account code which this operation related to. currency: type: string description: Operation currency ID. credit: type: string description: Operation credit amount. debit: type: string description: Operation debit amount. uid: type: string description: The shared user ID. account_kind: type: string description: Operation's account kind (locked or main). rid: type: string description: The id of operation reference. reference_type: type: string description: The type of operations. created_at: nullable: true format: date-time type: string description: The datetime when operation was created. description: Returns liabilities as a paginated collection. OrderBook: type: object properties: asks: type: array items: $ref: "#/components/schemas/Order" description: Asks in orderbook bids: type: array items: $ref: "#/components/schemas/Order" description: Bids in orderbook description: Get the order book of specified market. Side: description: Side of an order or trade, either buy or sell type: string enum: - buy - sell CreateOrderRequest: type: object properties: market: type: string side: $ref: "#/components/schemas/Side" amount: type: number format: double type: type: string enum: - market - limit default: limit price: type: number format: double required: - market - side - amount - price CancelOrderRequest: type: object properties: market: type: string side: $ref: "#/components/schemas/Side" required: - market CancelOrderResponse: type: object properties: uuid: type: string format: uuid member_uid: type: string OrderState: description: One of 'wait', 'done', or 'cancel'. An order in 'wait' is an active order, waiting fulfillment; a 'done' order is an order fulfilled; 'cancel' means the order has been canceled. type: string enum: - pending - wait - done - cancel - reject CreateOrderResponse: #same as Order object but with dates as integer... type: object required: - uuid - side - price - market - state - origin_volume - remaining_volume - executed_volume - trades_count properties: id: type: integer format: int32 description: Unique order id. uuid: type: string format: uuid description: Unique order UUID. side: $ref: "#/components/schemas/Side" #version 3 returns ord_type, version 2.6 returns type ord_type: type: string description: Type of order, either 'limit' or 'market'. type: type: string description: Type of order, either 'limit' or 'market'. price: type: number format: double description: Price for each unit. e.g.If you want to sell/buy 1 btc at 3000 usd, the price is '3000.0' avg_price: type: number format: double description: Average execution price, average of price in trades. state: $ref: "#/components/schemas/OrderState" market: type: string description: The market in which the order is placed, e.g. 'btcusd'.All available markets can be found at /api/v2/markets. created_at: format: date-time type: number description: Order create time in iso8601 format. updated_at: format: date-time type: number description: Order updated time in iso8601 format. origin_volume: type: number format: double description: The amount user want to sell/buy.An order could be partially executed,e.g. an order sell 5 btc can be matched with a buy 3 btc order,left 2 btc to be sold; in this case the order's volume would be '5.0',its remaining_volume would be '2.0', its executed volume is '3.0'. remaining_volume: type: number format: double description: The remaining volume, see 'volume'. executed_volume: type: number format: double description: The executed volume, see 'volume'. trades_count: type: integer format: int32 description: Count of trades. email: type: string description: The shared user email. uid: type: string description: The shared user ID. description: Get all orders, result is paginated. Order: type: object required: - uuid - side - ord_type - price - market - state - origin_volume - remaining_volume - executed_volume - trades_count properties: id: type: integer format: int32 description: Unique order id. uuid: type: string format: uuid description: Unique order UUID. side: $ref: "#/components/schemas/Side" ord_type: type: string description: Type of order, either 'limit' or 'market'. price: type: number format: double description: Price for each unit. e.g.If you want to sell/buy 1 btc at 3000 usd, the price is '3000.0' avg_price: type: number format: double description: Average execution price, average of price in trades. state: $ref: "#/components/schemas/OrderState" market: type: string description: The market in which the order is placed, e.g. 'btcusd'.All available markets can be found at /api/v2/markets. created_at: format: date-time type: string description: Order create time in iso8601 format. updated_at: format: date-time type: string description: Order updated time in iso8601 format. origin_volume: type: number format: double description: The amount user want to sell/buy.An order could be partially executed,e.g. an order sell 5 btc can be matched with a buy 3 btc order,left 2 btc to be sold; in this case the order's volume would be '5.0',its remaining_volume would be '2.0', its executed volume is '3.0'. remaining_volume: type: number format: double description: The remaining volume, see 'volume'. executed_volume: type: number format: double description: The executed volume, see 'volume'. trades_count: type: integer format: int32 description: Count of trades. email: type: string description: The shared user email. uid: type: string description: The shared user ID. description: Get all orders, result is paginated. Market: type: object properties: id: type: string description: Unique market id. It's always in the form of xxxyyy, where xxx is the base currency code, yyy is the quote currency code, e.g. 'btcusd'. All available markets canbe found at /api/v2/markets. name: type: string description: Market name. base_unit: type: string description: Market Base unit. quote_unit: type: string description: Market Quote unit. min_price: type: number format: double description: Minimum order price. max_price: type: number format: double description: Maximum order price. min_amount: type: number format: double description: Minimum order amount. amount_precision: type: number format: double description: Precision for order amount. price_precision: type: number format: double description: Precision for order price. state: type: string description: Market state defines if user can see/trade on current market. position: type: integer format: int32 description: Market position. engine_name: description: Name of the matching engine type: string engined_id: description: Id of hte matching engine type: integer format: int32 data: type: object description: Market additional data. created_at: format: date-time type: string description: Market created time in iso8601 format. updated_at: format: date-time type: string description: Market updated time in iso8601 format. description: Get all markets, result is paginated. Wallet: type: object properties: id: type: integer format: int32 description: Unique wallet identifier in database. name: type: string description: Wallet name. kind: type: string description: Kind of wallet 'deposit','fee','hot','warm' or 'cold'. currency: type: string description: Wallet currency code. address: type: string description: Wallet address. gateway: type: string description: Wallet gateway. max_balance: type: number format: double description: Wallet max balance. blockchain_key: type: string description: Wallet blockchain key. status: $ref: "#/components/schemas/ActiveState" settings: type: string description: Wallet settings. created_at: type: string format: date-time description: Wallet created time in iso8601 format. updated_at: type: string format: date-time description: Wallet updated time in iso8601 format. description: Get all wallets, result is paginated. Deposit: type: object properties: id: type: integer format: int32 description: Unique deposit id. currency: type: string description: Deposit currency id. amount: type: number format: double description: Deposit amount. fee: type: number format: double description: Deposit fee. txid: type: string description: Deposit transaction id. state: type: string description: Deposit state. created_at: type: string format: date-time description: The datetime when deposit was created. completed_at: type: string nullable: true format: date-time description: The datetime when deposit was completed. tid: type: string description: Deposit tid. member: type: string description: The member id. uid: type: string description: Deposit member uid. email: type: string description: The deposit member email. address: type: string description: Deposit blockchain address. txout: type: integer format: int32 description: Deposit blockchain transaction output. block_number: type: integer format: int32 description: Deposit blockchain block number. type: type: string description: Deposit type (fiat or coin). spread: type: array items: $ref: "#/components/schemas/Account" description: Deposit collection spread. updated_at: type: string format: date-time description: The datetime when deposit was updated. description: Get all deposits, result is paginated. Spread: type: object properties: to_address: type: string amount: type: number format: double currency_id: type: string status: type: string hash: type: string options: type : object properties: gas_limit: type: number gas_price: type: number Withdraw: type: object properties: id: type: integer format: int32 description: The withdrawal id. currency: type: string description: The currency code. type: type: string description: The withdrawal type sum: type: number format: double description: The withdrawal sum. fee: type: number format: double description: The exchange fee. blockchain_txid: nullable: true type: string description: The withdrawal transaction id. rid: type: string description: The beneficiary ID or wallet address on the Blockchain. state: type: string description: The withdrawal state. note: type: string description: Withdraw note. nullable: true created_at: type: string format: date-time description: The datetime for the withdrawal. updated_at: type: string format: date-time description: The datetime for the withdrawal. completed_at: type: string format: date-time description: The datetime when withdraw was completed. member: type: string description: The member id. beneficiary: $ref: "#/components/schemas/Beneficiary" uid: type: string description: The withdrawal member uid. email: type: string description: The withdrawal member email. account: description: The account code. type: array items: oneOf: - type: string - type: integer block_number: nullable: true type: integer format: int32 description: The withdrawal block_number. amount: type: number format: double description: The withdrawal amount. tid: nullable: true type: string description: Withdraw tid. description: Get all withdraws, result is paginated. Beneficiary: type: object properties: id: type: integer format: int32 description: Beneficiary Identifier in Database currency: type: string description: Beneficiary currency code. name: type: string description: Human rememberable name which refer beneficiary. description: nullable: true type: string description: Human rememberable description of beneficiary. data: type: object description: Bank Account details for fiat Beneficiary in JSON format.For crypto it's blockchain address. properties: address: type: string nullable: true state: $ref: "#/components/schemas/BeneficiaryState" BeneficiaryState: description: Current activation state of the beneficiary type: string enum: - active - pending - archived - disabled Trade: type: object properties: id: type: string description: Trade ID. price: type: number format: double description: Trade price. amount: type: number format: double description: Trade amount. total: type: number format: double description: Trade total (Amount * Price). market: type: string description: Trade market id. created_at: type: string format: date-time description: Trade create time in iso8601 format. taker_type: type: string description: Trade taker order type (sell or buy). maker_order_email: type: string description: Trade maker member email. maker_uid: type: string description: Trade maker member uid. maker_fee: type: number format: double description: Trade maker fee percentage. maker_fee_amount: type: number format: double description: Trade maker fee amount. maker_fee_currency: type: string description: Trade maker fee currency code. maker_order: $ref: "#/components/schemas/Order" taker_order_email: type: string description: Trade taker member email. taker_uid: type: string description: Trade taker member uid. taker_fee_currency: type: string description: Trade taker fee currency code. taker_fee: type: number format: double description: Trade taker fee percentage. taker_fee_amount: type: number format: double description: Trade taker fee amount. taker_order: $ref: "#/components/schemas/Order" description: Get all trades, result is paginated. Member: type: object properties: uid: type: string description: Member UID. email: type: string description: Member email. accounts: type: array items: $ref: "#/components/schemas/Account" description: Member accounts. id: type: integer format: int32 description: Unique member identifier in database. level: type: integer format: int32 description: Member's level. role: type: string description: Member's role. group: type: string description: Member's group. state: type: string description: Member's state. created_at: type: string format: date-time description: Member created time in iso8601 format. updated_at: type: string format: date-time description: Member updated time in iso8601 format. beneficiaries: type: array items: $ref: "#/components/schemas/Beneficiary" description: List of beneficiaries linked to the member. deposit_addresses: type: array items: $ref: "#/components/schemas/DepositAddress" description: Get all members, result is paginated. DepositAddress: type: object description: Describes the deposit address of a member of the exchange. properties: currencies: type: array items: type: string description: Codes of the currencies supported by the wallet. address: type: string nullable: true description: Identifier of the address on the corresponding blockchain. state: $ref: "#/components/schemas/ActiveWithPendingState" ActiveState: description: Enum describing the activity state of a given object. type: string enum: [active, disabled] default: active ActiveWithPendingState: description: Enum describing the validation state of a given object. type: string enum: [ active, pending, disabled ] Account: type: object properties: currency: type: string description: Currency code. balance: type: number format: double description: Account balance. locked: type: number format: double description: Account locked funds. TradingFee: type: object properties: id: type: integer format: int32 description: Unique trading fee table identifier in database. group: type: string description: Member group for define maker/taker fee. market_id: type: string description: Market id for define maker/taker fee. maker: type: number format: double description: Market maker fee. taker: type: number format: double description: Market taker fee. created_at: type: string format: date-time description: Trading fee table created time in iso8601 format. updated_at: type: string description: Trading fee table updated time in iso8601 format. description: Returns trading_fees table as paginated collection Level: type: object properties: id: type: integer format: int32 description: Level identifier, level number key: type: string description: Label key. [A-Za-z0-9_-] should be used. Min - 3, max - 255 characters. value: type: string description: Label value. [A-Za-z0-9_-] should be used. Min - 3, max - 255 characters. Label: type: object properties: key: type: string description: Label key. [a-z0-9_-]+ should be used. Min - 3, max - 255 characters. value: type: string description: Label value. [A-Za-z0-9_-] should be used. Min - 3, max - 255 characters. scope: type: string description: "Label scope: 'public' or 'private'" created_at: type: string format: date-time updated_at: type: string format: date-time APIKey: type: object properties: kid: type: string description: jwt public key algorithm: type: string description: cryptographic hash function type scope: type: array nullable: true items: type: string description: serialized array of scopes state: $ref: "#/components/schemas/ActiveState" secret: type: string nullable: true created_at: type: string format: date-time updated_at: type: string format: date-time Profile: type: object properties: uid: type: string nullable: true first_name: type: string nullable: true last_name: type: string nullable: true dob: type: string format: date description: Birthday date nullable: true address: type: string nullable: true postcode: type: string nullable: true city: type: string nullable: true country: type: string nullable: true state: type: string nullable: true metadata: nullable: true type: object description: Profile additional fields created_at: nullable: true type: string format: date-time updated_at: nullable: true type: string format: date-time confirm: nullable: true type: boolean User: type: object properties: email: type: string uid: type: string role: type: string level: type: integer format: int32 otp: type: boolean description: is 2FA enabled for account state: type: string referral_uid: nullable: true type: string description: UID of referrer data: nullable: true type: string description: additional phone and profile info UserWithProfile: type: object properties: email: type: string uid: type: string role: type: string level: type: integer format: int32 otp: type: boolean description: is 2FA enabled for account state: type: string data: nullable: true type: string description: additional phone and profile info profile: $ref: "#/components/schemas/Profile" referral_uid: nullable: true type: string description: UID of referrer created_at: type: string format: date-time updated_at: type: string format: date-time Activity: type: object properties: user_ip: type: string user_agent: type: string topic: type: string action: type: string result: type: string data: type: string created_at: type: string format: date-time Tickers: type: object description: Tickers indexed by market id additionalProperties: $ref: '#/components/schemas/Ticker' Ticker: type: object properties: at: type: integer format: int32 ticker: type: object properties: buy: type: string sell: type: string low: type: string high: type: string open: type: number last: type: string volume: type: string vol: type: string avg_price: type: string price_change_percent: type: string LabelFilter: type: object properties: uid: description: user uniq id type: string nullable: true key: description: Label key. type: string nullable: true scope: description: label key. [a-z0-9_-]+ should be used. Min - 3, max - 255 characters. type: string nullable: true value: description: Label value. type: string nullable: true replace: description: When true label will be created if not exist type: boolean default: true nullable: true