SportAPI Документация
RU
S Документация продуктаSport Line API
v1
Услуга и цены ↗ Получить доступ ↗
Sport Line API / COUNTRIES — список стран

Метод countries — список стран

Рекомендация: обычно лучше использовать menu

Метод countries возвращает страны только для одного выбранного вида спорта. Эти же страны уже находятся внутри ответа метода menu.

Для обычной интеграции рекомендуется использовать menu, потому что за один запрос он возвращает всю структуру:

вид спорта → страна → турнир

При пошаговой загрузке потребуются отдельные запросы:

1. sports → получить sportId
2. countries → получить countryId
3. tournaments → получить tournamentId
4. events → получить матчи турнира

Метод countries является дополнительным. Используйте его, если страна должна загружаться только после выбора вида спорта или полный ответ menu проекту не нужен. Если после стран всё равно потребуются турниры, удобнее получить всю структуру через menu.

Запрос

GET https://YOUR_API_DOMAIN/v1/countries/{sportId}/{type}/{lang}

API-ключ необходимо передавать в HTTP-заголовке:

Package: YOUR_API_KEY

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

ПараметрТипОбязательныйОписание
sportIdnumberдаID вида спорта, полученный из sports или menu
typestringдаТип спортивной линии: live или line
langstringдаЯзык названий. Язык должен поддерживаться API и входить в тариф клиента

Значения параметра type:

ЗначениеКакие данные возвращаются
liveСтраны, в которых доступны Live-матчи выбранного вида спорта
lineСтраны, в которых доступны Prematch-матчи выбранного вида спорта

Пример запроса Live

В примере используется футбол с sportId=1:

curl --request GET \
  --url 'https://YOUR_API_DOMAIN/v1/countries/1/live/ru' \
  --header 'Package: YOUR_API_KEY'

Пример запроса Prematch

curl --request GET \
  --url 'https://YOUR_API_DOMAIN/v1/countries/1/line/ru' \
  --header 'Package: YOUR_API_KEY'

Сокращённый пример ответа Live

Ниже показан фрагмент реального ответа для футбола. Значения сохранены без изменений, но массив body сокращён до трёх стран.

{
  "status": 1,
  "page": "/v1/countries",
  "body": [
    {
      "id": 1,
      "name": "Россия",
      "sport_id": 1,
      "counter": 1
    },
    {
      "id": 2,
      "name": "Украина",
      "sport_id": 1,
      "counter": 3
    },
    {
      "id": 4,
      "name": "Австралия",
      "sport_id": 1,
      "counter": 8
    }
  ]
}

Сокращённый пример ответа Prematch

Этот фрагмент также взят из реального ответа для футбола. Массив body сокращён.

{
  "status": 1,
  "page": "/v1/countries",
  "body": [
    {
      "id": 1,
      "name": "Россия",
      "sport_id": 1,
      "counter": 86
    },
    {
      "id": 2,
      "name": "Украина",
      "sport_id": 1,
      "counter": 16
    },
    {
      "id": 4,
      "name": "Австралия",
      "sport_id": 1,
      "counter": 104
    }
  ]
}

Значения counter показывают состояние линии только в момент получения ответа и постоянно изменяются.

Поля ответа

Верхний уровень

ПолеТипОписание
statusnumberСтатус выполнения запроса. В успешном ответе возвращается 1
pagestringНазвание метода. Для countries возвращается /v1/countries
bodyarrayМассив доступных стран выбранного вида спорта

Объект страны

ПолеТипОписание
idnumberID страны. Используется как countryId в других методах
namestringНазвание страны на языке, указанном в lang
sport_idnumberID вида спорта, для которого была возвращена страна
counternumberКоличество доступных матчей выбранного спорта в этой стране

Обратите внимание: параметр пути называется sportId, а соответствующее поле в JSON — sport_id.

Готовые иконки стран

Для каждой страны можно использовать стандартную иконку SportAPI. Возьмите значение поля id из ответа и подставьте его вместо {countryId}:

https://cdn.sportapi.net/flags/v1/color/{countryId}.webp

Например, для страны с id: 218:

https://cdn.sportapi.net/flags/v1/color/218.webp

Связь с методом menu

Объекты из массива body метода countries содержат те же основные данные, что и объекты стран внутри menu для выбранного вида спорта.

Полеcountriesmenu
idдада
nameдада
sport_idдада
counterдада
sub с турнираминетда

Если вызвать методы в разное время, состав стран и значения counter могут отличаться, поскольку спортивная линия постоянно изменяется.

Что делать с полученным id

После выбора страны возьмите её поле id. В URL следующего метода этот идентификатор обозначается как countryId.

Чтобы получить турниры выбранной страны, передайте одновременно:

  • sportId выбранного вида спорта;
  • countryId выбранной страны;
  • тот же тип линии live или line.

При использовании menu турниры уже находятся в массиве sub выбранной страны, поэтому дополнительный запрос не требуется.

Не передавайте заранее записанный countryId, не проверив, что страна присутствует в актуальном ответе countries или menu. Страна возвращается только пока в ней есть доступные матчи выбранного вида спорта и типа линии.

Если закончился или исчез единственный матч последнего турнира страны, страна также исчезнет из следующего ответа. При пошаговой навигации передавайте в tournaments только countryId, полученный из актуального ответа countries.

Снимок сохранённых ответов

Во всех примерах использован футбол (sportId=1).

Тип линииРусский ответАнглийский ответ
Live15 стран15 стран
Prematch (line)99 стран99 стран

Это статистика конкретных ответов от 21 августа 2026 года, а не постоянный состав API.

Полные ответы без сокращений:

Файлы содержат только тело ответа API. API-ключ в них не сохраняется.

Частота обновления

Рекомендуется запрашивать countries:

  • Live — не чаще одного раза в 60 секунд;
  • Prematch (line) — не чаще одного раза в 120 секунд.

Подробнее: «Рекомендации по обновлению данных».

Ошибки ключа, тарифа и параметров описаны в документе «Обработка ошибок».