Bitculator
Bitculator · Data API · v1

Bitculator Data API

76 endpoints 15 grupos X-Quota-* en cada llamada https://bitculator.com/api/v1

Todos los endpoints están bajo /api/v1 y requieren una clave Bearer con la habilidad data-api: crea una en tu consola de desarrollador.

Tu primera llamada:

curl https://bitculator.com/api/v1/prices/bitcoin \
  -H "Authorization: Bearer YOUR_API_KEY"

Las respuestas son JSON. Los precios, las tasas y las ofertas son cadenas decimales (los floats no pueden mantener la precisión del mercado); los recuentos y valores analíticos son números. Cada respuesta lleva tu cuota en vivo en las cabeceras X-Quota-Limit / X-Quota-Used / X-Quota-Reset, y los errores siempre usan el sobre {"error": {"code", "message", "details"}}.

La Data API tiene su propia cuota mensual, ligada a tu plan de API y totalmente separada de tus widgets embebidos. Los límites de per_page dependen del plan (Free 100, Starter/Pro 250); superar un límite devuelve 422 en lugar de recortar.

Bibliotecas de cliente

No necesitas un SDK: cada endpoint es HTTP puro. Pero si prefieres uno, hay ocho SDK oficiales con licencia MIT que cubren toda la API, con paginación, errores tipados y precisión de cadenas decimales incorporadas.

npm install @bitculator/sdk
pip install bitculator
PHP PHP
composer require bitculator/sdk
Go Go
go get github.com/bitculator/bitculator-go-sdk
cargo add bitculator
com.bitculator : bitculator
dotnet add package Bitculator
C++ C++
FetchContent: bitculator-cpp-sdk

Autenticación

Para autenticar las peticiones, incluye una cabecera Authorization: Bearer {YOUR_API_KEY} en cada petición.

Crea una clave de la Data API en tu consola de desarrollador: las claves son solo Bearer y tienen la habilidad data-api. Mantenlas en el servidor; nunca están pensadas para incrustarse en el lado del cliente.

Cabecera de autorización
Crear una clave →
Bearer
bc_••••••••••••••••

Enviado como Authorization: Bearer {YOUR_API_KEY} en cada petición.

Cada endpoint muestra el plan mínimo necesario para llamarlo. Free Starter Pro
9 endpoints

Monedas

Datos de mercado de monedas y tokens clasificados: listados paginados, detalle por moneda, movimientos (ganadores/perdedores), añadidos recientemente, tendencia y series temporales por moneda. Los precios, la capitalización y la oferta son CADENAS decimales (los floats no pueden mantener la precisión del mercado); los cambios porcentuales, rankings y recuentos son números.

Listar monedas

Free

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.

GET
https://bitculator.com/api/v1/coins
Bearer
bc_••••••••••••••••

Las claves son solo Bearer y tienen la habilidad data-api: mantenlas en el servidor.

Parámetros de consulta

page
integer opcional
1

Número de página (empieza en 1). Debe ser al menos 1.

per_page
integer opcional
50

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
string opcional
coin

Restringe a un único tipo de activo: coin o token.

Uno de: coin token

status
string opcional
active

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
string opcional
bitcoin

Coincidencia de texto libre en el nombre o símbolo. No debe superar los 100 caracteres.

min_price
number opcional
0.5

Solo monedas con un precio igual o superior a este valor en USD. Debe ser al menos 0.

max_price
number opcional
100000

Solo monedas con un precio igual o inferior a este valor en USD. Debe ser al menos 0.

min_marketcap
number opcional
1000000

Solo monedas con una capitalización en USD igual o superior a este valor. Debe ser al menos 0.

max_marketcap
number opcional
5000000000000

Solo monedas con una capitalización en USD igual o inferior a este valor. Debe ser al menos 0.

min_volume
number opcional
1000000

Solo monedas con un volumen de 24h en USD igual o superior a este valor. Debe ser al menos 0.

max_volume
number opcional
100000000000

Solo monedas con un volumen de 24h en USD igual o inferior a este valor. Debe ser al menos 0.

ids
string opcional
38,39

Filtra a ids de monedas específicos (CSV, hasta 100 selectores combinados con slugs/symbols). No debe superar los 1000 caracteres.

slugs
string opcional
bitcoin,ethereum

Filtra a slugs de monedas específicos (CSV, hasta 100 selectores combinados). No debe superar los 2000 caracteres.

symbols
string opcional
BTC,ETH

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
string opcional
-marketcap

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
string opcional
24h

Ventana de movimientos solo para /coins/gainers y /coins/losers: 24h o 7d.

Uno de: 24h 7d

Petición GET: sin cuerpo de petición.

Petición

curl --request GET \
    --get "https://bitculator.com/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"

Monedas añadidas recientemente

Free

Listados más nuevos: ordenados por status_updated_at (la marca de tiempo en que pasó a activo; created_at es la fecha de rastreo, que precede al listado en cantidades arbitrarias). Mismo formato de fila y sobre de paginación que List coins.

GET
https://bitculator.com/api/v1/coins/recently-added
Bearer
bc_••••••••••••••••

Las claves son solo Bearer y tienen la habilidad data-api: mantenlas en el servidor.

Parámetros de consulta

page
integer opcional
1

Número de página (empieza en 1). Debe ser al menos 1.

per_page
integer opcional
50

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
string opcional
coin

Restringe a un único tipo de activo: coin o token.

Uno de: coin token

status
string opcional
active

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
string opcional
bitcoin

Coincidencia de texto libre en el nombre o símbolo. No debe superar los 100 caracteres.

min_price
number opcional
0.5

Solo monedas con un precio igual o superior a este valor en USD. Debe ser al menos 0.

max_price
number opcional
100000

Solo monedas con un precio igual o inferior a este valor en USD. Debe ser al menos 0.

min_marketcap
number opcional
1000000

Solo monedas con una capitalización en USD igual o superior a este valor. Debe ser al menos 0.

max_marketcap
number opcional
5000000000000

Solo monedas con una capitalización en USD igual o inferior a este valor. Debe ser al menos 0.

min_volume
number opcional
1000000

Solo monedas con un volumen de 24h en USD igual o superior a este valor. Debe ser al menos 0.

max_volume
number opcional
100000000000

Solo monedas con un volumen de 24h en USD igual o inferior a este valor. Debe ser al menos 0.

ids
string opcional
38,39

Filtra a ids de monedas específicos (CSV, hasta 100 selectores combinados con slugs/symbols). No debe superar los 1000 caracteres.

slugs
string opcional
bitcoin,ethereum

Filtra a slugs de monedas específicos (CSV, hasta 100 selectores combinados). No debe superar los 2000 caracteres.

symbols
string opcional
BTC,ETH

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
string opcional
-marketcap

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
string opcional
24h

Ventana de movimientos solo para /coins/gainers y /coins/losers: 24h o 7d.

Uno de: 24h 7d

Petición GET: sin cuerpo de petición.

Petición

curl --request GET \
    --get "https://bitculator.com/api/v1/coins/recently-added?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"

Principales ganadores

Free

Los mayores movimientos positivos durante la ventana interval (24h por defecto, o 7d). Mismo formato de fila y sobre de paginación que List coins.

GET
https://bitculator.com/api/v1/coins/gainers
Bearer
bc_••••••••••••••••

Las claves son solo Bearer y tienen la habilidad data-api: mantenlas en el servidor.

Parámetros de consulta

page
integer opcional
1

Número de página (empieza en 1). Debe ser al menos 1.

per_page
integer opcional
50

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
string opcional
coin

Restringe a un único tipo de activo: coin o token.

Uno de: coin token

status
string opcional
active

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
string opcional
bitcoin

Coincidencia de texto libre en el nombre o símbolo. No debe superar los 100 caracteres.

min_price
number opcional
0.5

Solo monedas con un precio igual o superior a este valor en USD. Debe ser al menos 0.

max_price
number opcional
100000

Solo monedas con un precio igual o inferior a este valor en USD. Debe ser al menos 0.

min_marketcap
number opcional
1000000

Solo monedas con una capitalización en USD igual o superior a este valor. Debe ser al menos 0.

max_marketcap
number opcional
5000000000000

Solo monedas con una capitalización en USD igual o inferior a este valor. Debe ser al menos 0.

min_volume
number opcional
1000000

Solo monedas con un volumen de 24h en USD igual o superior a este valor. Debe ser al menos 0.

max_volume
number opcional
100000000000

Solo monedas con un volumen de 24h en USD igual o inferior a este valor. Debe ser al menos 0.

ids
string opcional
38,39

Filtra a ids de monedas específicos (CSV, hasta 100 selectores combinados con slugs/symbols). No debe superar los 1000 caracteres.

slugs
string opcional
bitcoin,ethereum

Filtra a slugs de monedas específicos (CSV, hasta 100 selectores combinados). No debe superar los 2000 caracteres.

symbols
string opcional
BTC,ETH

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
string opcional
-marketcap

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
string opcional
24h

Ventana de movimientos solo para /coins/gainers y /coins/losers: 24h o 7d.

Uno de: 24h 7d

Petición GET: sin cuerpo de petición.

Petición

curl --request GET \
    --get "https://bitculator.com/api/v1/coins/gainers?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"

Principales perdedores

Free

Los mayores movimientos negativos durante la ventana interval (24h por defecto, o 7d). Mismo formato de fila y sobre de paginación que List coins.

GET
https://bitculator.com/api/v1/coins/losers
Bearer
bc_••••••••••••••••

Las claves son solo Bearer y tienen la habilidad data-api: mantenlas en el servidor.

Parámetros de consulta

page
integer opcional
1

Número de página (empieza en 1). Debe ser al menos 1.

per_page
integer opcional
50

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
string opcional
coin

Restringe a un único tipo de activo: coin o token.

Uno de: coin token

status
string opcional
active

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
string opcional
bitcoin

Coincidencia de texto libre en el nombre o símbolo. No debe superar los 100 caracteres.

min_price
number opcional
0.5

Solo monedas con un precio igual o superior a este valor en USD. Debe ser al menos 0.

max_price
number opcional
100000

Solo monedas con un precio igual o inferior a este valor en USD. Debe ser al menos 0.

min_marketcap
number opcional
1000000

Solo monedas con una capitalización en USD igual o superior a este valor. Debe ser al menos 0.

max_marketcap
number opcional
5000000000000

Solo monedas con una capitalización en USD igual o inferior a este valor. Debe ser al menos 0.

min_volume
number opcional
1000000

Solo monedas con un volumen de 24h en USD igual o superior a este valor. Debe ser al menos 0.

max_volume
number opcional
100000000000

Solo monedas con un volumen de 24h en USD igual o inferior a este valor. Debe ser al menos 0.

ids
string opcional
38,39

Filtra a ids de monedas específicos (CSV, hasta 100 selectores combinados con slugs/symbols). No debe superar los 1000 caracteres.

slugs
string opcional
bitcoin,ethereum

Filtra a slugs de monedas específicos (CSV, hasta 100 selectores combinados). No debe superar los 2000 caracteres.

symbols
string opcional
BTC,ETH

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
string opcional
-marketcap

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
string opcional
24h

Ventana de movimientos solo para /coins/gainers y /coins/losers: 24h o 7d.

Uno de: 24h 7d

Petición GET: sin cuerpo de petición.

Petición

curl --request GET \
    --get "https://bitculator.com/api/v1/coins/losers?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"

Obtener el detalle de una moneda

Free

Perfil completo de una única moneda. Además de los campos de la lista, añade: supply (circulating/total/max), OHLC de today, all_time_high / all_time_low (precio, fecha y percent_from respecto al precio actual), fully_diluted_valuation, counts de mercado (exchanges/pairs/tickers/wallets), decimals, genesis_date, links oficiales (lista de urls tipadas), contracts del token y una description HTML localizada (recurre al inglés cuando falta el locale solicitado). Todos los campos de precio/oferta son cadenas decimales.

