Войти

Футбол в API

8 303 лиг и турниров, 3 991 556 матчей начиная с 1940 года — самый глубокий вид у нас: только по футболу собираются карта ударов, ход игры по минутам, средние позиции и текстовая трансляция. Ниже — глубина по модулям, настоящий ответ по матчу РПЛ и прямой список того, чего по футболу нет.

Сколько футбола в базе

Числа на 5 августа 2026. Не округлены вверх.

8 303лиг и турниров, у которых есть хотя бы один матч
3 991 556матчей
1940год самого раннего матча
1970с этого года поток становится сплошным

Считаются турниры, у которых в базе есть хотя бы один матч: пустые карточки лиг в счёт не идут. От Лиги чемпионов до региональных дивизионов — какие именно, видно в каталоге по странам. Матчи до 1970 года — это отдельные турниры и сезоны, а не сплошной календарь.

Глубина по модулям

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

МодульМатчейС какого годаЧто внутри
Счёт, тайм за таймом, расписание 3 991 556 1940 у каждого матча в базе
Лента матча 1 762 880 1950 голы, карточки, замены с минутой и игроком
Составы и статистика игроков 630 911 1950 схема, стартовый состав, скамейка, показатели каждого
Статистика матча 618 770 1965 владение, удары, xG, угловые, фолы, передачи — по таймам и итогом
Тренеры 88 004 1950 кто вёл команду в этом матче
Коэффициенты 55 967 2017 линия и цена открытия
Погода на стадионе 35 758 2026 температура, ветер, осадки на час матча
Ход игры по минутам 19 970 2025 перевес по ходу матча точками графика
Карта ударов 19 499 2025 координаты каждого удара и его исход
Средние позиции игроков 19 136 2025 где команда реально играла, а не по схеме на бумаге
Вероятность победы по ходу матча 15 617 2023 как менялись шансы сторон по минутам
Текстовая трансляция 1 395 2026 комментарий по ходу матча, сразу с русским переводом

Верхние строки — то, что есть у миллионов матчей; нижние собираются только последние сезоны и только там, где источник их отдаёт. xG отдельной строки в таблице не имеет: он живёт внутри статистики матча и есть у 123 332 матчей с 2021 года. Коэффициенты в таблице приходят вместе с матчем; отдельно живёт фид букмекерских книг — по футболу на момент замера 1 300 матчей от 14 книг, см. коэффициенты.

Настоящий матч целиком

Не схема и не пример из документации: один запрос к нашему API и то, что он вернул.

Российская премьер-лига · 2-й тур 2 августа 2026 · матч завершён
Краснодар
FC Krasnodar
3:2
Факел Воронеж
Fakel Voronezh
Голы: 4' Жубал 1:0 27' Никита Кривцов 2:0 59' Никита Кривцов 3:0 85' Максим Турищев 3:1 88' Алексей Сутормин 3:2
Ozon Arena, Краснодар · погода на час матча: Ясно, 34.3 °C, ветер 4.3 м/с
21строк ленты матча
139строк статистики
42игроков в составах
24ударов на карте
92точек хода игры
104реплик трансляции

Ответ по этому матчу целиком — 51 полей верхнего уровня и 169 КБ. Реплики трансляции приезжают сразу с русским переводом отдельным полем, оригинал остаётся на месте.

