API
Datos de mercado
Datos públicos de mercado de Seeryx por REST: mercados, la ronda en vivo, historial de rondas, libros de órdenes, operaciones, volumen y mercados de eventos.
Descripción general
Todos los endpoints de datos de mercado son públicos: sin inicio de sesión ni clave. Las respuestas son JSON; los precios están en centavos y los tamaños, en acciones.
| Quieres | Llamada |
|---|---|
| Todos los mercados cripto con su ronda en vivo y sus mejores precios, en una sola solicitud | GET /api/markets/summary |
| La ronda en vivo de un mercado | GET /api/markets/BTC/5m/current |
| Una ronda por slug, pasada, en vivo o próxima | GET /api/rounds/:slug |
| El libro completo de un mercado | GET /api/orderbook/:slug?side=up |
| Las operaciones a medida que ocurren | Suscripción a una ronda por WebSocket; GET /api/trades/:slug para ponerte al día |
| Los mercados de eventos y sus preguntas | GET /api/events, GET /api/event-groups |
Mercados y rondas
Los mercados cripto y sus rondas. Las rondas se leen por mercado (la ronda en vivo, el historial de rondas liquidadas) o por slug.
/api/marketsTodos los mercados cripto
curl "https://seeryx.com/api/markets"[{ "asset": "BTC", "tf": "5m", "symbol": "BTCUSDT", "duration": 300, "liquidityRewards": true },
{ "asset": "BTC", "tf": "1h", "symbol": "BTCUSDT", "duration": 3600, "liquidityRewards": false },
{ "asset": "BTC", "tf": "1d", "symbol": "BTCUSDT", "duration": 86400, "liquidityRewards": false }, ...]- duration es la duración de la ronda en segundos; symbol, el par de Binance cuyo precio decide las rondas. liquidityRewards: las órdenes en el libro de este mercado ganan puntos de liquidez (consulta Bot de creación de mercado).
/api/markets/upcomingMercados anunciados que aún no se operan
curl "https://seeryx.com/api/markets/upcoming"[{ "asset": "BTC", "tf": "1d", "opensAt": 1791993600 }]- Un mercado aparece en GET /api/markets a partir de su primera ronda; hasta entonces figura aquí con el inicio de esa ronda. Normalmente está vacío.
/api/markets/summaryTodos los mercados a la vez: ronda en vivo, mejores precios, últimos resultados
curl "https://seeryx.com/api/markets/summary"{ "at": 1791915884702, "markets": [{ "asset": "BTC", "tf": "5m",
"round": { "slug": "btc-updown-5m-1791915600", "asset": "BTC", "tf": "5m", "start": 1791915600, "end": 1791915900, "open": 83189.47, "close": null, "outcome": null, "status": "live" },
"up": { "bid": [52, 120], "ask": [54, 80] }, "down": { "bid": [46, 80], "ask": [48, 120] },
"last": [{ "start": 1791915300, "end": 1791915600, "outcome": "up" }, ...] }, ...] }- La mejor compra y la mejor venta de cada lado como [centavos, acciones], null cuando ese lado está vacío, y las últimas 5 rondas liquidadas, de la más reciente a la más antigua. Se actualiza como máximo una vez por segundo: consulta esto en lugar de un libro por mercado.
/api/markets/:asset/:tf/currentLa ronda en vivo de un mercado
| Campo | Tipo | Descripción |
|---|---|---|
asset | BTC | ETH | BNB | En mayúsculas o minúsculas |
tf | 5m | 15m | 1h | 1d | Duración de la ronda |
curl "https://seeryx.com/api/markets/BTC/5m/current"{ "slug": "btc-updown-5m-1791916200", "asset": "BTC", "tf": "5m", "start": 1791916200, "end": 1791916500,
"open": 83082.005, "close": null, "outcome": null, "status": "live" }- Una ronda pasada su final sigue "live" con outcome null hasta que se guarda su precio de cierre, normalmente en segundos: comprueba end y no des por hecho que todavía se opera.
| Estado | Cuándo |
|---|---|
| 404 | No existe ese mercado |
/api/markets/:asset/:tf/roundsRondas liquidadas de un mercado, de la más reciente a la más antigua
| Campo | Tipo | Descripción |
|---|---|---|
asset | BTC | ETH | BNB | En mayúsculas o minúsculas |
tf | 5m | 15m | 1h | 1d | Duración de la ronda |
before | number | Rondas que empiezan antes de este momento, en segundos Unix; por defecto, ahora |
limit | number | De 1 a 100, por defecto 24 |
curl "https://seeryx.com/api/markets/BTC/5m/rounds?limit=2"[{ "slug": "btc-updown-5m-1791915600", "asset": "BTC", "tf": "5m", "start": 1791915600, "end": 1791915900, "open": 83189.465, "close": 83133.425, "outcome": "down", "status": "settled" }, ...]- Pasa el inicio de la última ronda como before para obtener la página siguiente. Como máximo 7 días hacia atrás.
| Estado | Cuándo |
|---|---|
| 429 | Demasiadas lecturas del historial desde tu dirección IP; Retry-After indica cuándo volver a intentarlo |
/api/rounds/:slugUna ronda, pasada, en vivo o próxima
| Campo | Tipo | Descripción |
|---|---|---|
slug | string | Un slug de ronda como btc-updown-5m-1791916200, o el slug de un mercado de eventos (ev-...) |
curl "https://seeryx.com/api/rounds/btc-updown-5m-1791916500"{ "slug": "btc-updown-5m-1791916500", "asset": "BTC", "tf": "5m", "start": 1791916500, "end": 1791916800, "open": null, "close": null, "outcome": null, "status": "upcoming" }- Responde para cada ronda que se opera: la ronda en vivo y las diez siguientes de un mercado de 5m o 15m (la siguiente en 1h y 1d). Un slug de evento responde con la forma de una ronda (tf "event", end = closesAt).
| Estado | Cuándo |
|---|---|
| 400 | "Round too far in future" o "Invalid round slug" |
| 404 | Una ronda pasada que no está guardada |
/api/rounds/:slug/holdersLos mayores tenedores de Sube y de Baja
| Campo | Tipo | Descripción |
|---|---|---|
slug | string | Un slug de ronda como btc-updown-5m-1791916200, o el slug de un mercado de eventos (ev-...) |
curl "https://seeryx.com/api/rounds/btc-updown-5m-1791916200/holders"{ "up": { "count": 2, "holders": [{ "name": "alice", "handle": "alice", "address": "7xKXtg...gAsU", "avatar": null, "shares": 250.5 }] }, "down": { "count": 0, "holders": [] } }- count es el total de cuentas que tienen ese lado; holders, los 50 mayores por acciones. Las posiciones son públicas, como en los perfiles. En caché durante 5 segundos.
/api/rounds/:slug/activityLas últimas 100 operaciones de un mercado, con quién las tomó
| Campo | Tipo | Descripción |
|---|---|---|
slug | string | Un slug de ronda como btc-updown-5m-1791916200, o el slug de un mercado de eventos (ev-...) |
curl "https://seeryx.com/api/rounds/btc-updown-5m-1791916200/activity"[{ "id": 812, "side": "up", "action": "buy", "shares": 20, "price": 47, "time": 1791916330063, "trader": { "name": "alice", "handle": "alice", "address": "7xKXtg...gAsU", "avatar": null }, "tx": "5Kq3...", "txStatus": "confirmed" }]- Las mismas operaciones que /trades/:slug, de la más reciente a la más antigua, cada una con el perfil público de su taker. tx es la transacción de Solana de la operación cuando ya existe, con txStatus pending, confirmed o failed.
Libro de órdenes, operaciones y comisiones
Todos los endpoints de esta sección admiten un slug de ronda o un slug de mercado de eventos.
/api/orderbook/:slugEl libro de órdenes de un lado
| Campo | Tipo | Descripción |
|---|---|---|
slug | string | Un slug de ronda como btc-updown-5m-1791916200, o el slug de un mercado de eventos (ev-...) |
side | up | down | Por defecto, up (en un mercado de eventos, up es SÍ y down es NO) |
curl "https://seeryx.com/api/orderbook/btc-updown-5m-1791916200?side=up"{ "bids": [[17, 5], [16, 5], [15, 5]], "asks": [[26, 5], [27, 5], [28, 5]] }- Los niveles son [precio en centavos, acciones], empezando por el mejor, con todos los niveles del libro. Los libros son simétricos: una compra de Sube a p es una venta de Baja a 100 - p, así que cualquiera de los dos libros muestra todas las órdenes.
/api/trades/:slugLas últimas 100 operaciones, de la más reciente a la más antigua
| Campo | Tipo | Descripción |
|---|---|---|
slug | string | Un slug de ronda como btc-updown-5m-1791916200, o el slug de un mercado de eventos (ev-...) |
curl "https://seeryx.com/api/trades/btc-updown-5m-1791916200"[{ "id": 13, "side": "down", "action": "buy", "shares": 10, "price": 53, "time": 1791916330063 }]- side, action y price (centavos) son los de la orden del taker; time está en milisegundos Unix.
/api/volume/:slugVolumen y número de operaciones
| Campo | Tipo | Descripción |
|---|---|---|
slug | string | Un slug de ronda como btc-updown-5m-1791916200, o el slug de un mercado de eventos (ev-...) |
curl "https://seeryx.com/api/volume/btc-updown-5m-1791916200"{ "volume": 55.845724, "trades": 13 }- volume está en USDC.
/api/feesTasa de comisión taker, reembolso maker y orden mínima
curl "https://seeryx.com/api/fees"{ "rateBps": 700, "rebateBps": 2000, "minOrderShares": 5 }- El taker paga acciones × rateBps/10000 × p × (1 − p), con p el precio en dólares; el maker recupera rebateBps/10000 de esa comisión. Consulta Comisiones.
/api/noticeUn aviso para todos los traders, si lo hay
curl "https://seeryx.com/api/notice"{ "notice": null }- Si no lo hay, { "text": "...", "level": "info" | "warning", "at": <ms> }. Mientras las operaciones están detenidas, las órdenes, divisiones y combinaciones responden 503 trading_halted; las cancelaciones siguen funcionando.
/api/statsVolumen, operaciones y traders de las últimas 24 horas, por mercado y en total
curl "https://seeryx.com/api/stats"{ "volume24h": 41.493814, "trades24h": 16, "traders24h": 3,
"markets": { "btc-5m": { "volume24h": 41.493814, "trades24h": 16, "traders24h": 3 } } }- En caché durante 5 segundos.
Mercados de eventos
Preguntas de Sí o No resueltas a través del Optimistic Oracle de UMA. Un mercado de eventos se opera como una ronda larga: su slug funciona con el libro de órdenes, las operaciones, el volumen, las órdenes y el WebSocket. Up es SÍ y Down es NO.
/api/eventsTodos los mercados de eventos
curl "https://seeryx.com/api/events"[{ "slug": "ev-mlb-ws26-brewers", "groupId": "mlb-world-series-2026", "group": "MLB World Series Champion 2026", "title": "Milwaukee Brewers",
"question": "Will the Milwaukee Brewers win the 2026 World Series?", "rules": "...", "category": "sports",
"closesAt": 1792796400, "createdAt": 1791840170963, "status": "open", "outcome": null, "oracle": { "kind": "uma-oov3", ... } }, ...]- status: open, closed (operaciones terminadas, a la espera de UMA) o resolved; outcome "yes" o "no" una vez resuelto. closesAt (segundos Unix) es cuándo se detienen las operaciones.
/api/events/:slugUn mercado de eventos
| Campo | Tipo | Descripción |
|---|---|---|
slug | string | ev-... |
curl "https://seeryx.com/api/events/ev-mlb-ws26-brewers"{ "slug": "ev-mlb-ws26-brewers", "title": "Milwaukee Brewers", "closesAt": 1792796400, "status": "open", "outcome": null, ... }| Estado | Cuándo |
|---|---|
| 404 | No es un mercado de eventos |
/api/event-groupsPreguntas con sus resultados y precios
| Campo | Tipo | Descripción |
|---|---|---|
category | finance | politics | sports | esports | weather | Opcional |
curl "https://seeryx.com/api/event-groups?category=politics"[{ "id": "us-aliens-2026", "category": "politics", "title": "Will the US confirm that aliens exist before 2027?", "status": "open",
"outcomes": [{ "slug": "ev-us-aliens-dec31", "label": "Before 2027", "closesAt": 1798779540, "status": "open", "outcome": null,
"yes": { "bid": 1, "ask": 5 }, "no": { "bid": 95, "ask": 99 }, "chance": 3, "change24h": null, "history": [[1791830000, 3]] }] }]- Una pregunta agrupa uno o más mercados de eventos (sus resultados). history es una semana de puntos [segundos Unix, centavos].
/api/event-groups/:idUna pregunta con sus resultados
| Campo | Tipo | Descripción |
|---|---|---|
id | string | El id de la pregunta, o el slug de uno de sus resultados |
range | 1h | 1d | 1w | 1m | max | Historial de precios, por defecto 1m |
curl "https://seeryx.com/api/event-groups/us-aliens-2026?range=1w"{ "id": "us-aliens-2026", "title": "Will the US confirm that aliens exist before 2027?", "outcomes": [...], "seriesGroups": [...] }| Estado | Cuándo |
|---|---|
| 404 | Pregunta desconocida |
/api/event-groups/:id/holdersLos mayores tenedores de cada resultado
| Campo | Tipo | Descripción |
|---|---|---|
id | string | El id de la pregunta |
curl "https://seeryx.com/api/event-groups/us-aliens-2026/holders"[{ "slug": "ev-us-aliens-dec31", "label": "Before 2027", "yes": [], "no": [] }]- Las diez mayores posiciones de SÍ y las diez mayores de NO de cada resultado.