Обычный REST и предсказуемый JSON: ключ в заголовке, 37 публичных эндпоинта, тестовый ключ без карты и без договора. Ни SOAP, ни собственного протокола.
Конкретные эндпоинты и объёмы. Числа — из базы на 4 августа 2026.
/v1, JSON поверх HTTPSx-api-key — как передаётся ключname_ru,
оригинал остаётся — локализацияПолная карточка матча — 51 поле верхнего уровня и 172 707 байт на конкретном примере ниже.
Тестовый ключ выдаём в день обращения — на нём проверяют форму ответа и наличие своих лиг до любых обязательств.
/v1/participants/search?q=&type=&sport=/v1/sports, /v1/tournaments,
/v1/countries/v1/sync?since_id=…Идентификаторы у нас свои: держите пару «ваш id ↔ наш id», а не переписывайте свои — о переезде.
/v1/events, /v1/event/{id}/v1/stream/replayВстроенные блоки, если фронт делать некогда:
таблица и
тренды в <iframe>.
Три запроса, с которых начинают все: лента за дату, полная карточка матча и поиск команды, чтобы связать свой id с нашим.
Ключ идёт заголовком, тело — обычный JSON. Ничего дополнительно ставить не нужно:
хватает curl.
Для встраивания картинок в <img> ключ можно передать параметром —
отдельная ручка для этого не нужна.
Ниже — curl и тот же запрос на Python. Готовых библиотек-обёрток мы
не поставляем и не обещаем: это обычный HTTP, любой клиент вашего языка подойдёт.
Проверка подписи вебхука разобрана в документации с готовой функцией.
500 запросов в месяц по одному виду спорта, без карты и без договора. Выдаём в день обращения — по заявке с этой страницы.
Этого хватает, чтобы проверить форму ответа и наличие своих лиг до того, как что-то подписывать.
Матч «Краснодар» — «Факел Воронеж», 3:2, Российская премьер-лига, 2 августа 2026. Ответ приходит ровно в такой форме — это не макет.
# 1. матчи одного вида за дату curl -H "x-api-key: ВАШ_КЛЮЧ" \ "https://api.sportwire.ru/v1/events?sport=football&date=2026-08-02&limit=20" # 2. карточка матча целиком — 51 поле верхнего уровня curl -H "x-api-key: ВАШ_КЛЮЧ" \ "https://api.sportwire.ru/v1/event/11220580" # 3. поиск команды, чтобы связать свой id с нашим curl -H "x-api-key: ВАШ_КЛЮЧ" \ "https://api.sportwire.ru/v1/participants/search?q=Krasnodar&type=team" # то же самое на Python import requests r = requests.get( "https://api.sportwire.ru/v1/event/11220580", headers={"x-api-key": "ВАШ_КЛЮЧ"}, timeout=10) ev = r.json() for p in ev["participants"]: print(p["name_ru"], p["score"]) # → Краснодар 3 # → Факел Воронеж 2
401 →
{"detail": "Unauthorized: pass your key in the x-api-key header"}.
Несуществующий матч — 404 и
{"detail": "event not found"}.odds: [], а не
404. Обрабатывайте пустой массив как норму, иначе поймаете ложные
аварии на нишевых лигах.q=Krasnodar вернёт и футбольный клуб,
и гандбольный. Фильтруйте по sport — иначе получите чужой вид
спорта в своей витрине.Дешевле прочитать сейчас, чем узнать на третьей неделе интеграции.
name,
и name_ru; оригинал мы не подменяем./v1/stream
подключаются с Pro; на стартовом остаётся опрос по REST.500 запросов в месяц по одному виду спорта, без карты и без договора. Напишите, какие лиги нужны и куда встраиваете, — ответим в течение рабочего дня.
Ответим в течение рабочего дня. Пробный доступ бесплатно.
Ответим на
в течение рабочего дня.