GET
https://bitculator.com/api/v1/coins/{slug}
Bearer
bc_••••••••••••••••

Las claves son solo Bearer y tienen la habilidad data-api: mantenlas en el servidor.

Parámetros de ruta

slug
string obligatorio
bitcoin

El slug de la moneda.

Parámetros de consulta

locale
string opcional
en

Idioma del contenido para la descripción (recurre al inglés como respaldo).

Petición GET: sin cuerpo de petición.

Petición

curl --request GET \
    --get "https://bitculator.com/api/v1/coins/bitcoin?locale=en" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Historial de velas

Free

Serie temporal de OHLC + volumen + capitalización por moneda. Elige interval: minutely, half-hourly, hourly o daily. La retención es una propiedad fija del pipeline de rollups: minutely 8 días, half-hourly 3 meses, hourly 6 meses, daily para siempre; las peticiones más allá de una ventana devuelven lo que existe. Cuando se establece un limit, obtienes las N filas MÁS RECIENTES de la ventana, emitidas de más antigua a más reciente. Los precios son cadenas decimales.

GET
https://bitculator.com/api/v1/coins/{slug}/history
Bearer
bc_••••••••••••••••

Las claves son solo Bearer y tienen la habilidad data-api: mantenlas en el servidor.

Parámetros de ruta

slug
string obligatorio
bitcoin

El slug de la moneda.

Parámetros de consulta

interval
string opcional
daily

minutely, half-hourly, hourly o daily (por defecto daily).

start
string opcional
2026-06-01

Límite inferior de fecha/hora ISO.

end
string opcional
2026-06-30

Límite superior de fecha/hora ISO (un valor solo de fecha significa hasta el final de ese día).

limit
integer opcional
30

Filas máximas (1–2000, por defecto 1000).

Petición GET: sin cuerpo de petición.

Petición

curl --request GET \
    --get "https://bitculator.com/api/v1/coins/bitcoin/history?interval=daily&start=2026-06-01&end=2026-06-30&limit=30" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Historial de capitalización de mercado

Free

Los mismos rollups por moneda que Candle history, proyectados solo a {time, marketcap}. Mismas opciones de interval y ventanas de retención (minutely 8 días, half-hourly 3 meses, hourly 6 meses, daily para siempre), las N más recientes cuando se establece un limit.

GET
https://bitculator.com/api/v1/coins/{slug}/marketcap-history
Bearer
bc_••••••••••••••••

Las claves son solo Bearer y tienen la habilidad data-api: mantenlas en el servidor.

Parámetros de ruta

slug
string obligatorio
bitcoin

El slug de la moneda.

Parámetros de consulta

interval
string opcional
daily

minutely, half-hourly, hourly o daily (por defecto daily).

start
string opcional
2026-06-01

Límite inferior de fecha/hora ISO.

end
string opcional
2026-06-30

Límite superior de fecha/hora ISO.

limit
integer opcional
30

Filas máximas (1–2000, por defecto 1000).

Petición GET: sin cuerpo de petición.

Petición

curl --request GET \
    --get "https://bitculator.com/api/v1/coins/bitcoin/marketcap-history?interval=daily&start=2026-06-01&end=2026-06-30&limit=30" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Sparkline de la moneda

Free

Una serie de precios compacta para la moneda durante el period elegido, para dibujar sparklines.

GET
https://bitculator.com/api/v1/coins/{slug}/sparkline
Bearer
bc_••••••••••••••••

Las claves son solo Bearer y tienen la habilidad data-api: mantenlas en el servidor.

Parámetros de ruta

slug
string obligatorio
bitcoin

El slug de la moneda.

Parámetros de consulta

period
string opcional
7d

24h, 7d, 30d, 60d, 90d, 180d o 365d (por defecto 7d).

Petición GET: sin cuerpo de petición.

Petición

curl --request GET \
    --get "https://bitculator.com/api/v1/coins/bitcoin/sparkline?period=7d" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
3 endpoints

Precios

La ruta rápida y ligera de precios: precio actual, capitalización, volumen de 24h y cambios recientes para un conjunto de monedas solicitado. /prices requiere un selector (ids, slugs o symbols); /prices/{slug} apunta a una moneda. Opcionalmente convert a una moneda fiat (los precios cripto se actualizan ~cada minuto, las tasas fiat ~dos veces al día). Los precios y la capitalización son cadenas decimales.

Obtener precios

Free

Precios para un conjunto de monedas solicitado. Pasa al menos un selector: ids, slugs o symbols (hasta 100 combinados). meta.currency refleja el destino de conversión (USD salvo que se establezca convert).

GET
https://bitculator.com/api/v1/prices
Bearer
bc_••••••••••••••••

Las claves son solo Bearer y tienen la habilidad data-api: mantenlas en el servidor.

Parámetros de consulta

ids
string opcional
38,39

Ids de monedas a valorar (CSV). Se requiere al menos uno de ids, slugs o symbols; las tres listas se limitan a 100 selectores combinados. Este campo es obligatorio cuando no hay ninguno de slugs ni symbols. No debe superar los 1000 caracteres.

slugs
string opcional
bitcoin,ethereum

Slugs de monedas a valorar (CSV). Se requiere al menos uno de ids, slugs o symbols. Este campo es obligatorio cuando no hay ninguno de ids ni symbols. No debe superar los 2000 caracteres.

symbols
string opcional
BTC,ETH

Símbolos de monedas a valorar (CSV, sin distinción de mayúsculas). Se requiere al menos uno de ids, slugs o symbols. Este campo es obligatorio cuando no hay ninguno de ids ni slugs. No debe superar los 1000 caracteres.

convert
string opcional
EUR

Convierte precios/capitalización a una moneda fiat activa por símbolo (por defecto USD). Las tasas de cambio se actualizan ~dos veces al día.

Uno de: USD EUR JPY BGN CZK DKK GBP HUF PLN RON SEK CHF ISK NOK HRK RUB TRY AUD BRL CAD CNY HKD IDR ILS INR KRW MXN MYR NZD PHP SGD THB ZAR ARS DZD MAD TWD

Petición GET: sin cuerpo de petición.

Petición

curl --request GET \
    --get "https://bitculator.com/api/v1/prices?ids=38%2C39&slugs=bitcoin%2Cethereum&symbols=BTC%2CETH&convert=EUR" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Obtener el precio de una moneda

Free

Instantánea de precio de una única moneda. Opcionalmente convert a una moneda fiat activa por símbolo (por defecto USD).

GET
https://bitculator.com/api/v1/prices/{slug}
Bearer
bc_••••••••••••••••

Las claves son solo Bearer y tienen la habilidad data-api: mantenlas en el servidor.

Parámetros de ruta

slug
string obligatorio
bitcoin

El slug de la moneda.

Parámetros de consulta

convert
string opcional
EUR

Símbolo de moneda fiat activa en la que fijar el precio (por defecto USD).

Petición GET: sin cuerpo de petición.

Petición

curl --request GET \
    --get "https://bitculator.com/api/v1/prices/bitcoin?convert=EUR" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Precio histórico

Free

El precio en USD de la moneda en una fecha dada, leído del historial diario (día exacto, respaldo de ±3 días: el mismo resolutor que usa el portafolio). Solo cripto: las filas fiat no tienen historial diario.

GET
https://bitculator.com/api/v1/historical-price
Bearer
bc_••••••••••••••••

Las claves son solo Bearer y tienen la habilidad data-api: mantenlas en el servidor.

Parámetros de consulta

slug
string obligatorio
bitcoin

El identificador slug de la moneda.

date
string obligatorio
2021-04-14

date La fecha de consulta (posterior a 2008-12-31, no en el futuro).

Petición GET: sin cuerpo de petición.

Petición

curl --request GET \
    --get "https://bitculator.com/api/v1/historical-price?slug=bitcoin&date=2021-04-14" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
5 endpoints

Mercados

Tickers (mercados por exchange) y pares (mercados agregados por plataforma), más los mercados de una moneda y los símbolos de trading en bruto por exchange. Todo son datos de instantánea: no existe historial por ticker/par. Los volúmenes en USD son números; los precios son cadenas decimales.

Mercados de la moneda

Free

Todos los mercados de una moneda: los tickers cuyo par tiene la moneda como base O cotización. Mismo formato de fila y filtros que List tickers.

GET
https://bitculator.com/api/v1/coins/{slug}/markets
Bearer
bc_••••••••••••••••

Las claves son solo Bearer y tienen la habilidad data-api: mantenlas en el servidor.

Parámetros de ruta

slug
string obligatorio
bitcoin

El slug de la moneda.

Parámetros de consulta

page
integer opcional
1

Número de página (empieza en 1). Debe ser al menos 1.

per_page
integer opcional
50

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.

exchange
string opcional
binance-exchange

Restringe a un único exchange por slug (omítelo en el listado por exchange, que ya está acotado). Debe coincidir con la expresión regular /^[a-z0-9-]{1,120}$/.

pair
integer opcional
1

Restringe a un único par por id. Debe ser al menos 1.

instrument
string opcional
spot

Tipo de instrumento: future, option, swap, spot o margin (se aceptan plurales).

Uno de: future option swap spot margin

search
string opcional
BTC

Coincidencia de texto libre en el símbolo del ticker. No debe superar los 50 caracteres.

min_volume
number opcional
1000000

Solo tickers con un volumen de 24h en USD igual o superior a este valor. Debe ser al menos 0.

max_volume
number opcional
100000000000

Solo tickers con un volumen de 24h en USD igual o inferior a este valor. Debe ser al menos 0.

min_change
number opcional
-50

Solo tickers con un cambio porcentual de 24h igual o superior a este valor.

max_change
number opcional
50

Solo tickers con un cambio porcentual de 24h igual o inferior a este valor.

sort
string opcional
-volume_usd

Un único campo de ordenación (antepón - para orden descendente). Ordenable por: volume_usd, change_24h, price_usd, updated. Por defecto -volume_usd. No debe superar los 100 caracteres.

Petición GET: sin cuerpo de petición.

Petición

curl --request GET \
    --get "https://bitculator.com/api/v1/coins/bitcoin/markets?page=1&per_page=50&exchange=binance-exchange&pair=1&instrument=spot&search=BTC&min_volume=1000000&max_volume=100000000000&min_change=-50&max_change=50&sort=-volume_usd" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Símbolos de trading de la moneda

Free

Los símbolos de trading en bruto por exchange de la moneda: datos de referencia con poca cobertura (la cobertura es en la medida de lo posible).

GET
https://bitculator.com/api/v1/coins/{slug}/symbols
Bearer
bc_••••••••••••••••

Las claves son solo Bearer y tienen la habilidad data-api: mantenlas en el servidor.

Parámetros de ruta

slug
string obligatorio
bitcoin

El slug de la moneda.

Petición GET: sin cuerpo de petición.

Petición

curl --request GET \
    --get "https://bitculator.com/api/v1/coins/bitcoin/symbols" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Listar tickers

Free

Mercados individuales por exchange (tickers), paginados. Filtra por exchange, par, instrumento y rangos de volumen/cambio. Los volúmenes en USD son números; los precios son cadenas decimales.

GET
https://bitculator.com/api/v1/tickers
Bearer
bc_••••••••••••••••

Las claves son solo Bearer y tienen la habilidad data-api: mantenlas en el servidor.

Parámetros de consulta

page
integer opcional
1

Número de página (empieza en 1). Debe ser al menos 1.

per_page
integer opcional
50

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.

exchange
string opcional
binance-exchange

