API
Рыночные данные
Публичные рыночные данные Seeryx через REST: рынки, текущий раунд, история раундов, стаканы, сделки, объём, событийные рынки и их вопросы.
Обзор
Все эндпоинты рыночных данных публичны: без входа и без ключа. Ответы в JSON; цены в центах, размеры в долях.
| Что нужно | Вызов |
|---|---|
| Все криптовалютные рынки с текущим раундом и лучшими ценами — одним запросом | GET /api/markets/summary |
| Текущий раунд одного рынка | GET /api/markets/BTC/5m/current |
| Раунд по slug: прошедший, текущий или предстоящий | GET /api/rounds/:slug |
| Полный стакан одного рынка | GET /api/orderbook/:slug?side=up |
| Сделки в момент совершения | Подписка на раунд по WebSocket; GET /api/trades/:slug, чтобы наверстать пропущенное |
| Событийные рынки и их вопросы | GET /api/events, GET /api/event-groups |
Рынки и раунды
Криптовалютные рынки и их раунды. Раунды запрашиваются по рынку (текущий, история рассчитанных) или по slug.
/api/marketsВсе криптовалютные рынки
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 — длительность раунда в секундах; symbol — пара Binance, цена которой определяет исход раундов. liquidityRewards: ордера в стакане этого рынка приносят баллы за ликвидность (см. страницу «Бот для маркет-мейкинга»).
/api/markets/upcomingАнонсированные рынки, торги на которых ещё не начались
curl "https://seeryx.com/api/markets/upcoming"[{ "asset": "BTC", "tf": "1d", "opensAt": 1791993600 }]- Рынок появляется в GET /api/markets начиная с первого раунда; до этого он указан здесь вместе с началом этого раунда. Обычно список пуст.
/api/markets/summaryВсе рынки сразу: текущий раунд, лучшие цены, последние результаты
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" }, ...] }, ...] }- Лучшие бид и аск каждой стороны в виде [центы, доли] или null, если сторона пуста, и последние 5 рассчитанных раундов, от новых к старым. Обновляется не чаще раза в секунду: опрашивайте этот эндпоинт, а не стакан каждого рынка.
/api/markets/:asset/:tf/currentТекущий раунд рынка
| Поле | Тип | Описание |
|---|---|---|
asset | BTC | ETH | BNB | В любом регистре |
tf | 5m | 15m | 1h | 1d | Длительность раунда |
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" }- Раунд после своего конца остаётся "live" с outcome null, пока не сохранена цена закрытия, — обычно несколько секунд: проверяйте end и не считайте, что он всё ещё торгуется.
| Статус | Когда |
|---|---|
| 404 | Такого рынка нет |
/api/markets/:asset/:tf/roundsРассчитанные раунды рынка, от новых к старым
| Поле | Тип | Описание |
|---|---|---|
asset | BTC | ETH | BNB | В любом регистре |
tf | 5m | 15m | 1h | 1d | Длительность раунда |
before | number | Раунды, начавшиеся раньше этого момента, секунды Unix; по умолчанию — сейчас |
limit | number | 1–100, по умолчанию 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" }, ...]- Для следующей страницы передайте начало последнего раунда в before. Не более 7 дней назад.
| Статус | Когда |
|---|---|
| 429 | Слишком много запросов истории с вашего IP-адреса; Retry-After указывает, когда повторить |
/api/rounds/:slugОдин раунд: прошедший, текущий или предстоящий
| Поле | Тип | Описание |
|---|---|---|
slug | string | Slug раунда, например btc-updown-5m-1791916200, или slug событийного рынка (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" }- Отвечает для каждого раунда, который торгуется: текущего и следующих десяти для рынка 5m или 15m (следующего одного для 1h и 1d). Для slug события ответ возвращается в форме раунда (tf "event", end = closesAt).
| Статус | Когда |
|---|---|
| 400 | «Round too far in future» или «Invalid round slug» |
| 404 | Прошедший раунд, который не сохранён |
/api/rounds/:slug/holdersКрупнейшие держатели «Вверх» и «Вниз»
| Поле | Тип | Описание |
|---|---|---|
slug | string | Slug раунда, например btc-updown-5m-1791916200, или slug событийного рынка (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 — все аккаунты, держащие эту сторону; holders — 50 крупнейших по числу долей. Позиции публичны, как и в профилях. Кэшируется на 5 секунд.
/api/rounds/:slug/activityПоследние 100 сделок рынка и кто их совершил
| Поле | Тип | Описание |
|---|---|---|
slug | string | Slug раунда, например btc-updown-5m-1791916200, или slug событийного рынка (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" }]- Те же сделки, что и в /trades/:slug, от новых к старым, каждая с публичным профилем тейкера. tx — транзакция Solana сделки, когда она появится, с txStatus pending, confirmed или failed.
Стакан, сделки и комиссии
Каждый эндпоинт здесь принимает slug раунда или событийного рынка.
/api/orderbook/:slugСтакан одной стороны
| Поле | Тип | Описание |
|---|---|---|
slug | string | Slug раунда, например btc-updown-5m-1791916200, или slug событийного рынка (ev-...) |
side | up | down | По умолчанию up (для событийного рынка up — это «Да», down — «Нет») |
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]] }- Уровни в виде [цена в центах, доли], начиная с лучшего, все уровни стакана. Стаканы зеркальны: бид «Вверх» по p — это аск «Вниз» по 100 - p, поэтому любой из стаканов показывает все ордера.
/api/trades/:slugПоследние 100 сделок, от новых к старым
| Поле | Тип | Описание |
|---|---|---|
slug | string | Slug раунда, например btc-updown-5m-1791916200, или slug событийного рынка (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 и price (центы) относятся к ордеру тейкера; time — в миллисекундах Unix.
/api/volume/:slugОбъём и число сделок
| Поле | Тип | Описание |
|---|---|---|
slug | string | Slug раунда, например btc-updown-5m-1791916200, или slug событийного рынка (ev-...) |
curl "https://seeryx.com/api/volume/btc-updown-5m-1791916200"{ "volume": 55.845724, "trades": 13 }- volume — в USDC.
/api/feesРазмер комиссии тейкера, возврат мейкеру и минимальный ордер
curl "https://seeryx.com/api/fees"{ "rateBps": 700, "rebateBps": 2000, "minOrderShares": 5 }- Тейкер платит shares × rateBps/10000 × p × (1 − p), где p — цена в долларах; мейкеру возвращается rebateBps/10000 этой суммы. См. раздел «Комиссии».
/api/noticeОбъявление для всех трейдеров, если оно есть
curl "https://seeryx.com/api/notice"{ "notice": null }- Иначе { "text": "...", "level": "info" | "warning", "at": <ms> }. Пока торговля остановлена, ордера, разделения и объединения получают 503 trading_halted; отмена ордеров работает.
/api/statsОбъём, сделки и трейдеры за 24 часа — по рынкам и в сумме
curl "https://seeryx.com/api/stats"{ "volume24h": 41.493814, "trades24h": 16, "traders24h": 3,
"markets": { "btc-5m": { "volume24h": 41.493814, "trades24h": 16, "traders24h": 3 } } }- Кэшируется на 5 секунд.
Событийные рынки
Вопросы «Да/Нет», разрешаемые через Optimistic Oracle от UMA. Событийный рынок торгуется как один длинный раунд: его slug работает со стаканом, сделками, объёмом, ордерами и WebSocket. Up — это «Да», Down — «Нет».
/api/eventsВсе событийные рынки
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 (торги закончены, ожидается ответ UMA) или resolved; outcome "yes" или "no" после разрешения. closesAt (секунды Unix) — момент остановки торгов.
/api/events/:slugОдин событийный рынок
| Поле | Тип | Описание |
|---|---|---|
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, ... }| Статус | Когда |
|---|---|
| 404 | Это не событийный рынок |
/api/event-groupsВопросы с их исходами и ценами
| Поле | Тип | Описание |
|---|---|---|
category | finance | politics | sports | esports | weather | Необязательно |
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]] }] }]- Вопрос объединяет один или несколько событийных рынков (свои исходы). history — точки [секунды Unix, центы] за неделю.
/api/event-groups/:idОдин вопрос с его исходами
| Поле | Тип | Описание |
|---|---|---|
id | string | Id вопроса или slug одного из его исходов |
range | 1h | 1d | 1w | 1m | max | История цен, по умолчанию 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": [...] }| Статус | Когда |
|---|---|
| 404 | Неизвестный вопрос |
/api/event-groups/:id/holdersКрупнейшие держатели каждого исхода
| Поле | Тип | Описание |
|---|---|---|
id | string | Id вопроса |
curl "https://seeryx.com/api/event-groups/us-aliens-2026/holders"[{ "slug": "ev-us-aliens-dec31", "label": "Before 2027", "yes": [], "no": [] }]- Десять крупнейших позиций «Да» и десять крупнейших позиций «Нет» по каждому исходу.