# CoinEx Exchange API
> Live spot market data from CoinEx, a global crypto exchange, served straight from its public v2 API with no key and nothing cached. The ticker endpoint returns a market's last price, open, 24-hour high and low, 24-hour change and base and quote volume. The tickers endpoint returns every spot market for a quote currency ranked by 24-hour quote volume, so one call surfaces the most-traded pairs on the venue. The markets endpoint lists the tradable pairs with their maker and taker fees, base and quote precision and minimum order size. The book endpoint returns live order-book depth — every bid and ask level with price and amount, plus the best bid/ask and spread. Everything is read live from CoinEx on each request, nothing stored. A distinct global venue, separate from the other exchange feeds on the marketplace. Ideal for trading bots, price tickers, arbitrage scanners, portfolio trackers and market dashboards. Markets accept either BTC_USDT or BTCUSDT. Live, no key. 4 spot endpoints. For candles or perpetuals use an OHLC or derivatives API.

## Authentication
All requests require your oanor API key in the `x-oanor-key` header. Get one at https://www.oanor.com/developer/keys.

```bash
curl -H "x-oanor-key: oanor_live_…" "https://api.oanor.com/coinex-api/..."
```

## Pricing
- **Free** (Free) — 5,100 calls/Mo, 2 req/s
- **Starter** ($8/Mo) — 91,000 calls/Mo, 6 req/s
- **Pro** ($24/Mo) — 470,000 calls/Mo, 18 req/s
- **Business** ($56/Mo) — 2,880,000 calls/Mo, 45 req/s

## Endpoints

### Market

#### `GET /v1/book` — Live order-book depth