Restringe a un único exchange por slug (omítelo en el listado por exchange, que ya está acotado). Debe coincidir con la expresión regular /^[a-z0-9-]{1,120}$/.

pair
integer opcional
1

Restringe a un único par por id. Debe ser al menos 1.

instrument
string opcional
spot

Tipo de instrumento: future, option, swap, spot o margin (se aceptan plurales).

Uno de: future option swap spot margin

search
string opcional
BTC

Coincidencia de texto libre en el símbolo del ticker. No debe superar los 50 caracteres.

min_volume
number opcional
1000000

Solo tickers con un volumen de 24h en USD igual o superior a este valor. Debe ser al menos 0.

max_volume
number opcional
100000000000

Solo tickers con un volumen de 24h en USD igual o inferior a este valor. Debe ser al menos 0.

min_change
number opcional
-50

Solo tickers con un cambio porcentual de 24h igual o superior a este valor.

max_change
number opcional
50

Solo tickers con un cambio porcentual de 24h igual o inferior a este valor.

sort
string opcional
-volume_usd

Un único campo de ordenación (antepón - para orden descendente). Ordenable por: volume_usd, change_24h, price_usd, updated. Por defecto -volume_usd. No debe superar los 100 caracteres.

Petición GET: sin cuerpo de petición.

Petición

curl --request GET \
    --get "https://bitculator.com/api/v1/tickers?page=1&per_page=50&exchange=binance-exchange&pair=1&instrument=spot&search=BTC&min_volume=1000000&max_volume=100000000000&min_change=-50&max_change=50&sort=-volume_usd" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Listar pares

Free

Pares de trading agregados por plataforma, clasificados por volumen de 24h en USD. Filtra por un slug de moneda (base o cotización) y rango de volumen.

GET
https://bitculator.com/api/v1/pairs
Bearer
bc_••••••••••••••••

Las claves son solo Bearer y tienen la habilidad data-api: mantenlas en el servidor.

Parámetros de consulta

page
integer opcional
1

Número de página (empieza en 1). Debe ser al menos 1.

per_page
integer opcional
50

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.

search
string opcional
BTC

Coincidencia de texto libre en el símbolo del par. No debe superar los 50 caracteres.

coin
string opcional
bitcoin

Restringe a pares donde este slug de moneda sea el activo base o de cotización. Debe coincidir con la expresión regular /^[a-z0-9-]{1,120}$/.

min_volume
number opcional
1000000

Solo pares con un volumen de 24h en USD igual o superior a este valor. Debe ser al menos 0.

max_volume
number opcional
100000000000

Solo pares con un volumen de 24h en USD igual o inferior a este valor. Debe ser al menos 0.

sort
string opcional
-volume_usd

Campo de ordenación: volume_usd o updated (antepón - para orden descendente). Por defecto -volume_usd.

Uno de: volume_usd -volume_usd updated -updated

Petición GET: sin cuerpo de petición.

Petición

curl --request GET \
    --get "https://bitculator.com/api/v1/pairs?page=1&per_page=50&search=BTC&coin=bitcoin&min_volume=1000000&max_volume=100000000000&sort=-volume_usd" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Obtener el detalle de un par

Free

Un par más cada ticker de exchange que lo lista, ordenados por volumen.

GET
https://bitculator.com/api/v1/pairs/{id}
Bearer
bc_••••••••••••••••

Las claves son solo Bearer y tienen la habilidad data-api: mantenlas en el servidor.

Parámetros de ruta

id
integer obligatorio
1

El id del par.

Petición GET: sin cuerpo de petición.

Petición

curl --request GET \
    --get "https://bitculator.com/api/v1/pairs/1" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
7 endpoints

Exchanges

Rankings de exchanges, detalle, puntuaciones de confianza, series temporales y listados de mercados/monedas por exchange. Los volúmenes están en USD. No hay una columna CEX/DEX: type se deriva de la taxonomía del exchange, por lo que puede ser "cex", "dex" o null.

Listar exchanges

Free

Exchanges clasificados con volumen de 24h, dominancia, recuentos de pares/activos y cambios recientes. Paginados con el sobre links + meta de Laravel.

GET
https://bitculator.com/api/v1/exchanges
Bearer
bc_••••••••••••••••

Las claves son solo Bearer y tienen la habilidad data-api: mantenlas en el servidor.

Parámetros de consulta

page
integer opcional
1

Número de página (empieza en 1). Debe ser al menos 1.

per_page
integer opcional
50

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
string opcional
cex

Restringe a un tipo de plataforma: cex o dex (resuelto mediante la taxonomía del exchange).

Uno de: cex dex

search
string opcional
binance

Coincidencia de texto libre en el nombre del exchange. No debe superar los 100 caracteres.

min_pairs
integer opcional
100

Solo exchanges que listen al menos esta cantidad de pares. Debe ser al menos 0.

max_pairs
integer opcional
2000

Solo exchanges que listen como máximo esta cantidad de pares. Debe ser al menos 0.

min_assets
integer opcional
50

Solo exchanges que listen al menos esta cantidad de activos. Debe ser al menos 0.

max_assets
integer opcional
1000

Solo exchanges que listen como máximo esta cantidad de activos. Debe ser al menos 0.

min_volume
number opcional
1000000

Solo exchanges con un volumen de 24h en USD igual o superior a este valor. Debe ser al menos 0.

max_volume
number opcional
100000000000

Solo exchanges con un volumen de 24h en USD igual o inferior a este valor. Debe ser al menos 0.

ids
string opcional
1,12

Filtra a ids de exchanges específicos (CSV, hasta 100). No debe superar los 1000 caracteres.

slugs
string opcional
binance-exchange,gateio

Filtra a slugs de exchanges específicos (CSV, hasta 100). No debe superar los 2000 caracteres.

sort
string opcional
-volume

Campos de ordenación separados por comas; antepón - para orden descendente. Ordenable por: volume, rank, volume_dominance, change_24h, change_7d, pairs, assets. No debe superar los 100 caracteres.

Petición GET: sin cuerpo de petición.

Petición

curl --request GET \
    --get "https://bitculator.com/api/v1/exchanges?page=1&per_page=50&type=cex&search=binance&min_pairs=100&max_pairs=2000&min_assets=50&max_assets=1000&min_volume=1000000&max_volume=100000000000&ids=1%2C12&slugs=binance-exchange%2Cgateio&sort=-volume" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Obtener el detalle de un exchange

Free

Perfil completo de un único exchange: ranking, volumen/dominancia, recuentos de pares y activos, fecha established, location, website de referido y el type derivado (cex/dex/null).

GET
https://bitculator.com/api/v1/exchanges/{slug}
Bearer
bc_••••••••••••••••

Las claves son solo Bearer y tienen la habilidad data-api: mantenlas en el servidor.

Parámetros de ruta

slug
string obligatorio
binance-exchange

El slug del exchange.

Petición GET: sin cuerpo de petición.

Petición

curl --request GET \
    --get "https://bitculator.com/api/v1/exchanges/binance-exchange" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Obtener la puntuación de confianza de un exchange

Free

Una score de confianza agregada de 0–10 más su breakdown de 13 factores (rank, volume, age, volume_trend, stability, rank_stability, ticker_health, pairs, community, assets, dominance, market_breadth, transparency). Calculada por exchange y cacheada 24h.

GET
https://bitculator.com/api/v1/exchanges/{slug}/trust-score
Bearer
bc_••••••••••••••••

Las claves son solo Bearer y tienen la habilidad data-api: mantenlas en el servidor.

Parámetros de ruta

slug
string obligatorio
binance-exchange

El slug del exchange.

Petición GET: sin cuerpo de petición.

Petición

curl --request GET \
    --get "https://bitculator.com/api/v1/exchanges/binance-exchange/trust-score" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Historial del exchange

Starter

Serie temporal de volumen / dominancia / pares / activos (los rollups de exchanges no llevan OHLC). Elige interval: minutely, hourly o daily. La retención es una propiedad fija del pipeline de rollups: minutely 8 días, hourly 6 meses, daily para siempre; cuando se establece un limit, obtienes las N filas más recientes de la ventana, de más antigua a más reciente.

GET
https://bitculator.com/api/v1/exchanges/{slug}/history
Bearer
bc_••••••••••••••••

Las claves son solo Bearer y tienen la habilidad data-api: mantenlas en el servidor.

Parámetros de ruta

slug
string obligatorio
binance-exchange

El slug del exchange.

Parámetros de consulta

interval
string opcional
daily

minutely, hourly o daily (por defecto daily).

start
string opcional
2026-06-01

Límite inferior de fecha/hora ISO.

end
string opcional
2026-06-30

Límite superior de fecha/hora ISO (un valor solo de fecha significa hasta el final de ese día).

limit
integer opcional
30

Filas máximas (1–2000, por defecto 1000).

Petición GET: sin cuerpo de petición.

Petición

curl --request GET \
    --get "https://bitculator.com/api/v1/exchanges/binance-exchange/history?interval=daily&start=2026-06-01&end=2026-06-30&limit=30" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Sparkline del exchange

Starter

La serie sparkline de volumen del exchange para un periodo (por defecto 7d): la misma serie que renderizan las filas de exchanges de la web.

GET
https://bitculator.com/api/v1/exchanges/{slug}/sparkline
Bearer
bc_••••••••••••••••

Las claves son solo Bearer y tienen la habilidad data-api: mantenlas en el servidor.

Parámetros de ruta

slug
string obligatorio
binance-exchange

El slug del exchange.

Parámetros de consulta

period
string opcional
7d

Uno de 24h, 7d (por defecto), 30d, 60d, 90d, 180d, 365d.

Petición GET: sin cuerpo de petición.

Petición

curl --request GET \
    --get "https://bitculator.com/api/v1/exchanges/binance-exchange/sparkline?period=7d" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Mercados del exchange

Free

Los listados de tickers del exchange (sus mercados), paginados. Ya está acotado al exchange: no pases aquí un parámetro exchange.

GET
https://bitculator.com/api/v1/exchanges/{slug}/tickers
Bearer
bc_••••••••••••••••

Las claves son solo Bearer y tienen la habilidad data-api: mantenlas en el servidor.

Parámetros de ruta

slug
string obligatorio
binance-exchange

El slug del exchange.

Parámetros de consulta

page
integer opcional
1

Número de página (empieza en 1). Debe ser al menos 1.

per_page
integer opcional
50

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.

exchange
string opcional
binance-exchange

Restringe a un único exchange por slug (omítelo en el listado por exchange, que ya está acotado). Debe coincidir con la expresión regular /^[a-z0-9-]{1,120}$/.

pair
integer opcional
1

Restringe a un único par por id. Debe ser al menos 1.

instrument
string opcional
spot

Tipo de instrumento: future, option, swap, spot o margin (se aceptan plurales).

Uno de: future option swap spot margin

search
string opcional
BTC

Coincidencia de texto libre en el símbolo del ticker. No debe superar los 50 caracteres.

min_volume
number opcional
1000000

Solo tickers con un volumen de 24h en USD igual o superior a este valor. Debe ser al menos 0.

max_volume
number opcional
100000000000

Solo tickers con un volumen de 24h en USD igual o inferior a este valor. Debe ser al menos 0.

min_change
number opcional
-50

Solo tickers con un cambio porcentual de 24h igual o superior a este valor.

max_change
number opcional
50

Solo tickers con un cambio porcentual de 24h igual o inferior a este valor.

sort
string opcional
-volume_usd

Un único campo de ordenación (antepón - para orden descendente). Ordenable por: volume_usd, change_24h, price_usd, updated. Por defecto -volume_usd. No debe superar los 100 caracteres.

Petición GET: sin cuerpo de petición.

Petición

