币种列表
带价格、筛选与选择器的排名币种,采用 Laravel 的 links + meta 信封分页。价格、市值与 circulating_supply 为十进制字符串;涨跌幅与排名为数字。
密钥仅支持 Bearer 方式并具备 data-api 权限——请将其保存在服务器端。
查询参数
page
页码(从 1 开始)。必须至少为 1。
per_page
每页行数。上限取决于套餐(Free 100,Starter/Pro 250);超出上限将返回 422,而不会自动截断。必须至少为 1。不得大于 100。
type
限定为单一资产类型:coin 或 token。
取值之一:
coin
token
status
上架状态:active、delisted、untracked、progressing、awaiting 或 preparing。默认为所有公开状态。
取值之一:
active
delisted
untracked
progressing
awaiting
preparing
search
对名称或代码的自由文本匹配。长度不得超过 100 个字符。
min_price
仅返回价格不低于此 USD 值的币种。必须至少为 0。
max_price
仅返回价格不高于此 USD 值的币种。必须至少为 0。
min_marketcap
仅返回 USD 市值不低于此值的币种。必须至少为 0。
max_marketcap
仅返回 USD 市值不高于此值的币种。必须至少为 0。
min_volume
仅返回 24 小时 USD 交易量不低于此值的币种。必须至少为 0。
max_volume
仅返回 24 小时 USD 交易量不高于此值的币种。必须至少为 0。
ids
筛选特定的币种 id(CSV,与 slugs/symbols 合计最多 100 个选择器)。长度不得超过 1000 个字符。
slugs
筛选特定的币种 slug(CSV,合计最多 100 个选择器)。长度不得超过 2000 个字符。
symbols
筛选特定的币种 symbol(CSV,不区分大小写,合计最多 100 个选择器)。长度不得超过 1000 个字符。
sort
以逗号分隔的排序字段;前缀 - 表示降序。可排序字段:marketcap、rank、price、volume_24h、change_24h、change_7d。长度不得超过 100 个字符。
interval
仅用于 /coins/gainers 与 /coins/losers 的涨跌时间窗:24h 或 7d。
取值之一:
24h
7d
请求
curl --request GET \ --get "http://localhost/api/v1/coins?page=1&per_page=50&type=coin&status=active&search=bitcoin&min_price=0.5&max_price=100000&min_marketcap=1000000&max_marketcap=5000000000000&min_volume=1000000&max_volume=100000000000&ids=38%2C39&slugs=bitcoin%2Cethereum&symbols=BTC%2CETH&sort=-marketcap&interval=24h" \ --header "Authorization: Bearer {YOUR_API_KEY}" \ --header "Content-Type: application/json" \ --header "Accept: application/json"
const url = new URL( "http://localhost/api/v1/coins" ); const params = { "page": "1", "per_page": "50", "type": "coin", "status": "active", "search": "bitcoin", "min_price": "0.5", "max_price": "100000", "min_marketcap": "1000000", "max_marketcap": "5000000000000", "min_volume": "1000000", "max_volume": "100000000000", "ids": "38,39", "slugs": "bitcoin,ethereum", "symbols": "BTC,ETH", "sort": "-marketcap", "interval": "24h", }; Object.keys(params) .forEach(key => url.searchParams.append(key, params[key])); const headers = { "Authorization": "Bearer {YOUR_API_KEY}", "Content-Type": "application/json", "Accept": "application/json", }; fetch(url, { method: "GET", headers, }).then(response => response.json());
$client = new \GuzzleHttp\Client(); $url = 'http://localhost/api/v1/coins'; $response = $client->get( $url, [ 'headers' => [ 'Authorization' => 'Bearer {YOUR_API_KEY}', 'Content-Type' => 'application/json', 'Accept' => 'application/json', ], 'query' => [ 'page' => '1', 'per_page' => '50', 'type' => 'coin', 'status' => 'active', 'search' => 'bitcoin', 'min_price' => '0.5', 'max_price' => '100000', 'min_marketcap' => '1000000', 'max_marketcap' => '5000000000000', 'min_volume' => '1000000', 'max_volume' => '100000000000', 'ids' => '38,39', 'slugs' => 'bitcoin,ethereum', 'symbols' => 'BTC,ETH', 'sort' => '-marketcap', 'interval' => '24h', ], ] ); $body = $response->getBody(); print_r(json_decode((string) $body));
import requests import json url = 'http://localhost/api/v1/coins' params = { 'page': '1', 'per_page': '50', 'type': 'coin', 'status': 'active', 'search': 'bitcoin', 'min_price': '0.5', 'max_price': '100000', 'min_marketcap': '1000000', 'max_marketcap': '5000000000000', 'min_volume': '1000000', 'max_volume': '100000000000', 'ids': '38,39', 'slugs': 'bitcoin,ethereum', 'symbols': 'BTC,ETH', 'sort': '-marketcap', 'interval': '24h', } headers = { 'Authorization': 'Bearer {YOUR_API_KEY}', 'Content-Type': 'application/json', 'Accept': 'application/json' } response = requests.request('GET', url, headers=headers, params=params) response.json()