Cryptocom

Cryptocom

Cryptocom API Information

Cryptocom API Link: https://exchange-docs.crypto.com/exchange/v1/rest-ws/index.html#common-api-reference

Base Endpoints

  • Base Endpoint: https://api.crypto.com/exchange/v1

LIMITS

Cryptocom API Link: https://exchange-docs.crypto.com/exchange/v1/rest-ws/index.html#rate-limits

REST API For authenticated calls, rate limits are applied per API method and per API key:

Method Limit
private/create-order \ private/cancel-order \ private/cancel-all-orders 15 requests per 100ms each
private/get-order-detail 30 requests per 100ms
private/get-trades 1 requests per second
private/get-order-history 1 requests per second
All others 3 requests per 100md each

For general market data calls, rate limits are applied per API method and per IP address:

Method Limit
public/get-book 100 requests per second each
public/get-ticker 100 requests per second each
public/get-trades 100 requests per second each
public/get-valuations 100 requests per second each
public/get-candlestick 100 requests per second each
public/get-insurance 100 requests per second each

Staking:

Method Limit
public/staking/* 50 requests per second
private/staking/* 50 requests per second

Websocket:

Websocket Limit
User API 150 requests per second
Market Data 100 requests per second

private/get-trades and private/get-order-history on Websocket are limited to 5 requests per second.

⚠️

Important Note

After establishing a Websocket connection and before sending requests, it is recommended to add a 1-second delay (sleep). This helps prevent rate limit (TOO_MANY_REQUESTS) errors, since Websocket rate limits are calculated proportionally to the calendar second when the connection is opened.

RCXT Cryptocom API Information

There is 1 Base Endpoint for the Cryptocom exchange:

  • apiUrl: api.crypto.com/exchange/v1

Rate Limits

On the Cryptocom exchange, the rate limit set for each endpoint is as follows:

Limit (100ms) Spot DepositWithdrawals TransferIn Transfer Out
Fetch Balances 3 Request Weight
Fetch Orders 3 Request Weight
Fetch Trades 10 Request Weight
Fetch DepositWithdrawals 10 Request Weight 10 Request Weight 10 Request Weight
Limit (1 Saniye) Ticker
Fetch Ticker 100 Request Weight

Fetch Balances

Spot Balance
  • Uses apiUrl(api.crypto.com/exchange/v1) as the Base Endpoint.
  • Uses private/user-balance as the Endpoint.
  • Uses api/v1/cryptocom/balances as the RCXT Endpoint.

The user sends a GET request to query Cryptocom wallet balances. This request must include the required header parameters:

  • apiKey and secretKey values are taken from the header.

  • Limiter:

    • Each API endpoint has a specific Request Weight value assigned. The Request Weight value for Spot Balance is 3.
Earn Balance
  • Uses apiUrl(api.crypto.com/exchange/v1) as the Base Endpoint.
  • Uses private/user-balance as the Endpoint.
  • Uses api/v1/cryptocom/balances as the RCXT Endpoint.

The user sends a GET request to query Cryptocom Earn wallet balances. This request must include the required header parameters:

  • apiKey and secretKey values are taken from the header.

  • Limiter:

    • Each API endpoint has a specific Request Weight value assigned. The Request Weight value for Earn Balance is 3.

Response Example:

{
  "spot": [
    {
      "coin": "XLM",
      "total": "0.9535"
    },
    {
      "coin": "USDT",
      "total": "0.10652386"
    },
    {
      "coin": "CRO",
      "total": "0.81145704"
    },
    {
      "coin": "XRP",
      "total": "0.75"
    },
    {
      "coin": "USD",
      "total": "10.11864971366041948"
    }
  ],
  "margin": null,
  "isolatedMargin": null,
  "futures": null,
  "earnings": [
    {
      "coin": "CRO",
      "total": "38.9415"
    }
  ]
}

Fetch Trades

Spot Trades
  • Uses apiUrl(api.crypto.com/exchange/v1) as the Base Endpoint.

  • Uses private/get-trades as the Endpoint.

  • Uses api/v1/cryptocom/trades as the RCXT Endpoint.

  • apiKey and secretKey values are taken from the header.

  • From query parameters, startTime, endTime, and symbol values are taken:

    • startTime: The date from which we want to fetch the data.
    • endTime: The date until which we want to fetch the data.
    • symbol: The trading pair symbol to fetch trades for. (e.g. BTCUSDT)
  • Limiter:

    • Each API endpoint has a specific Request Weight value assigned. The Request Weight value for Spot Trades is 10.

Response Example:

{
  "trades": [
    {
      "orderId": "226664511",
      "tradeId": "27082209",
      "isBuyer": false,
      "isMaker": false,
      "price": "0.07610000",
      "quantity": "199.90000000",
      "symbol": "ACAUSDT",
      "time": 1737552748284,
      "commission": "0.01521239",
      "commissionCurrency": "USDT"
    }
  ],
  "cursor": ""
}

Fetch Orders

Spot Orders
  • Uses apiUrl(api.crypto.com/exchange/v1) as the Base Endpoint.

  • Uses private/get-order-history as the Endpoint.

  • Uses api/v1/cryptocom/orders as the RCXT Endpoint.

  • apiKey and secretKey values are taken from the header.

  • From query parameters, startTime, endTime, symbol, singleOrderId, and orderStatus values are taken:

    • startTime: The date from which we want to fetch the data.
    • endTime: The date until which we want to fetch the data.
    • symbol: The trading pair symbol to fetch orders for. (e.g. BTCUSDT)
    • singleOrderId: Used to filter for a specific order by OrderID.
    • orderStatus: If “open”, fetches Open Orders; if “closed”, fetches Closed Orders.
  • Limiter:

    • Each API endpoint has a specific Request Weight value assigned. The Request Weight value for Spot Orders is 3.
Spot Open Orders
  • Uses apiUrl(api.crypto.com/exchange/v1) as the Base Endpoint.

  • Uses private/get-open-orders as the Endpoint.

  • Uses api/v1/cryptocom/orders as the RCXT Endpoint.

  • apiKey and secretKey values are taken from the header.

  • From query parameters, startTime, endTime, symbol, singleOrderId, and orderStatus values are taken:

    • startTime: The date from which we want to fetch the data.
    • endTime: The date until which we want to fetch the data.
    • symbol: The trading pair symbol to fetch orders for. (e.g. BTCUSDT)
    • singleOrderId: Used to filter for a specific order by OrderID.
    • orderStatus: If “open”, fetches Open Orders; if “closed”, fetches Closed Orders.
  • Limiter:

    • Each API endpoint has a specific Request Weight value assigned. The Request Weight value for Spot Open Orders is 3.

Response Example:

{
  "orders": [
    {
      "orderId": "226664511",
      "symbol": "ACAUSDT",
      "type": "MARKET",
      "price": "0",
      "side": "SELL",
      "time": 1737552748284,
      "status": "CLOSED",
      "executedQuantity": "199.90000000",
      "quantity": "199.90000000"
    }
  ],
  "cursor": ""
}

Fetch DepositWithdrawal

Fiat Deposits
  • Uses apiUrl(api.crypto.com/exchange/v1) as the Base Endpoint.

  • Uses private/get-deposit-history as the Endpoint.

  • Uses api/v1/cryptocom/deposit-withdraw-history as the RCXT Endpoint.

  • apiKey and secretKey values are taken from the header.

  • From query parameters, startTime, endTime, and symbol values are taken:

    • startTime: The date from which we want to fetch the data.
    • endTime: The date until which we want to fetch the data.
    • symbol: The trading pair symbol to fetch deposits for. (e.g. BTCUSDT)
  • Limiter:

    • Each API endpoint has a specific Request Weight value assigned. The Request Weight value for DepositWithdrawals is 10.
    • Maximum 200 records can be fetched per page.
Fiat Withdrawal
  • Uses apiUrl(api.crypto.com/exchange/v1) as the Base Endpoint.

  • Uses private/get-withdrawal-history as the Endpoint.

  • Uses api/v1/cryptocom/deposit-withdraw-history as the RCXT Endpoint.

  • apiKey and secretKey values are taken from the header.

  • From query parameters, startTime, endTime, and symbol values are taken:

    • startTime: The date from which we want to fetch the data.
    • endTime: The date until which we want to fetch the data.
    • symbol: The trading pair symbol to fetch withdrawals for. (e.g. BTCUSDT)
  • Limiter:

    • Each API endpoint has a specific Request Weight value assigned. The Request Weight value for DepositWithdrawals is 10.
    • Maximum 200 records can be fetched per page.
Transfer In
  • Uses apiUrl(api.crypto.com/exchange/v1) as the Base Endpoint.

  • Uses private/get-deposit-history as the Endpoint.

  • Uses api/v1/cryptocom/deposit-withdraw-history as the RCXT Endpoint.

  • apiKey and secretKey values are taken from the header.

  • From query parameters, startTime, endTime, and symbol values are taken:

    • startTime: The date from which we want to fetch the data.
    • endTime: The date until which we want to fetch the data.
    • symbol: The trading pair symbol to fetch transfers in. (e.g. BTCUSDT)
  • Limiter:

    • Each API endpoint has a specific Request Weight value assigned. The Request Weight value for Transfer In is 10.
    • Maximum 200 records can be fetched per page.
Transfer Out
  • Uses apiUrl(api.crypto.com/exchange/v1) as the Base Endpoint.

  • Uses private/get-withdrawal-history as the Endpoint.

  • Uses api/v1/cryptocom/deposit-withdraw-history as the RCXT Endpoint.

  • apiKey and secretKey values are taken from the header.

  • From query parameters, startTime, endTime, and symbol values are taken:

    • startTime: The date from which we want to fetch the data.
    • endTime: The date until which we want to fetch the data.
    • symbol: The trading pair symbol to fetch transfers out. (e.g. BTCUSDT)
  • Limiter:

    • Each API endpoint has a specific Request Weight value assigned. The Request Weight value for Transfer Out is 10.
    • Maximum 200 records can be fetched per page.

Response Example:

{
  "depositWithdrawals": [
    {
      "fiatCurrency": "TRY",
      "cryptoCurrency": "LTC",
      "fiatAmount": "172.14",
      "cryptoAmount": "0.04027305",
      "price": "4274.57",
      "address": "",
      "orderId": "",
      "transactionId": "19312553710",
      "fee": "0.000120816",
      "network": "",
      "status": "Completed",
      "time": 1737380406277
    }
  ],
  "cursor": ""
}

Fetch Ticker

Ticker
  • Uses apiUrl(api.crypto.com/exchange/v1) as the Base Endpoint.

  • Uses public/get-tickers as the Endpoint.

  • Uses api/v1/cryptocom/ticker as the RCXT Endpoint.

  • Only the symbol value is taken as a query parameter (e.g. BTCUSDT):

    • symbol: Specifies the trading pair symbol.
  • Limiter:

    • Each API endpoint has a specific Request Weight value assigned. The Request Weight value for Ticker is 100.

Response Example:

{
  "symbol": "BTCUSDT",
  "price": "104562.53000000"
}