curl --request GET \
    --get "https://bitculator.com/api/v1/exchanges/binance-exchange/tickers?page=1&per_page=50&exchange=binance-exchange&pair=1&instrument=spot&search=BTC&min_volume=1000000&max_volume=100000000000&min_change=-50&max_change=50&sort=-volume_usd" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Monedas del exchange

Free

Monedas listadas en el exchange, devueltas en el mismo formato que List coins y aceptando los mismos filtros/orden.

GET
https://bitculator.com/api/v1/exchanges/{slug}/assets
Bearer
bc_••••••••••••••••

Las claves son solo Bearer y tienen la habilidad data-api: mantenlas en el servidor.

Parámetros de ruta

slug
string obligatorio
binance-exchange

El slug del exchange.

Parámetros de consulta

page
integer opcional
1

Número de página (empieza en 1). Debe ser al menos 1.

per_page
integer opcional
50

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
string opcional
coin

Restringe a un único tipo de activo: coin o token.

Uno de: coin token

status
string opcional
active

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
string opcional
bitcoin

Coincidencia de texto libre en el nombre o símbolo. No debe superar los 100 caracteres.

min_price
number opcional
0.5

Solo monedas con un precio igual o superior a este valor en USD. Debe ser al menos 0.

max_price
number opcional
100000

Solo monedas con un precio igual o inferior a este valor en USD. Debe ser al menos 0.

min_marketcap
number opcional
1000000

Solo monedas con una capitalización en USD igual o superior a este valor. Debe ser al menos 0.

max_marketcap
number opcional
5000000000000

Solo monedas con una capitalización en USD igual o inferior a este valor. Debe ser al menos 0.

min_volume
number opcional
1000000

Solo monedas con un volumen de 24h en USD igual o superior a este valor. Debe ser al menos 0.

max_volume
number opcional
100000000000

Solo monedas con un volumen de 24h en USD igual o inferior a este valor. Debe ser al menos 0.

ids
string opcional
38,39

Filtra a ids de monedas específicos (CSV, hasta 100 selectores combinados con slugs/symbols). No debe superar los 1000 caracteres.

slugs
string opcional
bitcoin,ethereum

Filtra a slugs de monedas específicos (CSV, hasta 100 selectores combinados). No debe superar los 2000 caracteres.

symbols
string opcional
BTC,ETH

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
string opcional
-marketcap

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
string opcional
24h

Ventana de movimientos solo para /coins/gainers y /coins/losers: 24h o 7d.

Uno de: 24h 7d

Petición GET: sin cuerpo de petición.

Petición

curl --request GET \
    --get "https://bitculator.com/api/v1/exchanges/binance-exchange/assets?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"
5 endpoints

Wallets

Reseñas de wallets cripto: score de la reseña, número de activos soportados, recuentos de pros/contras, modelo de precio y fecha de lanzamiento, más una taxonomía de etiquetas agrupada en las respuestas de detalle/comparación. meta.top_score es la puntuación más alta entre todas las wallets (úsala para normalizar las puntuaciones a un rango de 0–1).

Listar wallets

Free

Wallets reseñadas con puntuación, número de activos, recuentos de pros/contras, modelo de precio, estado y fecha de lanzamiento. Paginadas con el sobre links + meta de Laravel, más meta.top_score.

GET
https://bitculator.com/api/v1/wallets
Bearer
bc_••••••••••••••••

Las claves son solo Bearer y tienen la habilidad data-api: mantenlas en el servidor.

Parámetros de consulta

page
integer opcional
1

Número de página (empieza en 1). Debe ser al menos 1.

per_page
integer opcional
50

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.

search
string opcional
ledger

Coincidencia de texto libre en el nombre de la wallet. No debe superar los 100 caracteres.

min_score
integer opcional
50

Solo wallets con una puntuación de reseña igual o superior a este valor. Debe ser al menos 0.

max_score
integer opcional
214

Solo wallets con una puntuación de reseña igual o inferior a este valor. Debe ser al menos 0.

tags
string opcional
12,34

Filtra por taxonomía de etiquetas: ids de grupos de categorías separados por comas (los mismos ids que envían los filtros de facetas de la web). No debe superar los 1000 caracteres.

ids
string opcional
175,317

Filtra a ids de wallets específicos (CSV, hasta 100). No debe superar los 1000 caracteres.

slugs
string opcional
frostsnap,coin98-fusion-card

Filtra a slugs de wallets específicos (CSV, hasta 100). No debe superar los 2000 caracteres.

sort
string opcional
-score

Campos de ordenación separados por comas; antepón - para orden descendente. Ordenable por: score, released_at, assets, pros, cons. No debe superar los 100 caracteres.

Petición GET: sin cuerpo de petición.

Petición

curl --request GET \
    --get "https://bitculator.com/api/v1/wallets?page=1&per_page=50&search=ledger&min_score=50&max_score=214&tags=12%2C34&ids=175%2C317&slugs=frostsnap%2Ccoin98-fusion-card&sort=-score" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Cronología de lanzamientos de wallets

Free

La lista de wallets fijada a released_at descendente (las wallets sin fecha al final). Mismo formato de fila y sobre de paginación que List wallets.

GET
https://bitculator.com/api/v1/wallets/timeline
Bearer
bc_••••••••••••••••

Las claves son solo Bearer y tienen la habilidad data-api: mantenlas en el servidor.

Parámetros de consulta

page
integer opcional
1

Número de página (empieza en 1). Debe ser al menos 1.

per_page
integer opcional
50

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.

search
string opcional
ledger

Coincidencia de texto libre en el nombre de la wallet. No debe superar los 100 caracteres.

min_score
integer opcional
50

Solo wallets con una puntuación de reseña igual o superior a este valor. Debe ser al menos 0.

max_score
integer opcional
214

Solo wallets con una puntuación de reseña igual o inferior a este valor. Debe ser al menos 0.

tags
string opcional
12,34

Filtra por taxonomía de etiquetas: ids de grupos de categorías separados por comas (los mismos ids que envían los filtros de facetas de la web). No debe superar los 1000 caracteres.

ids
string opcional
175,317

Filtra a ids de wallets específicos (CSV, hasta 100). No debe superar los 1000 caracteres.

slugs
string opcional
frostsnap,coin98-fusion-card

Filtra a slugs de wallets específicos (CSV, hasta 100). No debe superar los 2000 caracteres.

sort
string opcional
-score

Campos de ordenación separados por comas; antepón - para orden descendente. Ordenable por: score, released_at, assets, pros, cons. No debe superar los 100 caracteres.

Petición GET: sin cuerpo de petición.

Petición

curl --request GET \
    --get "https://bitculator.com/api/v1/wallets/timeline?page=1&per_page=50&search=ledger&min_score=50&max_score=214&tags=12%2C34&ids=175%2C317&slugs=frostsnap%2Ccoin98-fusion-card&sort=-score" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Comparar wallets

Free

Comparación lado a lado de 2–4 wallets con su taxonomía de etiquetas agrupada completa. data[] conserva el orden de slugs solicitado para que los consumidores puedan renderizar columnas por posición.

GET
https://bitculator.com/api/v1/wallets/compare
Bearer
bc_••••••••••••••••

Las claves son solo Bearer y tienen la habilidad data-api: mantenlas en el servidor.

Parámetros de consulta

slugs
string obligatorio
frostsnap,coin98-fusion-card

2–4 slugs de wallet distintos, separados por comas.

Petición GET: sin cuerpo de petición.

Petición

curl --request GET \
    --get "https://bitculator.com/api/v1/wallets/compare?slugs=frostsnap%2Ccoin98-fusion-card" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Obtener el detalle de una wallet

Free

Perfil completo de una única wallet incluyendo la taxonomía de etiquetas agrupada: categories es una lista de {group, tags[]} donde cada etiqueta tiene un slug, nombre y un valor opcional. meta.top_score es la puntuación más alta entre todas las wallets.

GET
https://bitculator.com/api/v1/wallets/{slug}
Bearer
bc_••••••••••••••••

Las claves son solo Bearer y tienen la habilidad data-api: mantenlas en el servidor.

Parámetros de ruta

slug
string obligatorio
frostsnap

El slug de la wallet.

Petición GET: sin cuerpo de petición.

Petición

curl --request GET \
    --get "https://bitculator.com/api/v1/wallets/frostsnap" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Monedas soportadas por la wallet

Free

Monedas que soporta la wallet, devueltas en el mismo formato que List coins y aceptando los mismos filtros/orden.

GET
https://bitculator.com/api/v1/wallets/{slug}/assets
Bearer
bc_••••••••••••••••

Las claves son solo Bearer y tienen la habilidad data-api: mantenlas en el servidor.

Parámetros de ruta

slug
string obligatorio
frostsnap

El slug de la wallet.

Parámetros de consulta

page
integer opcional
1

Número de página (empieza en 1). Debe ser al menos 1.

per_page
integer opcional
50

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
string opcional
coin

Restringe a un único tipo de activo: coin o token.

Uno de: coin token

status
string opcional
active

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
string opcional
bitcoin

Coincidencia de texto libre en el nombre o símbolo. No debe superar los 100 caracteres.

min_price
number opcional
0.5

Solo monedas con un precio igual o superior a este valor en USD. Debe ser al menos 0.

max_price
number opcional
100000

Solo monedas con un precio igual o inferior a este valor en USD. Debe ser al menos 0.

min_marketcap
number opcional
1000000

Solo monedas con una capitalización en USD igual o superior a este valor. Debe ser al menos 0.

max_marketcap
number opcional
5000000000000

Solo monedas con una capitalización en USD igual o inferior a este valor. Debe ser al menos 0.

min_volume
number opcional
1000000

Solo monedas con un volumen de 24h en USD igual o superior a este valor. Debe ser al menos 0.

max_volume
number opcional
100000000000

Solo monedas con un volumen de 24h en USD igual o inferior a este valor. Debe ser al menos 0.

ids
string opcional
38,39

Filtra a ids de monedas específicos (CSV, hasta 100 selectores combinados con slugs/symbols). No debe superar los 1000 caracteres.

slugs
string opcional
bitcoin,ethereum

Filtra a slugs de monedas específicos (CSV, hasta 100 selectores combinados). No debe superar los 2000 caracteres.

symbols
string opcional
BTC,ETH

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
string opcional
-marketcap

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
string opcional
24h

Ventana de movimientos solo para /coins/gainers y /coins/losers: 24h o 7d.

Uno de: 24h 7d

Petición GET: sin cuerpo de petición.

Petición

curl --request GET \
    --get "https://bitculator.com/api/v1/wallets/frostsnap/assets?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"
3 endpoints

Mercado global

Agregados de todo el mercado: capitalización de mercado y volumen totales, recuentos de activos/exchanges/pares/mercados, dominancia BTC/ETH con un top-3 basado en el ranking, la lectura de miedo y codicia del mercado, más un mapa de calor del top-100 e historial de capitalización/volumen.

Instantánea del mercado global

Free

Resumen de mercado de un vistazo: capitalización de mercado total y volumen de 24h, recuentos de criptomonedas / tokens / exchanges / pares / mercados, dominance (cuota de BTC y ETH más el top3 basado en el ranking) y la lectura fear_greed del mercado.

GET
https://bitculator.com/api/v1/global
Bearer
bc_••••••••••••••••

Las claves son solo Bearer y tienen la habilidad data-api: mantenlas en el servidor.

Petición GET: sin cuerpo de petición.

Petición

curl --request GET \
    --get "https://bitculator.com/api/v1/global" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Mapa de calor del mercado

Starter

Filas del treemap del top-100 más estadísticas de contexto (capitalización/volumen totales, dominancia y la puntuación de miedo y codicia del mercado): el gemelo por API del mapa de calor web.

GET
https://bitculator.com/api/v1/global/heatmap
Bearer
bc_••••••••••••••••

