December 29, 2023
Does Crypto.com have an API?
Yes, Crypto.com does have an API, specifically the Exchange API v1, which offers REST and WebSocket interfaces. It covers various functionalities such as reference and market data, account balance and position, trading, advanced order management, order, trade, transaction history, wallet management, and WebSocket subscriptions. However, an alternative to using Crypto.com's public API is to use Mesh, which has built integration with Crypto.com along with 300+ other digital asset exchanges and wallets.
About Crypto.com
Founded in 2016 by Bobby Bao, Gary Or, Kris Marszalek, Rafael Melo, and Roger Ver, Crypto.com is a Singapore-based platform that enables users to buy, sell, and pay with cryptocurrencies. With over 10 million customers, the company offers a range of services, including a crypto app, a crypto card program, an exchange, a DeFi wallet, and an NFT platform.
General usage
Crypto.com’s API provides developers with REST and WebSocket interfaces:
- REST API: Ideal for web and mobile applications, it handles various requests using HTTP/HTTPS protocols. It's used for account management, trading, and accessing market data.
- WebSocket Feed: Provides real-time data streaming, essential for applications needing immediate updates like live price tracking or order book changes.
Rate Limits
Here are some specific rate limits for various endpoints for Crypto.com’s API:
- Authenticated Calls (per API method, per API key):
- 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, private/get-order-history (REST API): 1 request per second
- private/get-trades, private/get-order-history (WebSocket): 5 requests per second
- Public Market Data Calls (per API method, per IP address):
- public/get-book, public/get-ticker, public/get-trades, public/get-valuations, public/get-candlestick, public/get-insurance: 100 requests per second each
It is recommended to add a 1-second sleep after establishing the websocket connection and before sending requests to avoid rate-limit errors.
Authentication
This is how you authenticate your requests to the Crypto.com API:
- Generate an API key on the Exchange website under "User Center" - "API".
- Note down the API Key and Secret Key after generation.
- Set the appropriate permissions for your API key via the Web UI.
- Optionally, specify a whitelist of IP addresses when generating the API Key.
- For REST API, include the digital signature (as "sig") and API key (as "api_key") in your private method requests. For WebSocket (User API), invoke the "public/auth" command once per session with the digital signature and API key as part of the request.
Errors
Here are three examples of error codes you might receive when using the Crypto.com API:
- INVALID_NONCE: Ensure that the nonce is the UTC Unix timestamp in milliseconds and that the system clock of the client machine is synchronized with the NTP time server. If errors persist, try subtracting a few seconds from the nonce to force it to be within the 60-second past tolerance.
- TOO_MANY_REQUESTS: Add a 1-second sleep after establishing the WebSocket connection and before sending requests to ensure the rate limit is properly reset and synced to your session.
- UNAUTHORIZED: Verify that the API key and digital signature are correct. If the issue persists, double-check the API key permissions and IP address whitelist.
Recent changes
Here are five of the most recent changes to the Crypto.com API:
- 2023-12-11: Introduced Market Data subscription limiting.
- 2023-10-31: Updates to user.balance and private/user-balance endpoints, including new fields and deprecations related to margin balance calculations and collateral token assets.
- 2023-08-11: Added private/create-order-list (LIST) for batch order creation and private/cancel-order-list (LIST) for batch order cancellation.
- 2023-07-31: Market Data Websocket Subscriptions became effective, with new channels for funding rates and estimated funding rates.
- 2023-06-28: Added private/get-deposit-history and private/get-withdrawal-history endpoints.
An alternative to the Crypto.com API.
As highlighted earlier, Mesh stands out as an excellent alternative to Crypto.com’s API, especially for developers and businesses seeking a seamless and integrated user experience in handling cryptocurrency deposits, transfers and payments. Below are some key features of Mesh's API:
- Integrated User Experience: Mesh seamlessly embeds cryptocurrency deposit, transfer and payment functionalities into your app, offering a smooth user journey.
- Broad Connectivity: With a single integration, Mesh connects to over 300 brokerages, exchanges, and wallets, providing extensive flexibility and choice.
- Simplified Asset Management: The API eases the process of depositing assets, allowing transfers from various sources directly within your app for enhanced user convenience.
Start with Mesh today and experience the ease and efficiency of leveraging their cutting-edge API to supercharge your digital asset endeavors.