GET /v1/event/11220580 — фрагмент ответа
{
  "id": 11220580,
  "sport": "football",
  "status": "finished",
  "tournament": "Russian Premier League",
  "tournament_ru": "Российская премьер-лига",
  "venue": "Ozon Arena", "venue_city": "Krasnodar",
  "participants": [
    { "name": "FC Krasnodar",
      "name_ru": "Краснодар",
      "side": "home", "score": 3 },
    { "name": "Fakel Voronezh",
      "name_ru": "Факел Воронеж",
      "side": "away", "score": 2 }
  ],
  "incidents": [ /* 21 строк */
    { "minute": 4, "kind": "goal", "side": "home",
      "player_id": 839146, "home_score": 1, "away_score": 0 } ],
  "statistics": [ /* 139 строк */
    { "period": "ALL", "group_name": "Match",
      "stat_key": "expectedGoals", "stat_name": "Expected goals",
      "home_text": "0.83", "away_text": "2.1" } ],
  "lineups": [ /* 42 игроков со схемой и заменами */ ],
  "shotmap": [ /* 24 ударов с координатами */
    { "player": "Jubal", "minute": 4, "shot_type": "goal",
      "situation": "set-piece", "body_part": "head",
      "x": 9.9, "y": 54.9, "xg": null } ],
  "momentum": { "graphPoints": [ /* 92 точек по минутам */ ] },
  "weather": { "temperature_c": 34.3,
      "wind_speed_ms": 4.3, "conditions": "Ясно" }
}

xg у отдельного удара — null: источник его не отдаёт, и мы его не досчитываем. Матчевый xG при этом есть, он строкой в statistics[].

Статистика этого матча, как её отдаёт API

КраснодарпоказательФакел Воронеж
56Владение мячом44
11Удары всего13
5Удары в створ3
0.83xG2.1
2Угловые4
11Фолы10
4Жёлтые карточки0
446Передачи343
377Точные передачи259
2Голевые моменты2

Строки statistics[] с period: "ALL". Те же показатели приезжают отдельно по каждому тайму.

Как забрать футбол

Отдельного «футбольного» API нет: адреса те же, что у остальных видов, вид задаётся параметром.

Матчи за дату

GET /v1/events?sport=football&date=… — расписание и результаты дня по лигам, входящим в ваш доступ.

Один матч со всей деталью

GET /v1/event/{id} — ровно тот ответ, фрагмент которого выше: лента, статистика, составы, карта ударов, ход игры, погода.

Сезон лиги и таблица

GET /v1/tournament/{id}/events и GET /v1/tournament/{id}/standings — все матчи турнира и турнирная таблица.

Живые матчи

GET /v1/live?sport=football, либо подписка на изменения счёта через вебхуки.

Чего по футболу нет

Футбол — самый глубокий вид у нас, но и у него глубина неровная. Где тонко, сказано прямо.

  • Одинаковой глубины во всех лигах и годах. Лента матча есть у 1 762 880 матчей из 3 991 556, статистика — у 618 770. У матча низшего дивизиона за 1970-е остаются счёт, соперники и дата — и это нормальный, а не сломанный ответ.
  • Карты ударов, хода игры и средних позиций у истории. Они собираются с 2025 года и только там, где источник их отдаёт: 19 499 матчей с картой ударов. Задним числом их не добрать.
  • xG у всех матчей. Матчевый xG приходит строкой статистики и есть у 123 332 матчей начиная с 2021 года — это верхние и средние лиги последних сезонов, а не весь архив.
  • xG у отдельного удара. В карте ударов поле xg приходит пустым — источник его не отдаёт, а рисовать своё число мы не будем. Матчевый xG при этом есть.
  • Текстовой трансляции у архива. Она пишется только по идущим матчам, с 2026 года: 1 395 матчей. Прошлые сезоны так не восстановить.
  • Погоды за прошлые годы. Запись делается на час начала матча, поэтому она есть с 2026 года. Архивной погоды к матчам прошлых сезонов нет.
  • Прогноза внутри карточки матча. Модельные вероятности считаются на запрос и в карточке матча не лежат — это отдельный адрес, разбор модели.
  • Архива коэффициентов. Линии книг — то, что открыто сейчас, а не ставки прошлых лет.

Все числа на странице — на 5 августа 2026, посчитаны по нашей базе. Снимок матча 11220580 — ответ нашего API на эту дату.

Покрытие по другим видам

У каждого вида своя глубина и свой разбор — общими словами про «все виды спорта» на эти вопросы не ответить.

Проверьте футбол на своих лигах

Пробный ключ открывает те же адреса, что показаны выше.

Документация
Оплата в рублях Договор с ИП / ООО Пробный доступ бесплатно