SportAPI Documentation
EN
S Product documentationSport Line API
v1
Service & pricing ↗ Get access ↗
Sport Line API / COUNTRIES — country list

countries Method — Country List

Recommendation: Use menu in Most Cases

The countries method returns countries for only one selected sport. The same countries are already available inside the menu response.

For a standard integration, menu is recommended because one request returns the complete hierarchy:

sport → country → tournament

Step-by-step loading requires separate requests:

1. sports → retrieve sportId
2. countries → retrieve countryId
3. tournaments → retrieve tournamentId
4. events → retrieve tournament matches

The countries method is an additional method. Use it when countries should be loaded only after a sport is selected or the project does not need the complete menu response. If tournaments will still be required after countries, retrieving the full hierarchy through menu is more convenient.

Request

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

Send the API key in the HTTP header:

Package: YOUR_API_KEY

Path Parameters

ParameterTypeRequiredDescription
sportIdnumberyesSport ID obtained from sports or menu
typestringyesSports line type: live or line
langstringyesLanguage of names. It must be supported by the API and included in the client’s subscription

Values of type:

ValueData returned
liveCountries with available Live matches for the selected sport
lineCountries with available Prematch matches for the selected sport

Live Request Example

This example uses football with sportId=1:

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

Prematch Request Example

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

Shortened Live Response Example

The following excerpt comes from a real English football response. The values are unchanged, but the body array has been shortened to three countries.

{
  "status": 1,
  "page": "/v1/countries",
  "body": [
    {
      "id": 4,
      "name": "Australia",
      "sport_id": 1,
      "counter": 8
    },
    {
      "id": 218,
      "name": "Japan",
      "sport_id": 1,
      "counter": 2
    },
    {
      "id": 225,
      "name": "World",
      "sport_id": 1,
      "counter": 24
    }
  ]
}

Shortened Prematch Response Example

This excerpt also comes from a real English football response. The body array has been shortened.

{
  "status": 1,
  "page": "/v1/countries",
  "body": [
    {
      "id": 4,
      "name": "Australia",
      "sport_id": 1,
      "counter": 104
    },
    {
      "id": 218,
      "name": "Japan",
      "sport_id": 1,
      "counter": 30
    },
    {
      "id": 225,
      "name": "World",
      "sport_id": 1,
      "counter": 68
    }
  ]
}

The counter values represent the sports line only at the time of the response and change continuously.

Response Fields

Top-level Fields

FieldTypeDescription
statusnumberRequest status. A successful response returns 1
pagestringMethod name. countries returns /v1/countries
bodyarrayAvailable countries for the selected sport

Country Object

FieldTypeDescription
idnumberCountry ID. Used as countryId in other methods
namestringCountry name in the language specified by lang
sport_idnumberID of the sport for which the country was returned
counternumberNumber of available matches for the selected sport in this country

Note that the path parameter is named sportId, while the corresponding JSON field is named sport_id.

Ready-to-use Country Icons

Each country can use a standard SportAPI icon. Take the id value from the response and insert it in place of {countryId}:

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

Example for a country with id: 218:

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

Relationship with menu

Objects in the countries method’s body array contain the same main data as country objects inside menu for the selected sport.

Fieldcountriesmenu
idyesyes
nameyesyes
sport_idyesyes
counteryesyes
sub with tournamentsnoyes

If the methods are called at different times, the country list and counter values may differ because the sports line changes continuously.

Using the Returned id

After selecting a country, take its id field. This identifier is named countryId in the next method’s URL.

To retrieve tournaments for the selected country, pass all of the following:

  • the selected sport’s sportId;
  • the selected country’s countryId;
  • the same live or line type.

When using menu, the tournaments are already available in the selected country’s sub array, so no additional request is required.

Do not pass a stored countryId without checking that the country is present in the current countries or menu response. A country is returned only while it contains available matches for the selected sport and line type.

If the only match in the country’s last tournament ends or disappears, the country will also be absent from the next response. In step-by-step navigation, pass to tournaments only a countryId obtained from the current countries response.

Snapshot of Saved Responses

All examples use football (sportId=1).

Line typeRussian responseEnglish response
Live15 countries15 countries
Prematch (line)99 countries99 countries

These figures describe specific responses retrieved on August 21, 2026. They are not a permanent description of the API.

Full unabridged responses:

The files contain only API response bodies. No API key is stored in them.

Update Frequency

Recommended request frequency for countries:

  • Live — no more than once every 60 seconds;
  • Prematch (line) — no more than once every 120 seconds.

See Data Update Guidelines for more details.

Key, subscription, and parameter errors are documented in Error Handling.