# AscendEX Exchange API
> Live spot market data from AscendEX (formerly BitMax), a global crypto exchange, served straight from its public 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, best bid and ask and volume. The tickers endpoint returns every spot market for a quote currency ranked by 24-hour volume, so one call surfaces the most-traded pairs on the venue. The markets endpoint lists the tradable pairs with their tick and lot size and minimum and maximum notional. The book endpoint returns live order-book depth — every bid and ask level with price and amount, plus the best bid/ask and the spread. Everything is read live from AscendEX on each request, nothing stored. A distinct global venue, separate from the other exchange feeds on the marketplace. Markets are written BASE/QUOTE; BTC_USDT is also accepted. Ideal for trading bots, price tickers, arbitrage scanners, portfolio trackers and market dashboards. 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/ascendex-api/..."
```

## Pricing
- **Free** (Free) — 5,400 calls/Mo, 2 req/s
- **Starter** ($9/Mo) — 97,500 calls/Mo, 6 req/s
- **Pro** ($27/Mo) — 512,000 calls/Mo, 18 req/s
- **Business** ($63/Mo) — 3,120,000 calls/Mo, 45 req/s

## Endpoints

### Market

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

**Parameters:**
- `market` (query, required, string) — Market BASE/QUOTE or BASE_QUOTE Example: `BTC_USDT`
- `limit` (query, optional, string) — Levels per side (default 20) Example: `20`

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

**Response:**
```json
{
    "data": {
        "asks": [
            {
                "price": 62800,
                "amount": 0.01264
            },
            {
                "price": 62961.03,
                "amount": 0.00079
            },
            {
                "price": 62961.04,
                "amount": 0.14071
            },
            {
                "price": 62961.2,
                "amount": 0.10446
            },
            {
                "price": 62961.35,
                "amount": 0.00751
            },
            {
                "price": 62961.51,
                "amount": 0.00635
            },
            {
                "price": 62961.67,
                "amount": 0.00626
            },
            {
                "price": 62961.83,
                "amount": 0.00578
            },
            {
                "price": 62961.98,
                "amount": 0.13289
            },
            {
                "price": 62962.14,
                "amount": 0.01361
            },
            {
                "price": 62962.3,
                "amount": 0.0168
            },
            {
                "price": 62962.46,
                "amount": 0.00586
            },
            {
                "price": 62962.55,
                "amount": 0.03097
            },
            {
                "price": 62962.71,
                "amount": 0.04241
            },
            {
                "price": 62962.86,
                "amount": 0.00211
            },
  
…(truncated, see openapi.json for full schema)
```

#### `GET /v1/markets` — Tradable pairs with tick/lot size and notional

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

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

**Response:**
```json
{
    "data": {
        "count": 988,
        "quote": "USDT",
        "source": "AscendEX",
        "markets": [
            {
                "base": "ZETA",
                "quote": "USDT",
                "market": "ZETA/USDT",
                "status": "Normal",
                "max_qty": 1000000000,
                "min_qty": 1.0e-9,
                "lot_size": 1,
                "tick_size": 0.0001,
                "max_notional": 500000,
                "min_notional": 5
            },
            {
                "base": "GMX",
                "quote": "USDT",
                "market": "GMX/USDT",
                "status": "Normal",
                "max_qty": 1000000000,
                "min_qty": 1.0e-9,
                "lot_size": 0.01,
                "tick_size": 0.01,
                "max_notional": 500000,
                "min_notional": 5
            },
            {
                "base": "TURBO",
                "quote": "USDT",
                "market": "TURBO/USDT",
                "status": "Normal",
                "max_qty": 10000000000,
                "min_qty": 1.0e-9,
                "lot_size": 1,
                "tick_size": 1.0e-7,
                "max_notional": 500000,
                "min_notional": 5
            },
            {
                "base": "PEPE3L",
                "quote": "USDT",
                "market": "PEPE3L/USDT",
                "status": "Normal",
                "max_qty": 1000000000,
                "min_qty": 1.0e-
…(truncated, see openapi.json for full schema)
```

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

**Parameters:**
- `market` (query, required, string) — Market BASE/QUOTE or BASE_QUOTE 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/ascendex-api/v1/ticker?market=BTC_USDT&symbol=BTC&quote=USDT"
```

**Response:**
```json
{
    "data": {
        "ask": 62800,
        "bid": 62459.26,
        "base": "BTC",
        "last": 62765.5,
        "quote": "USDT",
        "market": "BTC/USDT",
        "source": "AscendEX",
        "spread": 340.74,
        "low_24h": 60620.73,
        "high_24h": 63027.25,
        "open_24h": 61800.93,
        "change_24h_pct": 1.5608,
        "base_volume_24h": 9280.78137,
        "quote_volume_24h_approx": 582512883.08
    },
    "meta": {
        "timestamp": "2026-06-11T07:49:05.647Z",
        "request_id": "3c18676a-e7f2-4194-a6af-dd3bd7416f1d"
    },
    "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/ascendex-api/v1/tickers?quote=USDT&limit=50"
```

**Response:**
```json
{
    "data": {
        "count": 50,
        "quote": "USDT",
        "source": "AscendEX",
        "tickers": [
            {
                "ask": 62800,
                "bid": 62459.26,
                "base": "BTC",
                "last": 62765.5,
                "quote": "USDT",
                "market": "BTC/USDT",
                "spread": 340.74,
                "low_24h": 60620.73,
                "high_24h": 63027.25,
                "open_24h": 61800.93,
                "change_24h_pct": 1.5608,
                "base_volume_24h": 9280.78137,
                "quote_volume_24h_approx": 582512883.08
            },
            {
                "ask": 1664.14,
                "bid": 1644.25,
                "base": "ETH",
                "last": 1646.09,
                "quote": "USDT",
                "market": "ETH/USDT",
                "spread": 19.89,
                "low_24h": 1614,
                "high_24h": 1702,
                "open_24h": 1645.74,
                "change_24h_pct": 0.0213,
                "base_volume_24h": 290725.224,
                "quote_volume_24h_approx": 478559883.97
            },
            {
                "ask": 1.11783,
                "bid": 1.11106,
                "base": "XRP",
                "last": 1.11406,
                "quote": "USDT",
                "market": "XRP/USDT",
                "spread": 0.00677,
                "low_24h": 1.08692,
                "high_24h": 1.1396,
                "open_24h": 1.12077,
 
…(truncated, see openapi.json for full schema)
```

### Meta

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

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

**Response:**
```json
{
    "data": {
        "note": "Markets are BASE/QUOTE (e.g. BTC/USDT); BTC_USDT is also accepted. The ticker reports base volume; quote_volume_24h_approx = base volume x last price.",
        "source": "AscendEX API (ascendex.com/api/pro/v1, live)",
        "service": "ascendex-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 tick/lot size and minimum notional (quote=USDT optional).",
            "GET /v1/tickers": "All spot markets for a quote ranked by 24h volume (quote=USDT, limit=50)."
        },
        "description": "Live spot market data from AscendEX (formerly BitMax), a global crypto exchange. The ticker endpoint returns a market's last price, open, 24h high/low, 24h change, best bid/ask and volume; the tickers endpoint ranks every spot market for a quote currency by 24h volume; the markets endpoint lists tradable pairs with tick/lot size and minimum notional; the book endpoint returns live order-book depth. Live, no key, nothing stored. A distinct global venue, separate from other exchange feeds.",
        "market_count": 558,
        "upstream_status": "ok"
    },
    "meta": {
        "timestamp": "2026-06-11T07:49:06.802Z",
        "request_id": "878e621e-13e4-4940-a3b3-ff8b6f80
…(truncated, see openapi.json for full schema)
```


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