Crypto.com
Crypto.com is a cryptocurrency exchange, brokerage and payments company serving retail and institutional customers across spot, margin and derivatives trading, staking, custody, card and payment acceptance, and on-chain development on the Cronos EVM and Cronos zkEVM networks. Its public developer surface spans four programmable products: the Crypto.com Exchange API v1 (REST, WebSocket and FIX 4.4) for market data, order entry, advanced OCO/OTO/OTOCO orders, trading bots, portfolio, wallet and staking operations; the Crypto.com Pay API for merchant payment acceptance, refunds, subscriptions and invoicing with webhooks and idempotent refunds; the Crypto.com Developer Platform API for Cronos tokens, contracts, transactions, blocks, wallets, CronosID and DeFi; and an agent layer consisting of a published MCP server, an agent-first Rust CLI, and provider-authored Agent Skills for trading through the Crypto.com App and Exchange.
Crypto.com publishes 10 APIs on the APIs.io network, including Account Balance and Positions API, Advanced Order Management API, Crypto Wallet API, and 7 more. Tagged areas include Cryptocurrency, Crypto Exchange, Trading, Derivatives, and Market Data.
The Crypto.com catalog on APIs.io includes 1 event-driven AsyncAPI specification.
Crypto.com’s developer surface includes documentation, API reference, getting-started guide, support, engineering blog, pricing, signup flow, and 37 more developer resources.
1 APIs
1 MCP Servers
Individual APIs this provider publishes, each with its own machine-readable definition.
Open, tool-agnostic API collections (OpenAPI-derived and Bruno).
Model Context Protocol servers that expose these APIs to AI agents.
Published pricing tiers and plan structures.
Documented rate limits and quota policies.
AsyncAPI definitions for this provider's event-driven and streaming APIs.
Authentication, domain security, vulnerability disclosure, and trust-center signals.
aid: crypto-com
name: Crypto.com
description: 'Crypto.com is a cryptocurrency exchange, brokerage and payments company serving retail and institutional customers
across spot, margin and derivatives trading, staking, custody, card and payment acceptance, and on-chain development on
the Cronos EVM and Cronos zkEVM networks. Its public developer surface spans four programmable products: the Crypto.com
Exchange API v1 (REST, WebSocket and FIX 4.4) for market data, order entry, advanced OCO/OTO/OTOCO orders, trading bots,
portfolio, wallet and staking operations; the Crypto.com Pay API for merchant payment acceptance, refunds, subscriptions
and invoicing with webhooks and idempotent refunds; the Crypto.com Developer Platform API for Cronos tokens, contracts,
transactions, blocks, wallets, CronosID and DeFi; and an agent layer consisting of a published MCP server, an agent-first
Rust CLI, and provider-authored Agent Skills for trading through the Crypto.com App and Exchange.'
url: https://raw.githubusercontent.com/api-evangelist/crypto-com/refs/heads/main/apis.yml
deliveryModel:
model: saas
open_source: false
commercial: true
callable_host: true
label: Hosted service · you call their endpoint
confidence: high
source:
- openapi
- pricing
generated: '2026-08-28'
method: derived
accessModel:
pricing: unknown
onboarding: self-serve
trial: false
try_now: false
public: false
label: Self-serve signup
confidence: medium
source:
- authentication
- rate-limits
- security
- sandbox
generated: '2026-09-02'
method: derived
image: https://crypto.com/images/meta-og/listing.png
x-type: company
x-source: harvest:secondary-market
specificationVersion: '0.23'
created: '2026-08-11'
modified: '2026-08-11'
tags:
- Cryptocurrency
- Crypto Exchange
- Trading
- Derivatives
- Market Data
- Digital Assets
- Payments
- Merchant Payments
- Blockchain
- cronos
- DeFi
- Staking
- Fintech
- MCP
- agent-native
tags_raw:
- cryptocurrency
- crypto-exchange
- trading
- derivatives
- market-data
- digital-assets
- payments
- merchant-payments
- blockchain
- cronos
- defi
- staking
- fintech
- mcp
- agent-native
apis:
- name: Crypto.com Exchange WebSocket API v1
description: WebSocket API for the Crypto.com Exchange, split into a Market Data stream (public channels for book, ticker,
trade, candlestick, index, mark price, settlement, funding and open interest) and a User API stream (authenticated via
public/auth once per session, then subscription channels for user.order, user.trade, user.balance, user.positions, user.account_risk,
user.advance.order and related events). Same request envelope and error codes as REST; websocket termination codes 1000/1006/1013
are documented.
humanURL: https://exchange-developer.crypto.com/exchange/v1/docs/api/websocket-introduction
baseURL: wss://stream.crypto.com/exchange/v1
tags:
- Crypto Exchange
- Market Data
- Trading
- Streaming
tags_raw:
- crypto-exchange
- market-data
- trading
- streaming
properties:
- type: Documentation
url: https://exchange-developer.crypto.com/exchange/v1/docs/api/websocket-introduction
- type: APIReference
url: https://exchange-developer.crypto.com/exchange/v1/docs/api/websocket-common-api-reference
- type: Webhooks
url: asyncapi/crypto-com-event-surface.yml
- type: ChangeLog
url: https://exchange-developer.crypto.com/exchange/v1/docs/api/websocket-change-log
- type: RateLimits
url: rate-limits/crypto-com-rate-limits.yml
- name: Crypto.com Exchange FIX API
description: FIX 4.4-based API for institutional order entry, market data and drop copy on the Crypto.com Exchange, with
tags borrowed from later FIX versions. Covers Logon/Logout, NewOrderSingle, MassOrder, OrderCancelRequest, OrderCancelReplaceRequest,
OrderMassCancelRequest, ExecutionReport, SecurityList and MarketDataRequest. The FIX gateway is not reachable over the
public internet - clients must establish an AWS PrivateLink connection - so no public baseURL is published.
humanURL: https://exchange-developer.crypto.com/exchange/v1/docs/api/fix-introduction
tags:
- Crypto Exchange
- Trading
- FIX Protocol
- Institutional
tags_raw:
- crypto-exchange
- trading
- fix-protocol
- institutional
properties:
- type: Documentation
url: https://exchange-developer.crypto.com/exchange/v1/docs/api/fix-introduction
- type: APIReference
url: https://exchange-developer.crypto.com/exchange/v1/docs/api/fix-fix-dictionary
- type: ChangeLog
url: https://exchange-developer.crypto.com/exchange/v1/docs/api/fix-change-log
- type: RateLimits
url: rate-limits/crypto-com-rate-limits.yml
- name: Crypto.com Pay API
description: Merchant payments API for accepting cryptocurrency payments, issuing refunds, running subscriptions and recurring
invoices, managing customers, products and sub-merchants, and reading transaction histories. REST over HTTPS with HTTP
Basic authentication using a secret key, test and live modes separated by key prefix, an Idempotency-Key header on the
refund API, and twelve signed webhook event types verified with an HMAC-SHA256 Pay-Signature header.
humanURL: https://pay-docs.crypto.com/
baseURL: https://pay.crypto.com/api
tags:
- Payments
- Merchant Payments
- Subscription
- Cryptocurrency
tags_raw:
- payments
- merchant-payments
- subscriptions
- cryptocurrency
properties:
- type: Documentation
url: https://pay-docs.crypto.com/
- type: APIReference
url: https://pay-docs.crypto.com/#api-reference
- type: Authentication
url: authentication/crypto-com-authentication.yml
- type: Conventions
url: conventions/crypto-com-conventions.yml
- type: Idempotency
url: conventions/crypto-com-conventions.yml
- type: ErrorCatalog
url: errors/crypto-com-error-codes.yml
- type: Webhooks
url: asyncapi/crypto-com-event-surface.yml
- type: Sandbox
url: sandbox/crypto-com-sandbox.yml
- name: Crypto.com Developer Platform API
description: On-chain developer platform service API for Cronos EVM and Cronos zkEVM, exposing native and ERC-20 token balances
and transfers, smart contract ABI and bytecode lookup, transaction and block queries, wallet creation and balances, CronosID
name resolution, DeFi data, contract events, network information and an Exchange module. Access requires an API key created
against a project in the Developer Platform dashboard; first-party TypeScript and Python client SDKs wrap the service.
humanURL: https://developer.crypto.com/documentation
baseURL: https://developer-platform-api.crypto.com/v1/cdc-developer-platform
tags:
- Blockchain
- cronos
- DeFi
- Web3
- Digital Assets
tags_raw:
- blockchain
- cronos
- defi
- web3
- digital-assets
properties:
- type: DeveloperPortal
url: https://developer.crypto.com/
- type: Documentation
url: https://ai-agent-sdk-docs.crypto.com/crypto.com-developer-platform/on-chain-developer-platform
- type: APIReference
url: https://developer.crypto.com/documentation
- type: LLMsTxt
url: llms/crypto-com-llms.txt
- type: SDKs
url: packages/crypto-com-packages.yml
- aid: crypto-com:crypto-com-account-balance-and-positions-api
name: Crypto.com Account Balance and Positions API
description: 'Retrieve real-time and historical snapshots of wallet balances, open positions, margin requirements, and collateral
status. Use these endpoints to monitor account health, risk exposure, and available trading capacity.
## Account Balance
The user balance response provides a comprehensive view of the account:
- **Available balance** — funds available for new positions and withdrawals
- **Margin balance** — total collateral value (cash + collateral-eligible tokens after haircut)
- **Initial margin (IM)** — collateral required to open current positions and orders
- **Maintenance margin (MM)** — minimum collateral threshold to avoid liquidation
- **Position balance** — per-token breakdown showing quantity, market value, haircut rate, and collateral contribution
If margin balance falls below maintenance margin, the account enters liquidation.
## Positions
The positions endpoint returns all open derivative contracts, including instrument name, quantity (signed to indicate
direction), position cost, and session PnL. For real-time mark price, liquidation price, and margin requirements, subscribe
to the `user.positions` WebSocket channel.
## Subaccounts
Master accounts can create subaccounts to isolate trading activity. Use the subaccount transfer endpoint to move funds
between accounts.'
humanURL: https://exchange-developer.crypto.com/exchange/v1/docs/api/rest-introduction
baseURL: https://api.crypto.com/exchange/v1
tags:
- Account Balance and Positions
properties:
- type: OpenAPI
url: openapi/crypto-com-account-balance-and-positions-api-openapi.yml
- type: Documentation
url: https://exchange-developer.crypto.com/exchange/v1/docs/api/rest-introduction
- type: APIReference
url: https://exchange-developer.crypto.com/exchange/v1/docs/api/rest/crypto-com-exchange-api-v-1
- type: Authentication
url: authentication/crypto-com-authentication.yml
- type: Conventions
url: conventions/crypto-com-conventions.yml
- type: ErrorCatalog
url: errors/crypto-com-error-codes.yml
- type: RateLimits
url: rate-limits/crypto-com-rate-limits.yml
- type: Sandbox
url: sandbox/crypto-com-sandbox.yml
- type: ChangeLog
url: https://exchange-developer.crypto.com/exchange/v1/docs/api/rest-change-log
- type: ToolCrosswalk
url: mcp/crypto-com-tool-crosswalk.yml
- type: DataModel
url: data-model/crypto-com-data-model.yml
- type: LLMsTxt
url: https://exchange-developer.crypto.com/exchange/v1/llms.txt
- aid: crypto-com:crypto-com-advanced-order-management-api
name: Crypto.com Advanced Order Management API
description: 'Advanced Order Management provides trigger orders and multi-leg execution strategies beyond basic LIMIT and
MARKET orders. Use these endpoints for conditional order execution based on price triggers.
## Trigger Orders
Trigger orders activate when a reference price condition is met. Use [`private/advanced/create-order`](/docs/api/rest/private-advanced-create-order)
to create trigger orders.
| Type | Description |
|------|-------------|
| `STOP_LOSS` | Converts to a market order when trigger price is reached. Used to limit losses. |
| `STOP_LIMIT` | Converts to a limit order when trigger price is reached. Offers price control on stop execution. |
| `TAKE_PROFIT` | Market order activated when price moves favorably to the trigger level. Used to lock in gains. |
| `TAKE_PROFIT_LIMIT` | Limit order activated when price moves favorably to the trigger level. |
Trigger orders require:
- `ref_price` — the trigger price
- `ref_price_type` — reference price source: `MARK_PRICE` (default), `INDEX_PRICE`, or `LAST_PRICE`
## Multi-Leg Strategies
Multi-leg orders link multiple orders together with conditional execution logic.
| Strategy | Description | Endpoint |
|----------|-------------|----------|
| **OCO** (One-Cancels-Other) | Two orders where filling one cancels the other. Typically pairs a take-profit with a stop-loss.
| [`private/advanced/create-oco`](/docs/api/rest/private-advanced-create-oco) |
| **OTO** (One-Triggers-Other) | Primary order triggers a secondary order when filled. Used to attach TP/SL to an entry
order. | [`private/advanced/create-oto`](/docs/api/rest/private-advanced-create-oto) |
| **OTOCO** (One-Triggers-OCO) | Primary order triggers an OCO pair when filled. Entry order with both TP and SL attached.
| [`private/advanced/create-otoco`](/docs/api/rest/private-advanced-create-otoco) |
## Contingency Types
Multi-leg orders use contingency types to define the relationship between legs:
| Type | Description |
|------|-------------|
| `OCO` | One-Cancels-Other: two orders, one cancels when the other fills |
| `SPOT_ATTACH` | Attach trigger orders to a spot position |
| `DERIV_ATTACH` | Attach trigger orders to a derivatives position (supports isolated margin) |
## Order Management
- [`private/advanced/amend-order`](/docs/api/rest/private-advanced-amend-order) — modify trigger price or quantity
- [`private/advanced/cancel-order`](/docs/api/rest/private-advanced-cancel-order) — cancel a single advanced order
- [`private/advanced/cancel-all-orders`](/docs/api/rest/private-advanced-cancel-all-orders) — cancel all advanced orders
for an instrument
- [`private/advanced/get-open-orders`](/docs/api/rest/private-advanced-get-open-orders) — retrieve open advanced orders
- [`private/advanced/get-order-history`](/docs/api/rest/private-advanced-get-order-history) — retrieve advanced order
history
## Real-Time Updates
Subscribe to `user.advanced.order` for real-time advanced order lifecycle events.'
humanURL: https://exchange-developer.crypto.com/exchange/v1/docs/api/rest-introduction
baseURL: https://api.crypto.com/exchange/v1
tags:
- Advanced Order Management
properties:
- type: OpenAPI
url: openapi/crypto-com-advanced-order-management-api-openapi.yml
- type: Documentation
url: https://exchange-developer.crypto.com/exchange/v1/docs/api/rest-introduction
- type: APIReference
url: https://exchange-developer.crypto.com/exchange/v1/docs/api/rest/crypto-com-exchange-api-v-1
- type: Authentication
url: authentication/crypto-com-authentication.yml
- type: Conventions
url: conventions/crypto-com-conventions.yml
- type: ErrorCatalog
url: errors/crypto-com-error-codes.yml
- type: RateLimits
url: rate-limits/crypto-com-rate-limits.yml
- type: Sandbox
url: sandbox/crypto-com-sandbox.yml
- type: ChangeLog
url: https://exchange-developer.crypto.com/exchange/v1/docs/api/rest-change-log
- type: ToolCrosswalk
url: mcp/crypto-com-tool-crosswalk.yml
- type: DataModel
url: data-model/crypto-com-data-model.yml
- type: LLMsTxt
url: https://exchange-developer.crypto.com/exchange/v1/llms.txt
- aid: crypto-com:crypto-com-crypto-wallet-api
name: Crypto.com Crypto Wallet API
description: "Manages the user's wallet. \n\nMost of the endpoints are only available at master account level. \n\nSome\
\ endpoints requires Withdrawal setting to be enabled for your API Key. If you do not see the option when viewing your\
\ API Keys, this feature is not yet available for you."
humanURL: https://exchange-developer.crypto.com/exchange/v1/docs/api/rest-introduction
baseURL: https://api.crypto.com/exchange/v1
tags:
- Crypto Wallet
properties:
- type: OpenAPI
url: openapi/crypto-com-crypto-wallet-api-openapi.yml
- type: Documentation
url: https://exchange-developer.crypto.com/exchange/v1/docs/api/rest-introduction
- type: APIReference
url: https://exchange-developer.crypto.com/exchange/v1/docs/api/rest/crypto-com-exchange-api-v-1
- type: Authentication
url: authentication/crypto-com-authentication.yml
- type: Conventions
url: conventions/crypto-com-conventions.yml
- type: ErrorCatalog
url: errors/crypto-com-error-codes.yml
- type: RateLimits
url: rate-limits/crypto-com-rate-limits.yml
- type: Sandbox
url: sandbox/crypto-com-sandbox.yml
- type: ChangeLog
url: https://exchange-developer.crypto.com/exchange/v1/docs/api/rest-change-log
- type: ToolCrosswalk
url: mcp/crypto-com-tool-crosswalk.yml
- type: DataModel
url: data-model/crypto-com-data-model.yml
- type: LLMsTxt
url: https://exchange-developer.crypto.com/exchange/v1/llms.txt
- aid: crypto-com:crypto-com-fiat-wallet-api
name: Crypto.com Fiat Wallet API
description: 'Manages the user''s fiat wallet.
Most of the endpoints are only available at master account level.
Some endpoints requires Withdrawal setting to be enabled for your API Key. If you do not see the option when viewing your
API Keys, this feature is not yet available for you.
## Payment Networks and Currencies
This section provides a comprehensive reference table of all supported payment network and currency combinations available
for use with the Fiat API endpoints. When making API calls to any of the Fiat service endpoints, use the payment network
identifiers listed in this table for the payment_network or payment_networks parameters.
### Supported Payment Networks
| Payment Network | Currency |
|-----------------|----------|
| openpayd_exchange_sepa | EUR |
| usd_swift | USD |
| usd_fedwire | USD |
| usd_cubix | USD |
| uk_fps | GBP |
| aed_ipi | AED |
### Usage Notes
Activate the fiat service in your account before using the API. Go to Wallet page and select fiat currency to activate
the fiat service. Bank account for USD need to be added in Crypto.com Wallet before using the API. For other currencies,
bank account will be created after deposit. When calling Fiat API endpoints, you can specify payment networks in the following
ways:
- Single Payment Network: `json { "payment_network": "usd_cubix" }`
- Multiple Payment Networks (comma-separated): `json { "payment_networks": "usd_cubix, usd_swift" }` Refer to the individual
API endpoint documentation above for specific parameter requirements and usage examples.'
humanURL: https://exchange-developer.crypto.com/exchange/v1/docs/api/rest-introduction
baseURL: https://api.crypto.com/exchange/v1
tags:
- Fiat Wallet
properties:
- type: OpenAPI
url: openapi/crypto-com-fiat-wallet-api-openapi.yml
- type: Documentation
url: https://exchange-developer.crypto.com/exchange/v1/docs/api/rest-introduction
- type: APIReference
url: https://exchange-developer.crypto.com/exchange/v1/docs/api/rest/crypto-com-exchange-api-v-1
- type: Authentication
url: authentication/crypto-com-authentication.yml
- type: Conventions
url: conventions/crypto-com-conventions.yml
- type: ErrorCatalog
url: errors/crypto-com-error-codes.yml
- type: RateLimits
url: rate-limits/crypto-com-rate-limits.yml
- type: Sandbox
url: sandbox/crypto-com-sandbox.yml
- type: ChangeLog
url: https://exchange-developer.crypto.com/exchange/v1/docs/api/rest-change-log
- type: ToolCrosswalk
url: mcp/crypto-com-tool-crosswalk.yml
- type: DataModel
url: data-model/crypto-com-data-model.yml
- type: LLMsTxt
url: https://exchange-developer.crypto.com/exchange/v1/llms.txt
- aid: crypto-com:crypto-com-otc-rfq-for-taker-api
name: Crypto.com OTC RFQ for Taker API
description: 'OTC RFQ (Request For Quote) enables takers to request block trade quotes from multiple liquidity providers,
evaluate received quotes, and execute trades at the best available price. This workflow is designed for institutional
clients who need to trade large sizes with minimal market impact.
## RFQ Trading Flow
**Step 1 — Request a Quote**
Call the request-quote endpoint to create a new quote request. Key parameters include:
- `cl_quote_req_id` — Client-assigned quote request ID for tracking
- `firm_quote` — Whether quotes should be firm (guaranteed execution) or indicative
- `settlement_arrangement` — `IMMEDIATE` for instant settlement
- `duration` — How long the quote request remains open (milliseconds)
- `quote_ttl` — Time-to-live for received quotes (milliseconds)
- `leg_list` — Array of instruments to trade (supports multi-leg combo trades)
The response returns a `quote_req_id` that identifies this request in subsequent calls.
**Step 2 — Monitor Incoming Quotes**
As liquidity providers respond to your quote request, you can retrieve quotes via REST polling or WebSocket subscriptions.
Each quote includes `bid` and `ask` prices, available quantities, and an expiration time.
**WebSocket Subscriptions (Recommended):**
Subscribe to real-time quote updates for lower latency:
- Quote request status updates
- Quote updates from makers
- Deal execution updates
**Step 3 — Accept a Quote**
Call the request-deal endpoint to execute the trade with the best available quote. Required parameters:
- `deal_type` — Set to `QUOTE_REQUEST` for RFQ flow
- `cl_deal_id` — Client-assigned deal ID for tracking
- `quote_id` — The ID of the quote you''re accepting
- `quote_req_id` — The original quote request ID
- `leg_list` — Must match the quote''s instrument, price, quantity, and side
## Quote Request Lifecycle
| Status | Description |
|--------|-------------|
| `NEW` | Quote request created, not yet sent to makers |
| `ACTIVE` | Quote request sent to makers, awaiting responses |
| `COMPLETED` | Quote accepted and deal executed |
| `REJECTED` | Quote request rejected |
## Quote Lifecycle
| Status | Description |
|--------|-------------|
| `ACTIVE` | Quote is valid and can be accepted |
| `EXPIRED` | Quote has exceeded its TTL |
| `CANCELED` | Maker canceled the quote |
| `FILLED` | Quote was accepted and executed |
## Deal History
Use the deal history endpoint to retrieve executed trades. Deal statuses:
| Status | Description |
|--------|-------------|
| `ACCEPTED` | Deal request accepted by the system. |
| `CONFIRMED` | Liquidity provider has executed the deal. |
| `SETTLED` | Deal settled and funds transferred. |
| `REJECTED` | Deal request rejected (quote expired, insufficient balance, etc.) |
## Best Practices
- **Use WebSocket subscriptions** for production systems to receive real-time quote updates
- **Monitor quote expiration times** to avoid accepting stale quotes
- **Track client IDs** (`cl_quote_req_id`, `cl_deal_id`) for reconciliation and audit purposes'
humanURL: https://exchange-developer.crypto.com/exchange/v1/docs/api/rest-introduction
baseURL: https://api.crypto.com/exchange/v1
tags:
- OTC RFQ for Taker
properties:
- type: OpenAPI
url: openapi/crypto-com-otc-rfq-for-taker-api-openapi.yml
- type: Documentation
url: https://exchange-developer.crypto.com/exchange/v1/docs/api/rest-introduction
- type: APIReference
url: https://exchange-developer.crypto.com/exchange/v1/docs/api/rest/crypto-com-exchange-api-v-1
- type: Authentication
url: authentication/crypto-com-authentication.yml
- type: Conventions
url: conventions/crypto-com-conventions.yml
- type: ErrorCatalog
url: errors/crypto-com-error-codes.yml
- type: RateLimits
url: rate-limits/crypto-com-rate-limits.yml
- type: Sandbox
url: sandbox/crypto-com-sandbox.yml
- type: ChangeLog
url: https://exchange-developer.crypto.com/exchange/v1/docs/api/rest-change-log
- type: ToolCrosswalk
url: mcp/crypto-com-tool-crosswalk.yml
- type: DataModel
url: data-model/crypto-com-data-model.yml
- type: LLMsTxt
url: https://exchange-developer.crypto.com/exchange/v1/llms.txt
- aid: crypto-com:crypto-com-reference-and-market-data-api
name: Crypto.com Reference and Market Data API
description: 'Reference and market data endpoints provide public, unauthenticated access to instrument metadata, real-time
market data, and historical pricing information. These endpoints form the foundation for price discovery, order book analysis,
and trading decision workflows.
## Core Data Types
### Instrument Reference Data
Use [`public/get-instruments`](/docs/api/rest/public-get-instruments) to retrieve the full catalog of tradable instruments.
Each instrument includes:
- Contract specifications (tick size, quantity decimals, leverage limits)
- Product classification (perpetual swap, future, option)
- Trading status and expiry information
- Underlying index reference
This endpoint should be called on application startup and periodically refreshed to detect new listings or contract expirations.
### Real-Time Market Data
| Endpoint | Use Case | Update Frequency |
|----------|----------|------------------|
| [`public/get-book`](/docs/api/rest/public-get-book) | Order book depth (bids/asks) | Snapshot on request (up to 50 levels)
|
| [`public/get-tickers`](/docs/api/rest/public-get-tickers) | 24h summary (high, low, volume, open interest) | Updated
per trade |
| [`public/get-trades`](/docs/api/rest/public-get-trades) | Recent trade history | Last 150 trades (7-day max window)
|
For low-latency applications, use WebSocket subscriptions instead:
- `book.{instrument_name}.{depth}` - Order book updates (10 or 50 levels)
- `ticker.{instrument_name}` - Real-time ticker updates
- `trade.{instrument_name}` - Trade feed
### Settlement and Expiry
[`public/get-expired-settlement-price`](/docs/api/rest/public-get-expired-settlement-price) provides historical settlement
prices for expired futures contracts. Use this for post-trade reconciliation and historical PnL calculations.
## Rate Limits
Public endpoints share a global rate limit pool. For market data-intensive applications:
- Use WebSocket subscriptions instead of polling REST endpoints
- Cache `public/get-instruments` responses (updates infrequently)
- Batch ticker requests by omitting `instrument_name` to get all tickers in one call
## Typical Integration Flow
**Step 1 — Bootstrap Reference Data**
Call `public/get-instruments` to load the instrument catalog. Store contract specifications locally.
**Step 2 — Subscribe to Market Data**
For real-time pricing, establish WebSocket connections and subscribe to:
- `book.{instrument_name}.10` - top 10 order book levels
- `ticker.{instrument_name}` - 24h summary stats
- `trade.{instrument_name}` - trade feed
**Step 3 — Polling Fallback**
If WebSocket connections are unavailable, poll `public/get-tickers` and `public/get-book` at reasonable intervals (e.g.,
1-5 seconds).'
humanURL: https://exchange-developer.crypto.com/exchange/v1/docs/api/rest-introduction
baseURL: https://api.crypto.com/exchange/v1
tags:
- Reference and Market Data
properties:
- type: OpenAPI
url: openapi/crypto-com-reference-and-market-data-api-openapi.yml
- type: Documentation
url: https://exchange-developer.crypto.com/exchange/v1/docs/api/rest-introduction
- type: APIReference
url: https://exchange-developer.crypto.com/exchange/v1/docs/api/rest/crypto-com-exchange-api-v-1
- type: Authentication
url: authentication/crypto-com-authentication.yml
- type: Conventions
url: conventions/crypto-com-conventions.yml
- type: ErrorCatalog
url: errors/crypto-com-error-codes.yml
- type: RateLimits
url: rate-limits/crypto-com-rate-limits.yml
- type: Sandbox
url: sandbox/crypto-com-sandbox.yml
- type: ChangeLog
url: https://exchange-developer.crypto.com/exchange/v1/docs/api/rest-change-log
- type: ToolCrosswalk
url: mcp/crypto-com-tool-crosswalk.yml
- type: DataModel
url: data-model/crypto-com-data-model.yml
- type: LLMsTxt
url: https://exchange-developer.crypto.com/exchange/v1/llms.txt
- aid: crypto-com:crypto-com-staking-api
name: Crypto.com Staking API
description: 'Stake crypto assets on-chain to earn rewards directly from the Exchange. Staking locks your tokens for a period,
during which you earn periodic rewards. Liquid staking tokens (e.g., CDCETH) allow you to maintain liquidity while staking.
## Staking Workflow
**1. Check Available Instruments**
Call [`private/staking/get-staking-instruments`](/docs/api/rest/private-staking-get-staking-instruments) to retrieve the
list of tokens available for staking, including minimum stake amounts and reward rates.
**2. Stake Tokens**
Call [`private/staking/stake`](/docs/api/rest/private-staking-stake) to lock tokens and begin earning rewards. The request
is processed asynchronously.
**3. Monitor Position**
Use [`private/staking/get-staking-position`](/docs/api/rest/private-staking-get-staking-position) to view your total staked
balance and [`private/staking/get-open-stake`](/docs/api/rest/private-staking-get-open-stake) to track pending stake requests.
**4. Unstake Tokens**
Call [`private/staking/unstake`](/docs/api/rest/private-staking-unstake) to unlock staked tokens. Unstaking may involve
a waiting period depending on the underlying blockchain protocol.
## Liquid Staking
Liquid staking tokens (e.g., CDCETH for staked ETH) represent staked assets and can be traded or held. Use the conversion
endpoints to move between staked tokens and liquid staking tokens:
- [`public/staking/get-conversion-rate`](/docs/api/rest/public-staking-get-conversion-rate) — get the current conversion
rate
- [`private/staking/convert`](/docs/api/rest/private-staking-convert) — convert between staked and liquid staking tokens
- [`private/staking/get-open-convert`](/docs/api/rest/private-staking-get-open-convert) — track pending conversion requests
## History
| Endpoint | Description |
|----------|-------------|
| [`private/staking/get-stake-history`](/docs/api/rest/private-staking-get-stake-history) | Past stake and unstake requests
|
| [`private/staking/get-reward-history`](/docs/api/rest/private-staking-get-reward-history) | Earned staking rewards |
| [`private/staking/get-convert-history`](/docs/api/rest/private-staking-get-convert-history) | Past conversion requests
|'
humanURL: https://exchange-developer.crypto.com/exchange/v1/docs/api/rest-introduction
baseURL: https://api.crypto.com/exchange/v1
tags:
- Staking
properties:
- type: OpenAPI
url: openapi/crypto-com-staking-api-openapi.yml
- type: Documentation
url: https://exchange-developer.crypto.com/exchange/v1/docs/api/rest-introduction
- type: APIReference
url: https://exchange-developer.crypto.com/exchange/v1/docs/api/rest/crypto-com-exchange-api-v-1
- type: Authentication
url: authentication/crypto-com-authentication.yml
- type: Conventions
url: conventions/crypto-com-conventions.yml
- type: ErrorCatalog
url: errors/crypto-com-error-codes.yml
- type: RateLimits
url: rate-limits/crypto-com-rate-limits.yml
- type: Sandbox
url: sandbox/crypto-com-sandbox.yml
- type: ChangeLog
url: https://exchange-developer.crypto.com/exchange/v1/docs/api/rest-change-log
- type: ToolCrosswalk
url: mcp/crypto-com-tool-crosswalk.yml
- type: DataModel
url: data-model/crypto-com-data-model.yml
- type: LLMsTxt
url: https://exchange-developer.crypto.com/exchange/v1/llms.txt
- aid: crypto-com:crypto-com-trading-api
name: Crypto.com Trading API
description: 'Private trading endpoints manage order placement and lifecycle. All order operations (create, amend, cancel)
are asynchronous — the REST response confirms the request was received, but order lifecycle updates arrive via WebSocket
subscriptions.
## Order Management Workflow
**Create Order**
Call `private/create-order` to submit a new order. The response returns an `order_id` and `client_oid`, but the order
may still be pending acceptance by the matching engine. Subscribe to `user.order` or `user.order.{instrument_name}` to
receive real-time order status updates.
**Amend Order**
Call [`private/amend-order`](/docs/api/rest/private-amend-order) to modify price or quantity on an existing order. Behind
the scenes, amend performs a cancel-then-create operation. The new order loses queue priority unless you are only reducing
quantity.
**Cancel Order**
Call [`private/cancel-order`](/docs/api/rest/private-cancel-order) to cancel a single order by `order_id` or `client_oid`,
or [`private/cancel-all-orders`](/docs/api/rest/private-cancel-all-orders) to cancel all orders for a given instrument.
## Order Types
| Type | Description |
|------|-------------|
| `LIMIT` | Limit order with specified price. Rests on the order book until filled or canceled. |
| `MARKET` | Market order that executes immediately at best available price. |
For trigger orders (stop-loss
# --- truncated at 32 KB (42 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/crypto-com/refs/heads/main/apis.yml
Every provider here is available over the APIs.io API and to AI agents over MCP.