v1

latestOpenAPI 3.0.32026-08-04850206.9 KB
Exchanges

List exchanges

Ranked exchanges with 24h volume, dominance, pair/asset counts and recent changes. Paginated with Laravel's links + meta envelope.

get/api/v1/exchanges

Query parameters

pageinteger nullable

Page number (1-based). Must be at least 1.

Example:1

Page number (1-based). Must be at least 1.

per_pageinteger nullable

Rows per page. The cap is plan-based (Free 100, Starter/Pro 250); exceeding it returns 422 rather than clamping. Must be at least 1. Must not be greater than 100.

Example:50

Rows per page. The cap is plan-based (Free 100, Starter/Pro 250); exceeding it returns 422 rather than clamping. Must be at least 1. Must not be greater than 100.

type'cex' | 'dex' nullable

Restrict to a venue type: cex or dex (resolved via the exchange taxonomy).

Example:cex

Restrict to a venue type: cex or dex (resolved via the exchange taxonomy).

searchstring nullable

Free-text match on exchange name. Must not be greater than 100 characters.

Example:binance

Free-text match on exchange name. Must not be greater than 100 characters.

min_pairsinteger nullable

Only exchanges listing at least this many pairs. Must be at least 0.

Example:100

Only exchanges listing at least this many pairs. Must be at least 0.

max_pairsinteger nullable

Only exchanges listing at most this many pairs. Must be at least 0.

Example:2000

Only exchanges listing at most this many pairs. Must be at least 0.

min_assetsinteger nullable

Only exchanges listing at least this many assets. Must be at least 0.

Example:50

Only exchanges listing at least this many assets. Must be at least 0.

max_assetsinteger nullable

Only exchanges listing at most this many assets. Must be at least 0.

Example:1000

Only exchanges listing at most this many assets. Must be at least 0.

min_volumenumber nullable

Only exchanges with 24h USD volume at or above this value. Must be at least 0.

Example:1000000

Only exchanges with 24h USD volume at or above this value. Must be at least 0.

max_volumenumber nullable

Only exchanges with 24h USD volume at or below this value. Must be at least 0.

Example:100000000000

Only exchanges with 24h USD volume at or below this value. Must be at least 0.

idsstring nullable

Filter to specific exchange ids (CSV, up to 100). Must not be greater than 1000 characters.

Example:1,12

Filter to specific exchange ids (CSV, up to 100). Must not be greater than 1000 characters.

slugsstring nullable

Filter to specific exchange slugs (CSV, up to 100). Must not be greater than 2000 characters.

Example:binance-exchange,gateio

Filter to specific exchange slugs (CSV, up to 100). Must not be greater than 2000 characters.

sortstring nullable

Comma-separated sort fields; prefix with - for descending. Sortable: volume, rank, volume_dominance, change_24h, change_7d, pairs, assets. Must not be greater than 100 characters.

Example:-volume

Comma-separated sort fields; prefix with - for descending. Sortable: volume, rank, volume_dominance, change_24h, change_7d, pairs, assets. Must not be greater than 100 characters.

Response

Example response

{
  "data": [
    {
      "id": 1,
      "slug": "binance-exchange",
      "name": "Binance",
      "rank": 1,
      "volume_24h": 6152385798,
      "volume_dominance": 36.98,
      "change_24h": 200.09,
      "change_7d": 22.87,
      "change_rank_24h": 0,
      "change_rank_7d": 0,
      "pairs": 1115,
      "assets": 100,
      "logo": "https://bitculator.com/storage/media/logo/binance.png",
      "last_updated": "2026-06-15T16:59:21+00:00"
    }
  ],
  "links": {
    "first": "https://bitculator.com/api/v1/exchanges?page=1",
    "last": "https://bitculator.com/api/v1/exchanges?page=1",
    "prev": null,
    "next": null
  },
  "meta": {
    "current_page": 1,
    "from": 1,
    "last_page": 1,
    "per_page": 50,
    "to": 10,
    "total": 10
  }
}