Las claves son solo Bearer y tienen la habilidad data-api: mantenlas en el servidor.

Petición GET: sin cuerpo de petición.

Petición

curl --request GET \
    --get "https://bitculator.com/api/v1/global/heatmap" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Historial global de capitalización / volumen

Starter

Serie temporal de todo el mercado para marketcap o volume. La granularidad sigue al period: 24h = media hora, 7d = por hora, 30d/all = diaria (los rollups más finos se podan).

GET
https://bitculator.com/api/v1/global/history/{metric}
Bearer
bc_••••••••••••••••

Las claves son solo Bearer y tienen la habilidad data-api: mantenlas en el servidor.

Parámetros de ruta

metric
string obligatorio
marketcap

Qué serie: marketcap o volume.

Parámetros de consulta

period
string opcional
7d

24h, 7d, 30d o all (por defecto 24h).

Petición GET: sin cuerpo de petición.

Petición

curl --request GET \
    --get "https://bitculator.com/api/v1/global/history/marketcap?period=7d" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
4 endpoints

Sentimiento

Índices de sentimiento del mercado y por moneda. Miedo y codicia y alcista/bajista son INSTANTÁNEAS que se actualizan cada 15 minutos: solo existe la lectura actual, no hay serie temporal para ellas. Altseason lleva el historial diario completo. indicators es el recuento técnico de todo el mercado.

Índice de miedo y codicia

Free

La lectura actual de miedo y codicia (una instantánea de 15 minutos, sin historial). Omite coin para el índice de todo el mercado, o pasa un slug de moneda para una lectura por moneda. intervals lleva las subpuntuaciones de 7d/30d y el desglose de sus componentes.

GET
https://bitculator.com/api/v1/sentiment/fear-greed
Bearer
bc_••••••••••••••••

Las claves son solo Bearer y tienen la habilidad data-api: mantenlas en el servidor.

Parámetros de consulta

coin
string opcional
bitcoin

Slug de la moneda para una lectura por moneda; omítelo para el índice de mercado.

Petición GET: sin cuerpo de petición.

Petición

curl --request GET \
    --get "https://bitculator.com/api/v1/sentiment/fear-greed?coin=bitcoin" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Índice alcista/bajista

Starter

La lectura alcista/bajista actual (una instantánea de 15 minutos, sin historial). Omite coin para el índice de todo el mercado, o pasa un slug de moneda para una lectura por moneda.

GET
https://bitculator.com/api/v1/sentiment/bull-bear
Bearer
bc_••••••••••••••••

Las claves son solo Bearer y tienen la habilidad data-api: mantenlas en el servidor.

Parámetros de consulta

coin
string opcional
bitcoin

Slug de la moneda para una lectura por moneda; omítelo para el índice de mercado.

Petición GET: sin cuerpo de petición.

Petición

curl --request GET \
    --get "https://bitculator.com/api/v1/sentiment/bull-bear?coin=bitcoin" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Índice de altseason

Starter

La lectura actual de altseason (número de monedas que superan a BTC dentro del top 100), con history diario opcional. A diferencia del miedo y codicia, altseason tiene historial diario completo: pasa days para incluirlo.

GET
https://bitculator.com/api/v1/sentiment/altseason
Bearer
bc_••••••••••••••••

Las claves son solo Bearer y tienen la habilidad data-api: mantenlas en el servidor.

Parámetros de consulta

days
integer opcional
30

Días de historial diario a incluir (1–365; 0/omitir = solo el actual).

Petición GET: sin cuerpo de petición.

Petición

curl --request GET \
    --get "https://bitculator.com/api/v1/sentiment/altseason?days=30" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Recuento de indicadores del mercado

Pro

El recuento técnico de todo el mercado: 25 categorías de indicadores agregadas, cada una con su estado actual, puntuación y datos de la categoría.

GET
https://bitculator.com/api/v1/sentiment/indicators
Bearer
bc_••••••••••••••••

Las claves son solo Bearer y tienen la habilidad data-api: mantenlas en el servidor.

Petición GET: sin cuerpo de petición.

Petición

curl --request GET \
    --get "https://bitculator.com/api/v1/sentiment/indicators" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
14 endpoints

Indicadores

Indicadores técnicos por moneda. Cada indicador es su propio endpoint dedicado - osciladores de momentum (RSI, Stoch-RSI, CCI, MFI, Williams %R), referencias de tendencia y precio (SMA, MACD, VWAP), flujo de volumen (OBV, CMF), fuerza de tendencia (ADX) y volatilidad - más una única instantánea multiindicador. Cada familia es una serie DIARIA calculada a partir de velas diarias (retención completa; los activos jóvenes devuelven nulls iniciales de calentamiento hasta que existe suficiente historial). Las familias en escala de precio (SMA, VWAP, MACD, OBV) emiten cadenas decimales; los osciladores acotados emiten números. Algunos periodos de ventana larga requieren un plan de pago - indicado en cada endpoint.

Instantánea de indicadores

Pro

La instantánea multiindicador - el último state (bullish/bearish/sheepish…), el score y los data en bruto de cada categoría de indicador, en una sola carga útil. Ideal para una lectura rápida de un vistazo en un dashboard; usa los endpoints dedicados por indicador de abajo para el historial diario completo.

GET
https://bitculator.com/api/v1/coins/{slug}/indicators
Bearer
bc_••••••••••••••••

Las claves son solo Bearer y tienen la habilidad data-api: mantenlas en el servidor.

Parámetros de ruta

slug
string obligatorio
bitcoin

El slug de la moneda.

Petición GET: sin cuerpo de petición.

Petición

curl --request GET \
    --get "https://bitculator.com/api/v1/coins/bitcoin/indicators" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

RSI (Índice de Fuerza Relativa)

Starter

Índice de Fuerza Relativa diario - un oscilador de momentum acotado entre 0–100 que mide la velocidad y la magnitud de los movimientos recientes del precio. Por encima de 70 se considera convencionalmente sobrecompra, por debajo de 30 sobreventa. Ventanas: 7, 14, 21, 28 días (por defecto 14) - las ventanas de 21 y 28 días requieren el plan Starter o superior. Las monedas jóvenes devuelven nulls iniciales de calentamiento.

GET
https://bitculator.com/api/v1/coins/{slug}/indicators/rsi
Bearer
bc_••••••••••••••••

Las claves son solo Bearer y tienen la habilidad data-api: mantenlas en el servidor.

Parámetros de ruta

slug
string obligatorio
bitcoin

El slug de la moneda.

Parámetros de consulta

period
integer opcional
14

Longitud de la ventana - una de 7, 14, 21, 28 (por defecto 14).

start
string opcional
2026-06-01

Límite inferior de fecha ISO.

end
string opcional
2026-06-30

Límite superior de fecha ISO.

limit
integer opcional
30

Filas máximas (1–1000, por defecto 365).

Petición GET: sin cuerpo de petición.

Petición

curl --request GET \
    --get "https://bitculator.com/api/v1/coins/bitcoin/indicators/rsi?period=14&start=2026-06-01&end=2026-06-30&limit=30" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

RSI Estocástico

Pro

RSI Estocástico diario - aplica el oscilador estocástico al propio RSI, ofreciendo una lectura de momentum más rápida y sensible entre 0–100 con las líneas %K y %D que se cruzan para señalar giros. Ventanas: 7, 14, 21, 28 días (por defecto 14) - las ventanas de 21 y 28 días requieren el plan Starter o superior.

GET
https://bitculator.com/api/v1/coins/{slug}/indicators/stoch-rsi
Bearer
bc_••••••••••••••••

Las claves son solo Bearer y tienen la habilidad data-api: mantenlas en el servidor.

Parámetros de ruta

slug
string obligatorio
bitcoin

El slug de la moneda.

Parámetros de consulta

period
integer opcional
14

Longitud de la ventana - una de 7, 14, 21, 28 (por defecto 14).

start
string opcional
2026-06-01

Límite inferior de fecha ISO.

end
string opcional
2026-06-30

Límite superior de fecha ISO.

limit
integer opcional
30

Filas máximas (1–1000, por defecto 365).

Petición GET: sin cuerpo de petición.

Petición

curl --request GET \
    --get "https://bitculator.com/api/v1/coins/bitcoin/indicators/stoch-rsi?period=14&start=2026-06-01&end=2026-06-30&limit=30" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

SMA (Media Móvil Simple)

Starter

Media Móvil Simple diaria - la media aritmética del precio de cierre a lo largo de la ventana, la referencia de tendencia clásica que los traders leen para soportes, resistencias y cruces dorados/de la muerte. Ventanas: 50, 100, 200 días (por defecto 50). Los valores son cadenas decimales en la escala del precio.

GET
https://bitculator.com/api/v1/coins/{slug}/indicators/sma
Bearer
bc_••••••••••••••••

Las claves son solo Bearer y tienen la habilidad data-api: mantenlas en el servidor.

Parámetros de ruta

slug
string obligatorio
bitcoin

El slug de la moneda.

Parámetros de consulta

period
integer opcional
50

Longitud de la ventana - una de 50, 100, 200 (por defecto 50).

start
string opcional
2026-06-01

Límite inferior de fecha ISO.

end
string opcional
2026-06-30

Límite superior de fecha ISO.

limit
integer opcional
30

Filas máximas (1–1000, por defecto 365).

Petición GET: sin cuerpo de petición.

Petición

curl --request GET \
    --get "https://bitculator.com/api/v1/coins/bitcoin/indicators/sma?period=50&start=2026-06-01&end=2026-06-30&limit=30" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

CCI (Índice del Canal de Materias Primas)

Starter

Índice del Canal de Materias Primas diario - mide cuánto se ha desviado el precio de su media estadística; las lecturas más allá de ±100 señalan tendencias fuertes o posibles reversiones. Ventanas: 20, 50, 100 días (por defecto 20).

GET
https://bitculator.com/api/v1/coins/{slug}/indicators/cci
Bearer
bc_••••••••••••••••

Las claves son solo Bearer y tienen la habilidad data-api: mantenlas en el servidor.

Parámetros de ruta

slug
string obligatorio
bitcoin

El slug de la moneda.

Parámetros de consulta

period
integer opcional
20

Longitud de la ventana - una de 20, 50, 100 (por defecto 20).

start
string opcional
2026-06-01

Límite inferior de fecha ISO.

end
string opcional
2026-06-30

Límite superior de fecha ISO.

limit
integer opcional
30

Filas máximas (1–1000, por defecto 365).

Petición GET: sin cuerpo de petición.

Petición

curl --request GET \
    --get "https://bitculator.com/api/v1/coins/bitcoin/indicators/cci?period=20&start=2026-06-01&end=2026-06-30&limit=30" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

MFI (Índice de Flujo de Dinero)

Pro

Índice de Flujo de Dinero diario - un RSI ponderado por volumen (0–100) que incorpora el volumen de negociación al momentum, a menudo llamado "RSI de volumen"; por encima de 80 sobrecompra, por debajo de 20 sobreventa. Ventanas: 7, 14, 28 días (por defecto 14).

GET
https://bitculator.com/api/v1/coins/{slug}/indicators/mfi
Bearer
bc_••••••••••••••••

Las claves son solo Bearer y tienen la habilidad data-api: mantenlas en el servidor.

Parámetros de ruta

slug
string obligatorio
bitcoin

El slug de la moneda.

Parámetros de consulta

period
integer opcional
14

Longitud de la ventana - una de 7, 14, 28 (por defecto 14).

start
string opcional
2026-06-01

Límite inferior de fecha ISO.

end
string opcional
2026-06-30

Límite superior de fecha ISO.

limit
integer opcional
30

Filas máximas (1–1000, por defecto 365).

Petición GET: sin cuerpo de petición.

