Суммарные ожидаемые голы команд, shotmap с координатами и результатом каждого удара, моментум — для глубокого анализа матча.
xG (Expected Goals) — вероятность того, что удар завершится голом, основанная на позиции, части тела, типе ситуации и позиции вратаря. Значение от 0 до 1: у пенальти xG высокий, у удара с острого угла — низкий.
x, y, сторона, минута и результат — shot_type: goal, save, miss, block, postmomentum в ответе события: наглядно показывает, когда команда создавала давление, а когда уступалаtrajectory — ломаная полёта, и goal_mouth_xy — куда именно он пришёл в створ. Хватает, чтобы нарисовать не только точку, но и удар целикомИз базы SportWire: матч #11220580, Российская премьер-лига, 2 августа 2026. Размер точки одинаковый: xG отдельного удара по этому матчу источник не прислал — поле xg у каждого удара пустое, и дорисовывать его мы не будем.
Три типа продуктов, где xG создаёт реальную ценность для пользователей.
Автоматический вывод в матч-карточку:
«xG 0.83:2.1 — Факел Воронеж создал больше моментов, но проиграл 2:3» — матч #11220580 из базы SportWire.
Исторические xG для оценки реального уровня команды — без искажений, которые создаёт счёт. Базис для рейтинговых моделей и рекомендательных систем.
xG сглаживает удачу: в матче #11220580 Факел Воронеж создал 2.1 xG против 0.83 у команды Краснодар, но проиграл 2:3 — по созданию моментов он был сильнее. Используется для оценки недооценённых и переоценённых исходов на дистанции.
Карта ударов живёт отдельным адресом, суммарный xG приходит в статистике матча внутри полного ответа события. Ключ передаётся заголовком, строкой запроса ключи не принимаются.
totals по сторонамstatistics (в нём xG за матч и по таймам), shotmap, momentum — кривая давления, не xGx-api-keyзаголовок запроса, обязательный. Без него ответ 401Других параметров у этих двух адресов нет: карта ударов отдаётся целиком, обеими сторонами, отсортированная по минуте.
$ curl -H "x-api-key: …" \ api.sportwire.ru/v1/event/11220580/shotmap { "event_id": 11220580, "available": true, "count": 24, "totals": { "home": { "shots": 11, "goals": 3, "on_target": 5, "xg": 0 }, "away": { "shots": 13, "goals": 2, "on_target": 3, "xg": 0 } }, "shots": [ { "is_home": true, "player": "Jubal", "minute": 4, "shot_type": "goal", "situation": "set-piece", "body_part": "head", "goal_type": "regular", "xg": null, "xgot": null, "x": 9.9, "y": 54.9, "trajectory": { "start": {"x": 54.9, "y": 9.9}, "end": {"x": 52.8, "y": 0} }, "goal_mouth": "high-right", "goal_mouth_xy": { "x": 0, "y": 47.2, "z": 24.7 } } // … ещё 23 удара ] }
xg и xgot по этому матчу пустые — xG отдельного удара источник не прислал; у матчей, где он есть, в этих полях приходит число, и totals.xg перестаёт быть нулём.Пробный доступ бесплатно. Документация открыта, поддержка на русском.
Ответим в течение рабочего дня. Пробный доступ бесплатно.
Ответим на
в течение рабочего дня.