**Parameters:**
- `market` (query, required, string) — Market BTC_USDT or BTCUSDT Example: `BTC_USDT`
- `limit` (query, optional, string) — Levels (snaps to 5/10/20/50) Example: `20`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/coinex-api/v1/book?market=BTC_USDT&limit=20"
```

**Response:**
```json
{
    "data": {
        "asks": [
            {
                "price": 62713,
                "amount": 0.07974498
            },
            {
                "price": 62714,
                "amount": 0.0002934
            },
            {
                "price": 62721,
                "amount": 0.0221541
            },
            {
                "price": 62722,
                "amount": 0.00020466
            },
            {
                "price": 62733,
                "amount": 0.00012086
            },
            {
                "price": 62734,
                "amount": 0.02391047
            },
            {
                "price": 62737,
                "amount": 0.15582078
            },
            {
                "price": 62738,
                "amount": 0.0478179
            },
            {
                "price": 62739,
                "amount": 0.04781714
            },
            {
                "price": 62740,
                "amount": 0.04781638
            },
            {
                "price": 62741,
                "amount": 0.47815622
            },
            {
                "price": 62742,
                "amount": 0.79691434
            },
            {
                "price": 62752,
                "amount": 0.79678735
            },
            {
                "price": 62757,
                "amount": 0.1033
            },
            {
                "price": 62758,
                "amount": 2.27401255
            },
   
…(truncated, see openapi.json for full schema)
```

#### `GET /v1/markets` — Tradable pairs with fees and limits

**Parameters:**
- `quote` (query, optional, string) — Filter by quote currency Example: `USDT`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/coinex-api/v1/markets?quote=USDT"
```

**Response:**
```json
{
    "data": {
        "count": 989,
        "quote": "USDT",
        "source": "CoinEx",
        "markets": [
            {
                "base": "TSLAX",
                "quote": "USDT",
                "market": "TSLAXUSDT",
                "status": "online",
                "min_amount": 0.005,
                "maker_fee_pct": 0.3,
                "taker_fee_pct": 0.3,
                "base_precision": 8,
                "quote_precision": 2
            },
            {
                "base": "PINGO",
                "quote": "USDT",
                "market": "PINGOUSDT",
                "status": "online",
                "min_amount": 100,
                "maker_fee_pct": 0.3,
                "taker_fee_pct": 0.3,
                "base_precision": 8,
                "quote_precision": 6
            },
            {
                "base": "ELA",
                "quote": "USDT",
                "market": "ELAUSDT",
                "status": "online",
                "min_amount": 5,
                "maker_fee_pct": 0.3,
                "taker_fee_pct": 0.3,
                "base_precision": 8,
                "quote_precision": 4
            },
            {
                "base": "SUI",
                "quote": "USDT",
                "market": "SUIUSDT",
                "status": "online",
                "min_amount": 2,
                "maker_fee_pct": 0.2,
                "taker_fee_pct": 0.2,
                "base_precision": 8,
                "quote_precisi
…(truncated, see openapi.json for full schema)
```

#### `GET /v1/ticker` — Ticker for one market

**Parameters:**
- `market` (query, required, string) — Market BTC_USDT or BTCUSDT Example: `BTC_USDT`
- `symbol` (query, optional, string) — Base coin (alternative to market) Example: `BTC`
- `quote` (query, optional, string) — Quote currency for symbol Example: `USDT`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/coinex-api/v1/ticker?market=BTC_USDT&symbol=BTC&quote=USDT"
```

**Response:**
```json
{
    "data": {
        "base": "BTC",
        "last": 62712,
        "quote": "USDT",
        "market": "BTCUSDT",
        "source": "CoinEx",
        "low_24h": 60741,
        "high_24h": 63000,
        "open_24h": 61675,
        "change_24h_pct": 1.6814,
        "base_volume_24h": 425.2289625,
        "quote_volume_24h": 26339728.93
    },
    "meta": {
        "timestamp": "2026-06-11T07:49:16.588Z",
        "request_id": "518810b4-bf2c-4906-92dc-2609e3c7c937"
    },
    "status": "ok",
    "message": "Ticker retrieved successfully",
    "success": true
}
```

#### `GET /v1/tickers` — All spot markets for a quote by volume

**Parameters:**
- `quote` (query, optional, string) — Quote currency (default USDT) Example: `USDT`
- `limit` (query, optional, string) — Max markets (default 50) Example: `50`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/coinex-api/v1/tickers?quote=USDT&limit=50"
```

**Response:**
```json
{
    "data": {
        "count": 50,
        "quote": "USDT",
        "source": "CoinEx",
        "tickers": [
            {
                "base": "BTC",
                "last": 62712,
                "quote": "USDT",
                "market": "BTCUSDT",
                "low_24h": 60741,
                "high_24h": 63000,
                "open_24h": 61675,
                "change_24h_pct": 1.6814,
                "base_volume_24h": 425.2289625,
                "quote_volume_24h": 26339728.93
            },
            {
                "base": "ETH",
                "last": 1653.65,
                "quote": "USDT",
                "market": "ETHUSDT",
                "low_24h": 1605.21,
                "high_24h": 1666.67,
                "open_24h": 1639.08,
                "change_24h_pct": 0.8889,
                "base_volume_24h": 10509.40033443,
                "quote_volume_24h": 17189636.36
            },
            {
                "base": "ZEC",
                "last": 423.79,
                "quote": "USDT",
                "market": "ZECUSDT",
                "low_24h": 402.09,
                "high_24h": 447.5,
                "open_24h": 434.62,
                "change_24h_pct": -2.4918,
                "base_volume_24h": 23420.41964902,
                "quote_volume_24h": 9912200.02
            },
            {
                "base": "SOL",
                "last": 64.98,
                "quote": "USDT",
                "market": "SOLUSDT",
                "
…(truncated, see openapi.json for full schema)
```

### Meta

#### `GET /v1/meta` — Spec

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/coinex-api/v1/meta"
```

**Response:**
```json
{
    "data": {
        "note": "Pass markets as BTC_USDT or BTCUSDT. CoinEx market names are concatenated; base/quote come from the spot-market list. quote_volume_24h is in the quote currency.",
        "source": "CoinEx API (api.coinex.com/v2/spot, live)",
        "service": "coinex-api",
        "endpoints": {
            "GET /v1/book": "Live order-book depth — best bid/ask and spread (market=BTC_USDT, limit=20).",
            "GET /v1/meta": "This document.",
            "GET /v1/ticker": "Ticker for one market (market=BTC_USDT or symbol=BTC&quote=USDT).",
            "GET /v1/markets": "Tradable pairs with fees, precision and minimum order size (quote=USDT optional).",
            "GET /v1/tickers": "All spot markets for a quote ranked by 24h quote volume (quote=USDT, limit=50)."
        },
        "description": "Live spot market data from CoinEx, a global crypto exchange. The ticker endpoint returns a market's last price, open, 24h high/low, 24h change and base/quote volume; the tickers endpoint ranks every spot market for a quote currency by 24h quote volume; the markets endpoint lists tradable pairs with maker/taker fees, precision and minimum order size; the book endpoint returns live order-book depth. Live, no key, nothing stored. A distinct global venue, separate from other exchange feeds.",
        "market_count": 1252,
        "upstream_status": "ok"
    },
    "meta": {
        "timestamp": "2026-06-11T07:49:17.109Z",
        "request_id": "a14cc90f-4647-48b
…(truncated, see openapi.json for full schema)
```


---
Marketplace page: https://www.oanor.com/api/coinex-api
OpenAPI spec: https://www.oanor.com/api/coinex-api/openapi.json