Petición

curl --request GET \
    --get "https://bitculator.com/api/v1/coins/bitcoin/indicators/mfi?period=14&start=2026-06-01&end=2026-06-30&limit=30" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Williams %R

Pro

Williams %R diario - un oscilador de momentum acotado entre −100–0 que ubica dónde se sitúa el cierre dentro del rango máximo-mínimo reciente; por encima de −20 sobrecompra, por debajo de −80 sobreventa. Ventanas: 14, 20, 50 días (por defecto 14).

GET
https://bitculator.com/api/v1/coins/{slug}/indicators/williams-r
Bearer
bc_••••••••••••••••

Las claves son solo Bearer y tienen la habilidad data-api: mantenlas en el servidor.

Parámetros de ruta

slug
string obligatorio
bitcoin

El slug de la moneda.

Parámetros de consulta

period
integer opcional
14

Longitud de la ventana - una de 14, 20, 50 (por defecto 14).

start
string opcional
2026-06-01

Límite inferior de fecha ISO.

end
string opcional
2026-06-30

Límite superior de fecha ISO.

limit
integer opcional
30

Filas máximas (1–1000, por defecto 365).

Petición GET: sin cuerpo de petición.

Petición

curl --request GET \
    --get "https://bitculator.com/api/v1/coins/bitcoin/indicators/williams-r?period=14&start=2026-06-01&end=2026-06-30&limit=30" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Volatilidad de precio

Pro

Índice de volatilidad de precio diario - la dispersión de los rendimientos diarios a lo largo de la ventana, una lectura normalizada de lo irregular que ha sido la acción del precio. Ventanas: 7, 14, 30 días (por defecto 7) - la ventana de 30 días requiere el plan Starter o superior.

GET
https://bitculator.com/api/v1/coins/{slug}/indicators/price-volatility
Bearer
bc_••••••••••••••••

Las claves son solo Bearer y tienen la habilidad data-api: mantenlas en el servidor.

Parámetros de ruta

slug
string obligatorio
bitcoin

El slug de la moneda.

Parámetros de consulta

period
integer opcional
7

Longitud de la ventana - una de 7, 14, 30 (por defecto 7).

start
string opcional
2026-06-01

Límite inferior de fecha ISO.

end
string opcional
2026-06-30

Límite superior de fecha ISO.

limit
integer opcional
30

Filas máximas (1–1000, por defecto 365).

Petición GET: sin cuerpo de petición.

Petición

curl --request GET \
    --get "https://bitculator.com/api/v1/coins/bitcoin/indicators/price-volatility?period=7&start=2026-06-01&end=2026-06-30&limit=30" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Volatilidad de volumen

Starter

Índice de volatilidad de volumen diario - la dispersión del volumen de negociación diario a lo largo de la ventana, una lectura de lo errática que ha sido la participación. Ventanas: 7, 14, 30 días (por defecto 7) - la ventana de 30 días requiere el plan Starter o superior.

GET
https://bitculator.com/api/v1/coins/{slug}/indicators/volume-volatility
Bearer
bc_••••••••••••••••

Las claves son solo Bearer y tienen la habilidad data-api: mantenlas en el servidor.

Parámetros de ruta

slug
string obligatorio
bitcoin

El slug de la moneda.

Parámetros de consulta

period
integer opcional
7

Longitud de la ventana - una de 7, 14, 30 (por defecto 7).

start
string opcional
2026-06-01

Límite inferior de fecha ISO.

end
string opcional
2026-06-30

Límite superior de fecha ISO.

limit
integer opcional
30

Filas máximas (1–1000, por defecto 365).

Petición GET: sin cuerpo de petición.

Petición

curl --request GET \
    --get "https://bitculator.com/api/v1/coins/bitcoin/indicators/volume-volatility?period=7&start=2026-06-01&end=2026-06-30&limit=30" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

MACD

Pro

MACD (Convergencia/Divergencia de Medias Móviles) diario - el diferencial de las EMA 12/26 con una línea de señal de 9 periodos e histograma, un indicador básico de tendencia y momentum que se lee por los cruces de la línea de señal y los cambios respecto a la línea cero. Devuelve macd, signal e histogram como cadenas decimales. Sin parámetro de ventana.

GET
https://bitculator.com/api/v1/coins/{slug}/indicators/macd
Bearer
bc_••••••••••••••••

Las claves son solo Bearer y tienen la habilidad data-api: mantenlas en el servidor.

Parámetros de ruta

slug
string obligatorio
bitcoin

El slug de la moneda.

Parámetros de consulta

start
string opcional
2026-06-01

Límite inferior de fecha ISO.

end
string opcional
2026-06-30

Límite superior de fecha ISO.

limit
integer opcional
30

Filas máximas (1–1000, por defecto 365).

Petición GET: sin cuerpo de petición.

Petición

curl --request GET \
    --get "https://bitculator.com/api/v1/coins/bitcoin/indicators/macd?start=2026-06-01&end=2026-06-30&limit=30" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

OBV (Volumen en Balance)

Pro

Volumen en Balance diario - una línea de volumen acumulado que suma volumen en los días alcistas y lo resta en los días bajistas, siguiendo la presión compradora neta frente a la vendedora y confirmando (o divergiendo de) las tendencias del precio. Serie única de cadenas decimales.

GET
https://bitculator.com/api/v1/coins/{slug}/indicators/obv
Bearer
bc_••••••••••••••••

Las claves son solo Bearer y tienen la habilidad data-api: mantenlas en el servidor.

Parámetros de ruta

slug
string obligatorio
bitcoin

El slug de la moneda.

Parámetros de consulta

start
string opcional
2026-06-01

Límite inferior de fecha ISO.

end
string opcional
2026-06-30

Límite superior de fecha ISO.

limit
integer opcional
30

Filas máximas (1–1000, por defecto 365).

Petición GET: sin cuerpo de petición.

Petición

curl --request GET \
    --get "https://bitculator.com/api/v1/coins/bitcoin/indicators/obv?start=2026-06-01&end=2026-06-30&limit=30" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

ADX (Índice Direccional Medio)

Starter

ADX diario con +DI/−DI - mide la fuerza (adx) y la dirección (los indicadores direccionales plus_di/minus_di) de la tendencia. Un ADX por encima de 25 señala una tendencia fuerte con independencia de la dirección; el cruce de DI señala hacia qué lado. Serie única, sin parámetro de ventana.

GET
https://bitculator.com/api/v1/coins/{slug}/indicators/adx
Bearer
bc_••••••••••••••••

Las claves son solo Bearer y tienen la habilidad data-api: mantenlas en el servidor.

Parámetros de ruta

slug
string obligatorio
bitcoin

El slug de la moneda.

Parámetros de consulta

start
string opcional
2026-06-01

Límite inferior de fecha ISO.

end
string opcional
2026-06-30

Límite superior de fecha ISO.

limit
integer opcional
30

Filas máximas (1–1000, por defecto 365).

Petición GET: sin cuerpo de petición.

Petición

curl --request GET \
    --get "https://bitculator.com/api/v1/coins/bitcoin/indicators/adx?start=2026-06-01&end=2026-06-30&limit=30" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

VWAP (Precio Medio Ponderado por Volumen)

Pro

VWAP diario - el precio medio ponderado por volumen, una referencia fundamental de valor justo y de ejecución; un precio por encima del VWAP se lee como alcista, por debajo como bajista. Serie única de cadenas decimales, sin parámetro de ventana.

GET
https://bitculator.com/api/v1/coins/{slug}/indicators/vwap
Bearer
bc_••••••••••••••••

Las claves son solo Bearer y tienen la habilidad data-api: mantenlas en el servidor.

Parámetros de ruta

slug
string obligatorio
bitcoin

El slug de la moneda.

Parámetros de consulta

start
string opcional
2026-06-01

Límite inferior de fecha ISO.

end
string opcional
2026-06-30

Límite superior de fecha ISO.

limit
integer opcional
30

Filas máximas (1–1000, por defecto 365).

Petición GET: sin cuerpo de petición.

Petición

curl --request GET \
    --get "https://bitculator.com/api/v1/coins/bitcoin/indicators/vwap?start=2026-06-01&end=2026-06-30&limit=30" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

CMF (Flujo de Dinero de Chaikin)

Starter

Flujo de Dinero de Chaikin diario - suma el volumen del flujo de dinero durante el periodo para calibrar la acumulación frente a la distribución; un valor positivo se lee como presión compradora neta, y uno negativo como presión vendedora. Acotado en torno a ±1. Serie única, sin parámetro de ventana.

GET
https://bitculator.com/api/v1/coins/{slug}/indicators/cmf
Bearer
bc_••••••••••••••••

Las claves son solo Bearer y tienen la habilidad data-api: mantenlas en el servidor.

Parámetros de ruta

slug
string obligatorio
bitcoin

El slug de la moneda.

Parámetros de consulta

start
string opcional
2026-06-01

Límite inferior de fecha ISO.

end
string opcional
2026-06-30

Límite superior de fecha ISO.

limit
integer opcional
30

Filas máximas (1–1000, por defecto 365).

Petición GET: sin cuerpo de petición.

Petición

curl --request GET \
    --get "https://bitculator.com/api/v1/coins/bitcoin/indicators/cmf?start=2026-06-01&end=2026-06-30&limit=30" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
3 endpoints

Conversión

Convierte entre dos activos activos cualesquiera (cripto Y fiat), y lista las monedas utilizables como tramos de conversión. Los valores son cadenas decimales. Las tasas de cambio fiat se actualizan ~dos veces al día; las tasas cripto ~cada minuto.

Convertir entre activos

Free

Conversión del lado del servidor entre dos activos activos cualesquiera (cripto Y fiat). to acepta un CSV para conversión multi-destino; invertir es simplemente intercambiar from/to. La conversión es lineal, así que value = unit_rate * amount. Las tasas de cambio fiat se actualizan ~dos veces al día; las tasas cripto ~cada minuto.

GET
https://bitculator.com/api/v1/convert
Bearer
bc_••••••••••••••••

Las claves son solo Bearer y tienen la habilidad data-api: mantenlas en el servidor.

Parámetros de consulta

from
string obligatorio
bitcoin

Slug del activo de origen.

to
string obligatorio
ethereum

Slug(s) del activo de destino, separados por comas (hasta 10).

amount
number opcional
2.5

Cantidad del activo de origen a convertir (por defecto 1).

Petición GET: sin cuerpo de petición.

Petición

curl --request GET \
    --get "https://bitculator.com/api/v1/convert?from=bitcoin&to=ethereum&amount=2.5" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Listar monedas fiat

Free

Las monedas fiat activas con sus tasas de cambio en USD: rate_per_usd (unidades por USD) y su inverso usd_value. Las tasas de cambio fiat se actualizan ~dos veces al día.

GET
https://bitculator.com/api/v1/fiats
Bearer
bc_••••••••••••••••

Las claves son solo Bearer y tienen la habilidad data-api: mantenlas en el servidor.

Petición GET: sin cuerpo de petición.

Petición

curl --request GET \
    --get "https://bitculator.com/api/v1/fiats" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Listar tasas de conversión

Free

Las vs-currencies utilizables como tramos de conversión -las principales fiat, monedas y tokens- cada una con un usd_value normalizado (USD por unidad). Los valores de monedas/tokens se actualizan ~cada minuto; las tasas fiat lentas se cachean por separado (~dos veces al día).

GET
https://bitculator.com/api/v1/rates
Bearer
bc_••••••••••••••••

Las claves son solo Bearer y tienen la habilidad data-api: mantenlas en el servidor.

Petición GET: sin cuerpo de petición.

Petición

curl --request GET \
    --get "https://bitculator.com/api/v1/rates" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
5 endpoints

