Перейти к основному содержимому

Получение событий

Intotes предоставляет несколько эндпоинтов для обнаружения и получения событий прогнозных рынков. Все пути указаны относительно базового URL /api/v1/.

Лента событий (с пагинацией)

Основной способ просмотра событий -- лента с пагинацией. Она возвращает каждое событие вместе с его основным пулом, двумя главными рынками в этом пуле и совокупным объемом.

GET /api/v1/events/feed

Параметры запроса

ПараметрТипОписание
cursorstringНепрозрачный курсор из предыдущего ответа. Опустите для первой страницы.
limitintegerКоличество событий на странице (значение по умолчанию зависит от клиента).
tagsstringТеги через запятую для фильтрации (например, football,crypto).
statusstringФильтр по статусу события (например, active, closed).

Ответ

{
"events": [
{
"event": {
"id": "evt_abc123",
"name": "Will ETH reach $5,000 by June?",
"status": "active",
"tags": ["crypto"],
"created_at": "2026-03-15T10:00:00Z",
"end_date": "2026-06-30T23:59:59Z"
},
"main_pool": {
"id": "pool_xyz",
"event_id": "evt_abc123",
"name": "Main"
},
"markets": [
{
"id": "mkt_001",
"name": "Yes",
"price": 6200
},
{
"id": "mkt_002",
"name": "No",
"price": 3800
}
],
"total_volume": 48500000
}
],
"next_cursor": "eyJpZCI6MTIzfQ==",
"has_more": true
}

Ключевые поля:

  • events[].markets -- два главных рынка по объему внутри основного пула.
  • total_volume -- совокупный объем торгов по всем пулам, в копейках.
  • markets[].price -- текущая рыночная цена по шкале 0--10000 (подробнее см. Цены и вероятности).
  • next_cursor / has_more -- используйте их для пагинации на основе курсора. Передайте next_cursor как параметр cursor в следующем запросе.

Пример пагинации

# Первая страница
curl "https://api.intots.com/api/v1/events/feed?limit=20&status=active"

# Следующая страница
curl "https://api.intots.com/api/v1/events/feed?limit=20&cursor=eyJpZCI6MTIzfQ=="

Одно событие

Получение полных деталей одного события по его ID.

GET /api/v1/events/{id}

Параметры пути

ПараметрТипОписание
idstringID события.

Ответ

Возвращает полный объект события, включая все пулы, рынки, метаданные и критерии разрешения.

curl "https://api.intots.com/api/v1/events/evt_abc123"

Все события (с фильтрацией)

Получение полного списка событий с опциональной серверной фильтрацией. Полезно для админ-панелей или построения пользовательских представлений.

GET /api/v1/events

Этот эндпоинт поддерживает те же параметры фильтрации, что и лента, но возвращает плоский массив без курсорной пагинации. Для пользовательских страниц предпочтительнее эндпоинт ленты.


Поиск событий

Полнотекстовый поиск по названиям событий.

GET /api/v1/search_events

Параметры запроса

ПараметрТипОписание
qstringОбязательно. Поисковый запрос (сопоставляется с названием события).
limitintegerМаксимальное количество результатов (по умолчанию 10).

Пример

curl "https://api.intots.com/api/v1/search_events?q=bitcoin&limit=5"

Возвращает массив подходящих событий, отсортированных по релевантности.


Количество активных лиг

Получение количества активных событий, сгруппированных по спортивной лиге. Полезно для построения навигационных меню или значков категорий.

GET /api/v1/leagues/active-counts

Ответ

[
{ "league_id": "lg_epl", "league_name": "English Premier League", "count": 12 },
{ "league_id": "lg_nba", "league_name": "NBA", "count": 8 }
]

Структура EventWithMainPool

Большинство эндпоинтов списков возвращают события, обернутые в конверт EventWithMainPool:

ПолеТипОписание
eventobjectОсновные поля события (id, название, статус, теги, даты и т.д.).
main_poolobjectОсновной пул ликвидности, прикрепленный к событию.
marketsarrayДо 2 главных рынков внутри основного пула, каждый с текущей price.
total_volumeintegerОбщий объем торгов по всем пулам, в копейках.

Эта структура предоставляет все необходимое для отображения карточки события: название, текущие котировки (через рыночные цены) и популярность (через объем).


Советы

  • Используйте ленту для просмотра. Пагинация на основе курсора эффективна и позволяет избежать проблем с производительностью offset-skip на больших наборах данных.
  • Комбинируйте фильтры tags и status для построения фокусированных представлений (например, все активные крипто-события).
  • Цены -- целые числа 0--10000. Разделите на 100 для отображения как процент вероятности (например, 6200 = 62.00%).
  • Объемы в копейках. Разделите на 100 для отображения в основной валютной единице.