Listar monedas
Monedas clasificadas con precios, filtros y selectores, paginadas con el sobre links + meta
de Laravel. Los precios, la capitalización y circulating_supply son cadenas
decimales; los cambios y rankings son números.
Las claves son solo Bearer y tienen la habilidad data-api: mantenlas en el servidor.
Parámetros de consulta
page
Número de página (empieza en 1). Debe ser al menos 1.
per_page
Filas por página. El límite depende del plan (Free 100, Starter/Pro 250); superarlo devuelve 422 en lugar de recortar. Debe ser al menos 1. No debe superar 100.
type
Restringe a un único tipo de activo: coin o token.
Uno de:
coin
token
status
Estado de listado: active, delisted, untracked, progressing, awaiting o preparing. Por defecto, todos los estados públicos.
Uno de:
active
delisted
untracked
progressing
awaiting
preparing
search
Coincidencia de texto libre en el nombre o símbolo. No debe superar los 100 caracteres.
min_price
Solo monedas con un precio igual o superior a este valor en USD. Debe ser al menos 0.
max_price
Solo monedas con un precio igual o inferior a este valor en USD. Debe ser al menos 0.
min_marketcap
Solo monedas con una capitalización en USD igual o superior a este valor. Debe ser al menos 0.
max_marketcap
Solo monedas con una capitalización en USD igual o inferior a este valor. Debe ser al menos 0.
min_volume
Solo monedas con un volumen de 24h en USD igual o superior a este valor. Debe ser al menos 0.
max_volume
Solo monedas con un volumen de 24h en USD igual o inferior a este valor. Debe ser al menos 0.
ids
Filtra a ids de monedas específicos (CSV, hasta 100 selectores combinados con slugs/symbols). No debe superar los 1000 caracteres.
slugs
Filtra a slugs de monedas específicos (CSV, hasta 100 selectores combinados). No debe superar los 2000 caracteres.
symbols
Filtra a símbolos de monedas específicos (CSV, sin distinción de mayúsculas, hasta 100 selectores combinados). No debe superar los 1000 caracteres.
sort
Campos de ordenación separados por comas; antepón - para orden descendente. Ordenable por: marketcap, rank, price, volume_24h, change_24h, change_7d. No debe superar los 100 caracteres.
interval
Ventana de movimientos solo para /coins/gainers y /coins/losers: 24h o 7d.
Uno de:
24h
7d
Petición
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()