Calculadoras

Calculadoras financieras del lado del servidor que reflejan las herramientas web: DCA, pérdidas/ganancias y préstamo (que leen datos de mercado cacheados), más cálculos sin estado de interés compuesto y staking.

Calculadora de DCA

Free

Backtest de promediado de costes (DCA) sobre el historial real de precios diarios de la moneda: una compra de amount por interval entre start y end. Pasa series=true para incluir la serie completa por compra.

GET
https://bitculator.com/api/v1/calculators/dca
Bearer
bc_••••••••••••••••

Las claves son solo Bearer y tienen la habilidad data-api: mantenlas en el servidor.

Parámetros de consulta

slug
string obligatorio
bitcoin

El identificador slug de la moneda.

amount
number obligatorio
100

USD gastados por compra (0.01–1,000,000,000).

interval
string obligatorio
weekly

Frecuencia de compra: daily, weekly, monthly, quarterly o yearly.

start
string obligatorio
2024-01-01

date Fecha de la primera compra (posterior a 2008-12-31).

end
string opcional
2025-01-01

date Fecha de la última compra (por defecto, hoy).

series
boolean opcional
false

Incluye la serie por compra en la carga útil.

Petición GET: sin cuerpo de petición.

Petición

curl --request GET \
    --get "https://bitculator.com/api/v1/calculators/dca?slug=bitcoin&amount=100&interval=weekly&start=2024-01-01&end=2025-01-01&series=" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Calculadora de pérdidas y ganancias

Free

Lo que habría dado una compra y posterior venta entre dos fechas históricas, usando los precios reales de la moneda en esas fechas. Las comisiones son importes fijos en USD, no porcentajes.

GET
https://bitculator.com/api/v1/calculators/profit-loss
Bearer
bc_••••••••••••••••

Las claves son solo Bearer y tienen la habilidad data-api: mantenlas en el servidor.

Parámetros de consulta

slug
string obligatorio
bitcoin

El identificador slug de la moneda.

amount
number obligatorio
1000

USD invertidos en buy_date (0.01–1,000,000,000).

buy_date
string obligatorio
2023-01-01

date Fecha de compra.

sell_date
string obligatorio
2025-01-01

date Fecha de venta (en/después de buy_date).

buy_fee
number opcional
10

Comisión de compra fija en USD (por defecto 0).

sell_fee
number opcional
10

Comisión de venta fija en USD (por defecto 0).

Petición GET: sin cuerpo de petición.

Petición

curl --request GET \
    --get "https://bitculator.com/api/v1/calculators/profit-loss?slug=bitcoin&amount=1000&buy_date=2023-01-01&sell_date=2025-01-01&buy_fee=10&sell_fee=10" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Calculadora de interés compuesto

Free

Matemática pura: sin datos de mercado. Ten en cuenta que la tasa se aplica POR PERIODO DE CAPITALIZACIÓN (la convención de la calculadora web), no por año.

GET
https://bitculator.com/api/v1/calculators/compound-interest
Bearer
bc_••••••••••••••••

Las claves son solo Bearer y tienen la habilidad data-api: mantenlas en el servidor.

Parámetros de consulta

principal
number obligatorio
10000

Saldo inicial en USD.

rate
number obligatorio
1

Tasa de interés en % por periodo de capitalización.

duration
integer obligatorio
5

Duración de la proyección (los años se limitan a 50).

duration_unit
string opcional
years

years (por defecto) o months.

compound_frequency
string opcional
monthly

daily, weekly, monthly (por defecto), quarterly o annually.

contribution
number opcional
100

Depósito recurrente en USD (por defecto 0).

contribution_frequency
string opcional
monthly

daily, weekly, monthly (por defecto), quarterly o annually.

Petición GET: sin cuerpo de petición.

Petición

curl --request GET \
    --get "https://bitculator.com/api/v1/calculators/compound-interest?principal=10000&rate=1&duration=5&duration_unit=years&compound_frequency=monthly&contribution=100&contribution_frequency=monthly" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Calculadora de préstamo vs venta

Free

Pedir prestado con cripto como garantía vs venderla: compara ambos escenarios usando el precio ACTUAL de la moneda. Proyección informativa, no asesoramiento financiero.

GET
https://bitculator.com/api/v1/calculators/loan
Bearer
bc_••••••••••••••••

Las claves son solo Bearer y tienen la habilidad data-api: mantenlas en el servidor.

Parámetros de consulta

slug
string obligatorio
bitcoin

El identificador slug de la moneda.

crypto_amount
number obligatorio
2

Cuánta cantidad de la moneda posees.

needed_cash
number obligatorio
50000

USD que necesitas liberar.

term_months
integer opcional
36

Plazo del préstamo en meses (por defecto 36).

interest_rate
number opcional
10

TAE del préstamo en % (por defecto 10).

ltv
number opcional
50

Ratio préstamo-valor (LTV) en % (por defecto 50).

expected_growth
number opcional
25

Crecimiento esperado del precio de la moneda durante el plazo en % (por defecto 25).

tax_rate
number opcional
25

Impuesto sobre plusvalías en % aplicado a la venta (por defecto 25).

Petición GET: sin cuerpo de petición.

Petición

curl --request GET \
    --get "https://bitculator.com/api/v1/calculators/loan?slug=bitcoin&crypto_amount=2&needed_cash=50000&term_months=36&interest_rate=10&ltv=50&expected_growth=25&tax_rate=25" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Calculadora de recompensas de staking

Free

Matemática pura: recompensas de staking con capitalización opcional y una comisión de validador. No se lee ningún dato de mercado.

GET
https://bitculator.com/api/v1/calculators/staking
Bearer
bc_••••••••••••••••

Las claves son solo Bearer y tienen la habilidad data-api: mantenlas en el servidor.

Parámetros de consulta

amount
number obligatorio
1000

Cantidad en staking, en unidades del activo en staking.

period
number obligatorio
2

Duración del periodo de staking (limitada al equivalente de 50 años).

period_unit
string opcional
years

years (por defecto), months o days.

apy
number obligatorio
5

APY anunciado en %.

compound_frequency
string opcional
monthly

never, daily, weekly, monthly (por defecto) o yearly.

commission
number opcional
10

Comisión del validador en %, tomada de las recompensas (por defecto 0).

Petición GET: sin cuerpo de petición.

Petición

curl --request GET \
    --get "https://bitculator.com/api/v1/calculators/staking?amount=1000&period=2&period_unit=years&apy=5&compound_frequency=monthly&commission=10" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
8 endpoints

Editorial

Artículos editoriales: solo publicados (ACTIVE). locale elige el idioma del contenido con respaldo en inglés por campo (la respuesta indica qué locale prevaleció realmente). Los artículos se pueden filtrar por etiqueta o por un slug de moneda/exchange/wallet relacionado. Las lecturas de la API deliberadamente NO incrementan los recuentos de vistas.

Vídeos de la moneda

Free

Vídeos seleccionados asociados a una moneda (la pestaña Vídeos de la página de la moneda), paginados.

GET
https://bitculator.com/api/v1/coins/{slug}/videos
Bearer
bc_••••••••••••••••

Las claves son solo Bearer y tienen la habilidad data-api: mantenlas en el servidor.

Parámetros de ruta

slug
string obligatorio
bitcoin

El identificador slug de la moneda.

Parámetros de consulta

page
integer opcional
1

Número de página (empieza en 1).

per_page
integer opcional
10

Filas por página (1–50, por defecto 10).

type
string opcional
review

Filtra por tipo de vídeo (p. ej. overview, tutorial, explainer, review, analysis, news).

search
string opcional
halving

Coincidencia de texto libre en el título.

Petición GET: sin cuerpo de petición.

Petición

curl --request GET \
    --get "https://bitculator.com/api/v1/coins/bitcoin/videos?page=1&per_page=10&type=review&search=halving" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Cronología de análisis de la moneda

Free

La cronología de análisis de la moneda: la misma carga útil que usa el panel de análisis de la página del activo, acotada por offset/limit.

GET
https://bitculator.com/api/v1/coins/{slug}/insights
Bearer
bc_••••••••••••••••

Las claves son solo Bearer y tienen la habilidad data-api: mantenlas en el servidor.

Parámetros de ruta

slug
string obligatorio
bitcoin

El identificador slug de la moneda.

Parámetros de consulta

locale
string opcional
en

Idioma del contenido (recurre al inglés como respaldo).

offset
integer opcional
0

Filas a omitir (0–500, por defecto 0).

limit
integer opcional
5

Filas a devolver (1–50, por defecto 5).

Petición GET: sin cuerpo de petición.

Petición

curl --request GET \
    --get "https://bitculator.com/api/v1/coins/bitcoin/insights?locale=en&offset=0&limit=5" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Listar artículos

Free

Artículos publicados, más recientes primero, paginados. Filtra por tag o por un slug relacionado de coin / exchange / wallet, o por search de texto libre. Cada fila es un resumen (título, subtítulo, etiquetas, tiempo de lectura, imagen principal, entidades relacionadas, fechas).

GET
https://bitculator.com/api/v1/articles
Bearer
bc_••••••••••••••••

Las claves son solo Bearer y tienen la habilidad data-api: mantenlas en el servidor.

Parámetros de consulta

page
integer opcional
1

Número de página (empieza en 1).

per_page
integer opcional
20

Filas por página (1–50, por defecto 20).

locale
string opcional
en

Idioma del contenido (recurre al inglés como respaldo).

tag
string opcional
guide

Filtra por etiqueta: news, guide, tutorial, explainer, analysis, review, trading, overview o information.

coin
string opcional
bitcoin

Filtra a los artículos relacionados con este slug de moneda.

exchange
string opcional
binance-exchange

Filtra a los artículos relacionados con este slug de exchange.

wallet
string opcional
frostsnap

Filtra a los artículos relacionados con este slug de wallet.

search
string opcional
halving

Coincidencia de texto libre en el título/subtítulo.

Petición GET: sin cuerpo de petición.

Petición

curl --request GET \
    --get "https://bitculator.com/api/v1/articles?page=1&per_page=20&locale=en&tag=guide&coin=bitcoin&exchange=binance-exchange&wallet=frostsnap&search=halving" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Obtener un artículo

Free

Un artículo publicado con su cuerpo completo, etiquetas, imagen principal, contadores de utilidad y entidades relacionadas. locale elige el idioma del contenido con respaldo en inglés por campo (la respuesta indica qué locale prevaleció realmente).

GET
https://bitculator.com/api/v1/articles/{slug}
Bearer
bc_••••••••••••••••

Las claves son solo Bearer y tienen la habilidad data-api: mantenlas en el servidor.

Parámetros de ruta

slug
string obligatorio
what-is-bitcoin

El slug del artículo.

Parámetros de consulta

locale
string opcional
en

Idioma del contenido (recurre al inglés como respaldo).

Petición GET: sin cuerpo de petición.

Petición

curl --request GET \
    --get "https://bitculator.com/api/v1/articles/what-is-bitcoin?locale=en" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Enviar valoración de un artículo

Free

Registra un voto positivo/negativo en un artículo: los mismos contadores que usan los botones de utilidad de la web. Se aplica una limitación por clave aguas arriba.

POST
https://bitculator.com/api/v1/articles/{slug}/feedback
Bearer
bc_••••••••••••••••

Las claves son solo Bearer y tienen la habilidad data-api: mantenlas en el servidor.

Parámetros de ruta

slug
string obligatorio
what-is-bitcoin

El slug del artículo.

Parámetros del cuerpo

helpful
boolean obligatorio
true

true para útil, false para no útil.

Petición

curl --request POST \
    "https://bitculator.com/api/v1/articles/what-is-bitcoin/feedback" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"helpful\": true
}"

Obtener un vídeo

Free

Un vídeo seleccionado con su id de YouTube, título, tipo, duración y las monedas/exchanges/wallets a las que está asociado.

GET
https://bitculator.com/api/v1/videos/{id}
Bearer
bc_••••••••••••••••

Las claves son solo Bearer y tienen la habilidad data-api: mantenlas en el servidor.

Parámetros de ruta

id
integer obligatorio
87

El id del vídeo.

Petición GET: sin cuerpo de petición.

Petición

curl --request GET \
    --get "https://bitculator.com/api/v1/videos/87" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Listar análisis

Free

Análisis de mercado generados por IA, paginados. Filtra por type, un coin slug relacionado o search de texto libre; locale elige el idioma del titular/resumen con respaldo en inglés.

GET
https://bitculator.com/api/v1/insights
Bearer
bc_••••••••••••••••

Las claves son solo Bearer y tienen la habilidad data-api: mantenlas en el servidor.

Parámetros de consulta

page
integer opcional
1

Número de página (empieza en 1).

per_page
integer opcional
20

Filas por página (1–50, por defecto 20).

locale
string opcional
en

Idioma del contenido (recurre al inglés como respaldo).

type
string opcional
per_asset

Filtra por tipo de análisis: per_asset, market_overview o narrative.

coin
string opcional
bitcoin

Filtra a los análisis sobre este slug de moneda.

search
string opcional
etf

Coincidencia de texto libre en el titular.

sort
string opcional
first_reported

Orden: first_reported (por defecto) o last_updated.

Petición GET: sin cuerpo de petición.

Petición

curl --request GET \
    --get "https://bitculator.com/api/v1/insights?page=1&per_page=20&locale=en&type=per_asset&coin=bitcoin&search=etf&sort=first_reported" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Obtener un análisis

Free

Un análisis con su carga útil completa: titular, resumen, cronología del artículo de origen y monedas relacionadas.

GET
https://bitculator.com/api/v1/insights/{id}
Bearer
bc_••••••••••••••••

Las claves son solo Bearer y tienen la habilidad data-api: mantenlas en el servidor.

Parámetros de ruta

id
integer obligatorio
101

El id del análisis.

Parámetros de consulta

locale
string opcional
en

Idioma del contenido (recurre al inglés como respaldo).

Petición GET: sin cuerpo de petición.

Petición

curl --request GET \
    --get "https://bitculator.com/api/v1/insights/101?locale=en" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
3 endpoints

Alarmas

CRUD de alarmas de precio: las mismas alarmas que gestiona la aplicación web. Las alarmas consumen el saldo del inventario de alarmas del propietario de la clave, son de tipo TARGET solo sobre monedas, y una protección above/below frente al valor actual bloquea las alarmas que se autoactivarían al instante. Están vinculadas a la clave (la clave de API establece el propietario) y nunca se cachean en la respuesta.

Listar alarmas

Free

Las alarmas del propietario de la clave, más recientes primero, paginadas. Filtra por status, direction o canal de notification.

GET
https://bitculator.com/api/v1/alarms
Bearer
bc_••••••••••••••••

Las claves son solo Bearer y tienen la habilidad data-api: mantenlas en el servidor.

Parámetros de consulta

page
integer opcional
1

Número de página (empieza en 1).

per_page
integer opcional
25

Filas por página (1–100, por defecto 25).

status
string opcional
active

Filtra por estado: active o triggered.

direction
string opcional
above

Filtra por dirección de disparo: above o below.

notification
string opcional
email

Filtra por canal de entrega: email, push o webhook.

Petición GET: sin cuerpo de petición.

Petición

curl --request GET \
    --get "https://bitculator.com/api/v1/alarms?page=1&per_page=25&status=active&direction=above&notification=email" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Crear una alarma

Free

Crea una alarma de tipo TARGET sobre una moneda y gasta un espacio de alarma del saldo del propietario de la clave. El objetivo se comprueba contra el valor actual de la moneda para que la alarma no pueda autoactivarse al instante: una alarma above debe fijar un objetivo mayor que el valor actual, y una alarma below menor.

POST
https://bitculator.com/api/v1/alarms
Bearer
bc_••••••••••••••••

Las claves son solo Bearer y tienen la habilidad data-api: mantenlas en el servidor.

Parámetros del cuerpo

name
string obligatorio
BTC six figures

Una etiqueta para la alarma (máx. 255 caracteres).

coin
string obligatorio
bitcoin

El identificador slug de la moneda.

metric
string obligatorio
rate

La métrica vigilada: rate, volume o marketcap.

direction
string obligatorio
above

Dirección de disparo: above o below.

target
number obligatorio
100000

El valor umbral (debe situarse en el lado direction respecto al valor actual de la moneda).

notification
string obligatorio
email

Canal de entrega: email, push o webhook.

Petición

curl --request POST \
    "https://bitculator.com/api/v1/alarms" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"BTC six figures\",
    \"coin\": \"bitcoin\",
    \"metric\": \"rate\",
    \"direction\": \"above\",
    \"target\": 100000,
    \"notification\": \"email\"
}"

Eliminar una alarma

Free

Elimina una de las alarmas del propietario de la clave y reembolsa el espacio de alarma que consumió.

DELETE
https://bitculator.com/api/v1/alarms/{id}
Bearer
bc_••••••••••••••••

Las claves son solo Bearer y tienen la habilidad data-api: mantenlas en el servidor.

Parámetros de ruta

id
integer obligatorio
42

El id de la alarma.

Petición

curl --request DELETE \
    "https://bitculator.com/api/v1/alarms/42" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
5 endpoints

Webhooks

Bitculator envía por POST cada evento como JSON con una cabecera de firma HMAC:

X-Bitculator-Signature: t=<unix-ts>,v1=<hex hmac_sha256("<ts>.<raw-body>", secret)>
X-Bitculator-Event: alarm.triggered

Verifícala recalculando el HMAC sobre "." con el secreto de tu endpoint y comparando en tiempo constante; recházala si t tiene más de unos pocos minutos (protección contra repetición). Ejemplo (PHP):

[$t, $v1] = sscanf($_SERVER['HTTP_X_BITCULATOR_SIGNATURE'], 't=%d,v1=%s');
$expected = hash_hmac('sha256', $t.'.'.file_get_contents('php://input'), $secret);
abort_unless(hash_equals($expected, $v1) && abs(time() - $t) < 300, 403);

Eventos soportados: alarm.triggered. Las entregas se reintentan 3× con backoff; un endpoint se deshabilita automáticamente tras 10 entregas fallidas consecutivas.

Listar endpoints de webhook

Free

Los endpoints de webhook del propietario de la clave, más recientes primero. Los secretos de firma nunca se incluyen: cada secreto se muestra exactamente una vez, en la creación.

GET
https://bitculator.com/api/v1/webhooks
Bearer
bc_••••••••••••••••

Las claves son solo Bearer y tienen la habilidad data-api: mantenlas en el servidor.

Petición GET: sin cuerpo de petición.

Petición

curl --request GET \
    --get "https://bitculator.com/api/v1/webhooks" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Crear un endpoint de webhook

Free

Registra un endpoint HTTPS (máx. 5 por cuenta) para las entregas de eventos. La respuesta incluye el secret de firma: la ÚNICA vez que se muestra, así que guárdalo de inmediato.

POST
https://bitculator.com/api/v1/webhooks
Bearer
bc_••••••••••••••••

Las claves son solo Bearer y tienen la habilidad data-api: mantenlas en el servidor.

Parámetros del cuerpo

url
string obligatorio
https://example.com/webhooks/bitculator

La URL HTTPS de entrega. Solo hosts públicos: se rechazan las direcciones internas/privadas.

events
string[] obligatorio
["alarm.triggered"]

Eventos a los que suscribirse. Valores permitidos: alarm.triggered.

Petición

curl --request POST \
    "https://bitculator.com/api/v1/webhooks" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"url\": \"https:\\/\\/example.com\\/webhooks\\/bitculator\",
    \"events\": [
        \"alarm.triggered\"
    ]
}"

Eliminar un endpoint de webhook

Free

Elimina uno de los endpoints de webhook del propietario de la clave. Las entregas pendientes hacia él se abandonan.

DELETE
https://bitculator.com/api/v1/webhooks/{id}
Bearer
bc_••••••••••••••••

Las claves son solo Bearer y tienen la habilidad data-api: mantenlas en el servidor.

Parámetros de ruta

id
integer obligatorio
7

El id del endpoint de webhook.

Petición

curl --request DELETE \
    "https://bitculator.com/api/v1/webhooks/7" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Enviar un evento de prueba

Free

Dispara un evento de prueba alarm.triggered firmado (test: true en la carga útil, cabeceras de firma reales) para que los receptores puedan verificarse de extremo a extremo.

POST
https://bitculator.com/api/v1/webhooks/{id}/test
Bearer
bc_••••••••••••••••

Las claves son solo Bearer y tienen la habilidad data-api: mantenlas en el servidor.

Parámetros de ruta

id
integer obligatorio
7

El id del endpoint de webhook.

Petición

curl --request POST \
    "https://bitculator.com/api/v1/webhooks/7/test" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Registro de entregas de webhook

Free

Los intentos de entrega del endpoint (conservados 30 días), más recientes primero, paginados.

GET
https://bitculator.com/api/v1/webhooks/{id}/deliveries
Bearer
bc_••••••••••••••••

Las claves son solo Bearer y tienen la habilidad data-api: mantenlas en el servidor.

Parámetros de ruta

id
integer obligatorio
7

El id del endpoint de webhook.

Parámetros de consulta

page
integer opcional
1

Número de página (empieza en 1).

per_page
integer opcional
25

Filas por página (1–100, por defecto 25).

Petición GET: sin cuerpo de petición.

Petición

curl --request GET \
    --get "https://bitculator.com/api/v1/webhooks/7/deliveries?page=1&per_page=25" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
3 endpoints

Meta

Meta e introspección de la API: un ping autenticado para verificar una clave y la pila de middleware, el uso/cuota de la clave actual y la especificación OpenAPI legible por máquina.

Especificación OpenAPI

Free

El documento OpenAPI 3 legible por máquina para esta API, en JSON: apunta tu generador de código o tus herramientas de API a esta URL. Público: no requiere clave.

GET
https://bitculator.com/api/v1/openapi.json
Bearer
bc_••••••••••••••••

Las claves son solo Bearer y tienen la habilidad data-api: mantenlas en el servidor.

Petición GET: sin cuerpo de petición.

Petición

curl --request GET \
    --get "https://bitculator.com/api/v1/openapi.json" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Ping

Free

Una operación autenticada sin efecto para verificar de extremo a extremo una clave de la Data API (auth.api → límite de ráfaga por plan → cuota mensual). Cuenta para la cuota como cualquier otra llamada.

GET
https://bitculator.com/api/v1/ping
Bearer
bc_••••••••••••••••

Las claves son solo Bearer y tienen la habilidad data-api: mantenlas en el servidor.

Petición GET: sin cuerpo de petición.

Petición

curl --request GET \
    --get "https://bitculator.com/api/v1/ping" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Uso y cuota de la clave

Free

Introspección de uso para el propietario de la clave que llama: el plan de la Data API, su límite mensual, usado y restante (siempre coincidiendo con las cabeceras X-Quota-*), la ventana del periodo actual, y desgloses por endpoint / por token. El uso de los widgets embebidos tiene su propio plan y fondo: nunca aparece aquí.

GET
https://bitculator.com/api/v1/usage
Bearer
bc_••••••••••••••••

Las claves son solo Bearer y tienen la habilidad data-api: mantenlas en el servidor.

Petición GET: sin cuerpo de petición.

Petición

curl --request GET \
    --get "https://bitculator.com/api/v1/usage" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"