MENU navbar-image

Introduction

Partner JSON API of the Global Sport Systems ecosystem: teams, players, tournaments, games, standings, statistics and photo albums.

The Global Sport Systems API gives partner sites read access to the data of their
leagues: tournaments, schedules, standings, teams, players, statistics and photo albums.

**Every endpoint requires a Bearer token.** There are no public endpoints. Tokens are
issued manually by the GSS team — contact us to get one. Each token is scoped to a set
of leagues and to the data types it may read; requests outside that scope return `404`.

Required headers on every request:

```
Authorization: Bearer <your-token>
Accept: application/json
```

No other headers are needed. All list endpoints are paginated
(`{data, meta.pagination, links}`); errors always come back as
`{"errors": [{"code", "title", "detail", "source"}]}`.

Rate limit is per token (default 600 requests/minute). On `429` check the
`Retry-After` header.

<aside>As you scroll, you'll see code examples for working with the API in different programming languages in the dark area to the right (or as part of the content on mobile).
You can switch the language used with the tabs at the top right (or from the nav menu at the top left on mobile).</aside>

Authenticating requests

To authenticate requests, include an Authorization header with the value "Bearer {YOUR_API_TOKEN}".

All authenticated endpoints are marked with a requires authentication badge in the documentation below.

Tokens are issued manually by the Global Sport Systems team. Contact your GSS manager to get a token for your leagues. Keep the token server-side — never expose it in browser JavaScript.

Endpoints

OPTIONS v1/{any}

requires authentication

Example request:
curl --request OPTIONS \
    "https://api.globalsportsystems.org/v1/|{+-0p" \
    --header "Authorization: Bearer {YOUR_API_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
$url = 'https://api.globalsportsystems.org/v1/|{+-0p';

$ch = curl_init($url);
curl_setopt_array($ch, [
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_TIMEOUT => 30,
    CURLOPT_CUSTOMREQUEST => 'OPTIONS',
    CURLOPT_HTTPHEADER => [
        'Authorization: Bearer {YOUR_API_TOKEN}',
        'Content-Type: application/json',
        'Accept: application/json',
    ],
]);

$response = curl_exec($ch);
$status = curl_getinfo($ch, CURLINFO_RESPONSE_CODE);
curl_close($ch);

$data = json_decode($response, true);
print_r($data);
const url = new URL(
    "https://api.globalsportsystems.org/v1/|{+-0p"
);

const headers = {
    "Authorization": "Bearer {YOUR_API_TOKEN}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};


fetch(url, {
    method: "OPTIONS",
    headers,
}).then(response => response.json());

Request   

OPTIONS v1/{any}

Headers

Authorization        

Example: Bearer {YOUR_API_TOKEN}

Content-Type        

Example: application/json

Accept        

Example: application/json

URL Parameters

any   string     

Example: |{+-0p

Games

Игры турниров доверенных лиг вашего токена.

List games

requires authentication

Example request:
curl --request GET \
    --get "https://api.globalsportsystems.org/v1/games?date_from=2026-01-01&status=finished&per_page=50&page=1" \
    --header "Authorization: Bearer {YOUR_API_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"tournament_id\": 16,
    \"team_id\": 16,
    \"date_from\": \"2026-07-21\",
    \"date_to\": \"2026-07-21\",
    \"per_page\": 22,
    \"page\": 67
}"
$url = 'https://api.globalsportsystems.org/v1/games';
$query = http_build_query([
    'date_from' => '2026-01-01',
    'status' => 'finished',
    'per_page' => 50,
    'page' => 1,
]);
$url .= '?' . $query;

$ch = curl_init($url);
curl_setopt_array($ch, [
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_TIMEOUT => 30,
    CURLOPT_HTTPHEADER => [
        'Authorization: Bearer {YOUR_API_TOKEN}',
        'Content-Type: application/json',
        'Accept: application/json',
    ],
    CURLOPT_POSTFIELDS => json_encode([
        'tournament_id' => 16,
        'team_id' => 16,
        'date_from' => '2026-07-21',
        'date_to' => '2026-07-21',
        'per_page' => 22,
        'page' => 67,
    ]),
]);

$response = curl_exec($ch);
$status = curl_getinfo($ch, CURLINFO_RESPONSE_CODE);
curl_close($ch);

$data = json_decode($response, true);
print_r($data);
const url = new URL(
    "https://api.globalsportsystems.org/v1/games"
);

const params = {
    "date_from": "2026-01-01",
    "status": "finished",
    "per_page": "50",
    "page": "1",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_API_TOKEN}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "tournament_id": 16,
    "team_id": 16,
    "date_from": "2026-07-21",
    "date_to": "2026-07-21",
    "per_page": 22,
    "page": 67
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request   

GET v1/games

Headers

Authorization        

Example: Bearer {YOUR_API_TOKEN}

Content-Type        

Example: application/json

Accept        

Example: application/json

Query Parameters

tournament_id   integer  optional    

Фильтр по турниру.

team_id   integer  optional    

Игры с участием команды.

date_from   string  optional    

date Y-m-d. Example: 2026-01-01

date_to   string  optional    

date Y-m-d.

status   string  optional    

scheduled / live / finished / postponed / cancelled. Example: finished

per_page   integer  optional    

1–100, default 50. Example: 50

page   integer  optional    

Номер страницы. Example: 1

Body Parameters

tournament_id   integer  optional    

Example: 16

team_id   integer  optional    

Example: 16

date_from   string  optional    

Must be a valid date in the format Y-m-d. Example: 2026-07-21

date_to   string  optional    

Must be a valid date in the format Y-m-d. Example: 2026-07-21

status   string  optional    
per_page   integer  optional    

Must be at least 1. Must not be greater than 100. Example: 22

page   integer  optional    

Must be at least 1. Example: 67

Get a game

requires authentication

Example request:
curl --request GET \
    --get "https://api.globalsportsystems.org/v1/games/10134" \
    --header "Authorization: Bearer {YOUR_API_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
$url = 'https://api.globalsportsystems.org/v1/games/10134';

$ch = curl_init($url);
curl_setopt_array($ch, [
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_TIMEOUT => 30,
    CURLOPT_HTTPHEADER => [
        'Authorization: Bearer {YOUR_API_TOKEN}',
        'Content-Type: application/json',
        'Accept: application/json',
    ],
]);

$response = curl_exec($ch);
$status = curl_getinfo($ch, CURLINFO_RESPONSE_CODE);
curl_close($ch);

$data = json_decode($response, true);
print_r($data);
const url = new URL(
    "https://api.globalsportsystems.org/v1/games/10134"
);

const headers = {
    "Authorization": "Bearer {YOUR_API_TOKEN}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};


fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Request   

GET v1/games/{game_id}

Headers

Authorization        

Example: Bearer {YOUR_API_TOKEN}

Content-Type        

Example: application/json

Accept        

Example: application/json

URL Parameters

game_id   integer     

The ID of the game. Example: 10134

game   integer     

ID игры. Example: 9001

Game rosters

requires authentication

Составы обеих команд с per-game статистикой (stats — сырой JSON матча).

Example request:
curl --request GET \
    --get "https://api.globalsportsystems.org/v1/games/10134/roster" \
    --header "Authorization: Bearer {YOUR_API_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
$url = 'https://api.globalsportsystems.org/v1/games/10134/roster';

$ch = curl_init($url);
curl_setopt_array($ch, [
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_TIMEOUT => 30,
    CURLOPT_HTTPHEADER => [
        'Authorization: Bearer {YOUR_API_TOKEN}',
        'Content-Type: application/json',
        'Accept: application/json',
    ],
]);

$response = curl_exec($ch);
$status = curl_getinfo($ch, CURLINFO_RESPONSE_CODE);
curl_close($ch);

$data = json_decode($response, true);
print_r($data);
const url = new URL(
    "https://api.globalsportsystems.org/v1/games/10134/roster"
);

const headers = {
    "Authorization": "Bearer {YOUR_API_TOKEN}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};


fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Request   

GET v1/games/{game_id}/roster

Headers

Authorization        

Example: Bearer {YOUR_API_TOKEN}

Content-Type        

Example: application/json

Accept        

Example: application/json

URL Parameters

game_id   integer     

The ID of the game. Example: 10134

game   integer     

ID игры. Example: 9001

Game events

requires authentication

События игры (голы, штрафы, буллиты, ...) в хронологическом порядке.

Example request:
curl --request GET \
    --get "https://api.globalsportsystems.org/v1/games/10134/events" \
    --header "Authorization: Bearer {YOUR_API_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
$url = 'https://api.globalsportsystems.org/v1/games/10134/events';

$ch = curl_init($url);
curl_setopt_array($ch, [
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_TIMEOUT => 30,
    CURLOPT_HTTPHEADER => [
        'Authorization: Bearer {YOUR_API_TOKEN}',
        'Content-Type: application/json',
        'Accept: application/json',
    ],
]);

$response = curl_exec($ch);
$status = curl_getinfo($ch, CURLINFO_RESPONSE_CODE);
curl_close($ch);

$data = json_decode($response, true);
print_r($data);
const url = new URL(
    "https://api.globalsportsystems.org/v1/games/10134/events"
);

const headers = {
    "Authorization": "Bearer {YOUR_API_TOKEN}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};


fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Request   

GET v1/games/{game_id}/events

Headers

Authorization        

Example: Bearer {YOUR_API_TOKEN}

Content-Type        

Example: application/json

Accept        

Example: application/json

URL Parameters

game_id   integer     

The ID of the game. Example: 10134

game   integer     

ID игры. Example: 9001

Game photo albums

requires authentication

Шорткат для GET /v1/albums?game_id={id}.

Example request:
curl --request GET \
    --get "https://api.globalsportsystems.org/v1/games/10134/albums" \
    --header "Authorization: Bearer {YOUR_API_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"per_page\": 1,
    \"page\": 22
}"
$url = 'https://api.globalsportsystems.org/v1/games/10134/albums';

$ch = curl_init($url);
curl_setopt_array($ch, [
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_TIMEOUT => 30,
    CURLOPT_HTTPHEADER => [
        'Authorization: Bearer {YOUR_API_TOKEN}',
        'Content-Type: application/json',
        'Accept: application/json',
    ],
    CURLOPT_POSTFIELDS => json_encode([
        'per_page' => 1,
        'page' => 22,
    ]),
]);

$response = curl_exec($ch);
$status = curl_getinfo($ch, CURLINFO_RESPONSE_CODE);
curl_close($ch);

$data = json_decode($response, true);
print_r($data);
const url = new URL(
    "https://api.globalsportsystems.org/v1/games/10134/albums"
);

const headers = {
    "Authorization": "Bearer {YOUR_API_TOKEN}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "per_page": 1,
    "page": 22
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request   

GET v1/games/{game_id}/albums

Headers

Authorization        

Example: Bearer {YOUR_API_TOKEN}

Content-Type        

Example: application/json

Accept        

Example: application/json

URL Parameters

game_id   integer     

The ID of the game. Example: 10134

game   integer     

ID игры. Example: 9001

Query Parameters

per_page   integer  optional    

1–100, default 50.

page   integer  optional    

Номер страницы.

Body Parameters

per_page   integer  optional    

Must be at least 1. Must not be greater than 100. Example: 1

page   integer  optional    

Must be at least 1. Example: 22

Leagues

Сводные сезонные данные доверенных лиг вашего токена.

League season standings

requires authentication

Сводная таблица команд лиги за сезон (по возрастным категориям), из сезонного агрегата league_stats_team_season.

Example request:
curl --request GET \
    --get "https://api.globalsportsystems.org/v1/leagues/1008/standings" \
    --header "Authorization: Bearer {YOUR_API_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"season_id\": 16
}"
$url = 'https://api.globalsportsystems.org/v1/leagues/1008/standings';

$ch = curl_init($url);
curl_setopt_array($ch, [
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_TIMEOUT => 30,
    CURLOPT_HTTPHEADER => [
        'Authorization: Bearer {YOUR_API_TOKEN}',
        'Content-Type: application/json',
        'Accept: application/json',
    ],
    CURLOPT_POSTFIELDS => json_encode([
        'season_id' => 16,
    ]),
]);

$response = curl_exec($ch);
$status = curl_getinfo($ch, CURLINFO_RESPONSE_CODE);
curl_close($ch);

$data = json_decode($response, true);
print_r($data);
const url = new URL(
    "https://api.globalsportsystems.org/v1/leagues/1008/standings"
);

const headers = {
    "Authorization": "Bearer {YOUR_API_TOKEN}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "season_id": 16
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request   

GET v1/leagues/{league_id}/standings

Headers

Authorization        

Example: Bearer {YOUR_API_TOKEN}

Content-Type        

Example: application/json

Accept        

Example: application/json

URL Parameters

league_id   integer     

The ID of the league. Example: 1008

league   integer     

ID лиги. Example: 1132

Query Parameters

season_id   integer  optional    

ID сезона (default — свежий сезон с данными).

Body Parameters

season_id   integer  optional    

Example: 16

League season leaders

requires authentication

Top scorers и top goalies лиги за сезон (league_stats_player / goalie).

Example request:
curl --request GET \
    --get "https://api.globalsportsystems.org/v1/leagues/1008/stats?limit=10" \
    --header "Authorization: Bearer {YOUR_API_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"season_id\": 16,
    \"limit\": 22
}"
$url = 'https://api.globalsportsystems.org/v1/leagues/1008/stats';
$query = http_build_query([
    'limit' => 10,
]);
$url .= '?' . $query;

$ch = curl_init($url);
curl_setopt_array($ch, [
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_TIMEOUT => 30,
    CURLOPT_HTTPHEADER => [
        'Authorization: Bearer {YOUR_API_TOKEN}',
        'Content-Type: application/json',
        'Accept: application/json',
    ],
    CURLOPT_POSTFIELDS => json_encode([
        'season_id' => 16,
        'limit' => 22,
    ]),
]);

$response = curl_exec($ch);
$status = curl_getinfo($ch, CURLINFO_RESPONSE_CODE);
curl_close($ch);

$data = json_decode($response, true);
print_r($data);
const url = new URL(
    "https://api.globalsportsystems.org/v1/leagues/1008/stats"
);

const params = {
    "limit": "10",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_API_TOKEN}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "season_id": 16,
    "limit": 22
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request   

GET v1/leagues/{league_id}/stats

Headers

Authorization        

Example: Bearer {YOUR_API_TOKEN}

Content-Type        

Example: application/json

Accept        

Example: application/json

URL Parameters

league_id   integer     

The ID of the league. Example: 1008

league   integer     

ID лиги. Example: 1132

Query Parameters

season_id   integer  optional    

ID сезона (default — свежий сезон с данными).

limit   integer  optional    

1–50, default 10. Example: 10

Body Parameters

season_id   integer  optional    

Example: 16

limit   integer  optional    

Must be at least 1. Must not be greater than 50. Example: 22

Photo albums

Фотоальбомы лиг/турниров/игр из scope токена. Фотографии отдаются тремя готовыми URL размеров (thumbnail / medium / large).

List albums

requires authentication

Example request:
curl --request GET \
    --get "https://api.globalsportsystems.org/v1/albums?league_id=1132&per_page=50&page=1" \
    --header "Authorization: Bearer {YOUR_API_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"league_id\": 16,
    \"tournament_id\": 16,
    \"game_id\": 16,
    \"per_page\": 22,
    \"page\": 67
}"
$url = 'https://api.globalsportsystems.org/v1/albums';
$query = http_build_query([
    'league_id' => 1132,
    'per_page' => 50,
    'page' => 1,
]);
$url .= '?' . $query;

$ch = curl_init($url);
curl_setopt_array($ch, [
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_TIMEOUT => 30,
    CURLOPT_HTTPHEADER => [
        'Authorization: Bearer {YOUR_API_TOKEN}',
        'Content-Type: application/json',
        'Accept: application/json',
    ],
    CURLOPT_POSTFIELDS => json_encode([
        'league_id' => 16,
        'tournament_id' => 16,
        'game_id' => 16,
        'per_page' => 22,
        'page' => 67,
    ]),
]);

$response = curl_exec($ch);
$status = curl_getinfo($ch, CURLINFO_RESPONSE_CODE);
curl_close($ch);

$data = json_decode($response, true);
print_r($data);
const url = new URL(
    "https://api.globalsportsystems.org/v1/albums"
);

const params = {
    "league_id": "1132",
    "per_page": "50",
    "page": "1",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_API_TOKEN}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "league_id": 16,
    "tournament_id": 16,
    "game_id": 16,
    "per_page": 22,
    "page": 67
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request   

GET v1/albums

Headers

Authorization        

Example: Bearer {YOUR_API_TOKEN}

Content-Type        

Example: application/json

Accept        

Example: application/json

Query Parameters

league_id   integer  optional    

Фильтр по лиге (из scope токена). Example: 1132

tournament_id   integer  optional    

Фильтр по турниру.

game_id   integer  optional    

Фильтр по игре.

per_page   integer  optional    

1–100, default 50. Example: 50

page   integer  optional    

Номер страницы. Example: 1

Body Parameters

league_id   integer  optional    

Example: 16

tournament_id   integer  optional    

Example: 16

game_id   integer  optional    

Example: 16

per_page   integer  optional    

Must be at least 1. Must not be greater than 100. Example: 22

page   integer  optional    

Must be at least 1. Example: 67

Get an album with photos

requires authentication

Example request:
curl --request GET \
    --get "https://api.globalsportsystems.org/v1/albums/16" \
    --header "Authorization: Bearer {YOUR_API_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
$url = 'https://api.globalsportsystems.org/v1/albums/16';

$ch = curl_init($url);
curl_setopt_array($ch, [
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_TIMEOUT => 30,
    CURLOPT_HTTPHEADER => [
        'Authorization: Bearer {YOUR_API_TOKEN}',
        'Content-Type: application/json',
        'Accept: application/json',
    ],
]);

$response = curl_exec($ch);
$status = curl_getinfo($ch, CURLINFO_RESPONSE_CODE);
curl_close($ch);

$data = json_decode($response, true);
print_r($data);
const url = new URL(
    "https://api.globalsportsystems.org/v1/albums/16"
);

const headers = {
    "Authorization": "Bearer {YOUR_API_TOKEN}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};


fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Request   

GET v1/albums/{album_id}

Headers

Authorization        

Example: Bearer {YOUR_API_TOKEN}

Content-Type        

Example: application/json

Accept        

Example: application/json

URL Parameters

album_id   integer     

The ID of the album. Example: 16

album   integer     

ID альбома. Example: 77

Players

Игроки, заявленные в турнирах доверенных лиг вашего токена. Статистика отдаётся только по этим лигам — чужие лиги игрока не раскрываются.

List players

requires authentication

Example request:
curl --request GET \
    --get "https://api.globalsportsystems.org/v1/players?search=%D0%98%D0%B2%D0%B0%D0%BD%D0%BE%D0%B2&per_page=50&page=1" \
    --header "Authorization: Bearer {YOUR_API_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"search\": \"b\",
    \"team_id\": 16,
    \"birth_year\": 16,
    \"per_page\": 22,
    \"page\": 67
}"
$url = 'https://api.globalsportsystems.org/v1/players';
$query = http_build_query([
    'search' => 'Иванов',
    'per_page' => 50,
    'page' => 1,
]);
$url .= '?' . $query;

$ch = curl_init($url);
curl_setopt_array($ch, [
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_TIMEOUT => 30,
    CURLOPT_HTTPHEADER => [
        'Authorization: Bearer {YOUR_API_TOKEN}',
        'Content-Type: application/json',
        'Accept: application/json',
    ],
    CURLOPT_POSTFIELDS => json_encode([
        'search' => 'b',
        'team_id' => 16,
        'birth_year' => 16,
        'per_page' => 22,
        'page' => 67,
    ]),
]);

$response = curl_exec($ch);
$status = curl_getinfo($ch, CURLINFO_RESPONSE_CODE);
curl_close($ch);

$data = json_decode($response, true);
print_r($data);
const url = new URL(
    "https://api.globalsportsystems.org/v1/players"
);

const params = {
    "search": "Иванов",
    "per_page": "50",
    "page": "1",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_API_TOKEN}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "search": "b",
    "team_id": 16,
    "birth_year": 16,
    "per_page": 22,
    "page": 67
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request   

GET v1/players

Headers

Authorization        

Example: Bearer {YOUR_API_TOKEN}

Content-Type        

Example: application/json

Accept        

Example: application/json

Query Parameters

search   string  optional    

Поиск по фамилии/имени (ru + en). Example: Иванов

team_id   integer  optional    

Только игроки данной команды.

birth_year   integer  optional    

Год рождения.

per_page   integer  optional    

1–100, default 50. Example: 50

page   integer  optional    

Номер страницы. Example: 1

Body Parameters

search   string  optional    

Must not be greater than 100 characters. Example: b

team_id   integer  optional    

Example: 16

birth_year   integer  optional    

Example: 16

per_page   integer  optional    

Must be at least 1. Must not be greater than 100. Example: 22

page   integer  optional    

Must be at least 1. Example: 67

Get a player

requires authentication

Карточка игрока + его команды в рамках доверенных лиг (самая свежая — первой, она же current_team).

Example request:
curl --request GET \
    --get "https://api.globalsportsystems.org/v1/players/1" \
    --header "Authorization: Bearer {YOUR_API_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
$url = 'https://api.globalsportsystems.org/v1/players/1';

$ch = curl_init($url);
curl_setopt_array($ch, [
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_TIMEOUT => 30,
    CURLOPT_HTTPHEADER => [
        'Authorization: Bearer {YOUR_API_TOKEN}',
        'Content-Type: application/json',
        'Accept: application/json',
    ],
]);

$response = curl_exec($ch);
$status = curl_getinfo($ch, CURLINFO_RESPONSE_CODE);
curl_close($ch);

$data = json_decode($response, true);
print_r($data);
const url = new URL(
    "https://api.globalsportsystems.org/v1/players/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_API_TOKEN}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};


fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Request   

GET v1/players/{player_id}

Headers

Authorization        

Example: Bearer {YOUR_API_TOKEN}

Content-Type        

Example: application/json

Accept        

Example: application/json

URL Parameters

player_id   integer     

The ID of the player. Example: 1

player   integer     

ID игрока. Example: 4510

Player aggregated stats

requires authentication

Агрегаты из турнирной и сезонной статистики — только по турнирам и лигам из scope токена.

Example request:
curl --request GET \
    --get "https://api.globalsportsystems.org/v1/players/1/stats" \
    --header "Authorization: Bearer {YOUR_API_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"season_id\": 16
}"
$url = 'https://api.globalsportsystems.org/v1/players/1/stats';

$ch = curl_init($url);
curl_setopt_array($ch, [
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_TIMEOUT => 30,
    CURLOPT_HTTPHEADER => [
        'Authorization: Bearer {YOUR_API_TOKEN}',
        'Content-Type: application/json',
        'Accept: application/json',
    ],
    CURLOPT_POSTFIELDS => json_encode([
        'season_id' => 16,
    ]),
]);

$response = curl_exec($ch);
$status = curl_getinfo($ch, CURLINFO_RESPONSE_CODE);
curl_close($ch);

$data = json_decode($response, true);
print_r($data);
const url = new URL(
    "https://api.globalsportsystems.org/v1/players/1/stats"
);

const headers = {
    "Authorization": "Bearer {YOUR_API_TOKEN}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "season_id": 16
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request   

GET v1/players/{player_id}/stats

Headers

Authorization        

Example: Bearer {YOUR_API_TOKEN}

Content-Type        

Example: application/json

Accept        

Example: application/json

URL Parameters

player_id   integer     

The ID of the player. Example: 1

player   integer     

ID игрока. Example: 4510

Query Parameters

season_id   integer  optional    

Ограничить одним сезоном.

Body Parameters

season_id   integer  optional    

Example: 16

Teams

Команды, участвующие в турнирах доверенных лиг вашего токена.

List teams

requires authentication

Пагинированный список команд в рамках scope токена.

Example request:
curl --request GET \
    --get "https://api.globalsportsystems.org/v1/teams?league_id=1132&search=%D0%A8%D1%83%D1%88%D0%B0%D1%80%D1%8B&per_page=50&page=1" \
    --header "Authorization: Bearer {YOUR_API_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"league_id\": 16,
    \"tournament_id\": 16,
    \"club_id\": 16,
    \"search\": \"n\",
    \"per_page\": 7,
    \"page\": 66
}"
$url = 'https://api.globalsportsystems.org/v1/teams';
$query = http_build_query([
    'league_id' => 1132,
    'search' => 'Шушары',
    'per_page' => 50,
    'page' => 1,
]);
$url .= '?' . $query;

$ch = curl_init($url);
curl_setopt_array($ch, [
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_TIMEOUT => 30,
    CURLOPT_HTTPHEADER => [
        'Authorization: Bearer {YOUR_API_TOKEN}',
        'Content-Type: application/json',
        'Accept: application/json',
    ],
    CURLOPT_POSTFIELDS => json_encode([
        'league_id' => 16,
        'tournament_id' => 16,
        'club_id' => 16,
        'search' => 'n',
        'per_page' => 7,
        'page' => 66,
    ]),
]);

$response = curl_exec($ch);
$status = curl_getinfo($ch, CURLINFO_RESPONSE_CODE);
curl_close($ch);

$data = json_decode($response, true);
print_r($data);
const url = new URL(
    "https://api.globalsportsystems.org/v1/teams"
);

const params = {
    "league_id": "1132",
    "search": "Шушары",
    "per_page": "50",
    "page": "1",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_API_TOKEN}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "league_id": 16,
    "tournament_id": 16,
    "club_id": 16,
    "search": "n",
    "per_page": 7,
    "page": 66
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Example response (200):


{
    "data": [
        {
            "id": 123,
            "slug": "team-a-2010",
            "name": "Команда А",
            "name_en": "Team A",
            "short_name": null,
            "short_name_en": null,
            "team_year": 2010,
            "type": "child",
            "status": "active",
            "sport": {
                "id": 1,
                "key": "hockey",
                "name": "Hockey"
            },
            "club": null,
            "city": {
                "id": 7,
                "name": "Санкт-Петербург",
                "name_en": "Saint Petersburg"
            },
            "logo_url": "https://s3.example/logos/123.webp",
            "created_at": "2025-09-01T10:30:00+00:00",
            "updated_at": "2026-04-10T14:22:15+00:00"
        }
    ],
    "meta": {
        "pagination": {
            "total": 2,
            "count": 1,
            "per_page": 1,
            "current_page": 1,
            "total_pages": 2
        }
    },
    "links": {
        "self": "https://api.globalsportsystems.org/v1/teams?per_page=1",
        "first": "https://api.globalsportsystems.org/v1/teams?per_page=1&page=1",
        "last": "https://api.globalsportsystems.org/v1/teams?per_page=1&page=2",
        "next": "https://api.globalsportsystems.org/v1/teams?per_page=1&page=2",
        "prev": null
    }
}
 

Request   

GET v1/teams

Headers

Authorization        

Example: Bearer {YOUR_API_TOKEN}

Content-Type        

Example: application/json

Accept        

Example: application/json

Query Parameters

league_id   integer  optional    

Фильтр по лиге (должна входить в scope токена). Example: 1132

tournament_id   integer  optional    

Фильтр по турниру.

club_id   integer  optional    

Фильтр по клубу.

search   string  optional    

Поиск по name / name_en / short_name. Example: Шушары

per_page   integer  optional    

1–100, default 50. Example: 50

page   integer  optional    

Номер страницы. Example: 1

Body Parameters

league_id   integer  optional    

Example: 16

tournament_id   integer  optional    

Example: 16

club_id   integer  optional    

Example: 16

search   string  optional    

Must not be greater than 100 characters. Example: n

per_page   integer  optional    

Must be at least 1. Must not be greater than 100. Example: 7

page   integer  optional    

Must be at least 1. Example: 66

Get a team

requires authentication

Example request:
curl --request GET \
    --get "https://api.globalsportsystems.org/v1/teams/1" \
    --header "Authorization: Bearer {YOUR_API_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
$url = 'https://api.globalsportsystems.org/v1/teams/1';

$ch = curl_init($url);
curl_setopt_array($ch, [
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_TIMEOUT => 30,
    CURLOPT_HTTPHEADER => [
        'Authorization: Bearer {YOUR_API_TOKEN}',
        'Content-Type: application/json',
        'Accept: application/json',
    ],
]);

$response = curl_exec($ch);
$status = curl_getinfo($ch, CURLINFO_RESPONSE_CODE);
curl_close($ch);

$data = json_decode($response, true);
print_r($data);
const url = new URL(
    "https://api.globalsportsystems.org/v1/teams/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_API_TOKEN}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};


fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Request   

GET v1/teams/{team_id}

Headers

Authorization        

Example: Bearer {YOUR_API_TOKEN}

Content-Type        

Example: application/json

Accept        

Example: application/json

URL Parameters

team_id   integer     

The ID of the team. Example: 1

team   integer     

ID команды. Example: 123

Team roster with basic stats

requires authentication

Состав команды в сезоне (default — текущий) в рамках доверенных лиг, с базовой статистикой из турнирных агрегатов.

Example request:
curl --request GET \
    --get "https://api.globalsportsystems.org/v1/teams/1/players" \
    --header "Authorization: Bearer {YOUR_API_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"season_id\": 16
}"
$url = 'https://api.globalsportsystems.org/v1/teams/1/players';

$ch = curl_init($url);
curl_setopt_array($ch, [
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_TIMEOUT => 30,
    CURLOPT_HTTPHEADER => [
        'Authorization: Bearer {YOUR_API_TOKEN}',
        'Content-Type: application/json',
        'Accept: application/json',
    ],
    CURLOPT_POSTFIELDS => json_encode([
        'season_id' => 16,
    ]),
]);

$response = curl_exec($ch);
$status = curl_getinfo($ch, CURLINFO_RESPONSE_CODE);
curl_close($ch);

$data = json_decode($response, true);
print_r($data);
const url = new URL(
    "https://api.globalsportsystems.org/v1/teams/1/players"
);

const headers = {
    "Authorization": "Bearer {YOUR_API_TOKEN}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "season_id": 16
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request   

GET v1/teams/{team_id}/players

Headers

Authorization        

Example: Bearer {YOUR_API_TOKEN}

Content-Type        

Example: application/json

Accept        

Example: application/json

URL Parameters

team_id   integer     

The ID of the team. Example: 1

team   integer     

ID команды. Example: 123

Query Parameters

season_id   integer  optional    

ID сезона (default — текущий).

Body Parameters

season_id   integer  optional    

Example: 16

Tournaments

Турниры доверенных лиг вашего токена.

List tournaments

requires authentication

Example request:
curl --request GET \
    --get "https://api.globalsportsystems.org/v1/tournaments?league_id=1132&status=active&per_page=50&page=1" \
    --header "Authorization: Bearer {YOUR_API_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"league_id\": 16,
    \"season_id\": 16,
    \"search\": \"n\",
    \"per_page\": 7,
    \"page\": 66
}"
$url = 'https://api.globalsportsystems.org/v1/tournaments';
$query = http_build_query([
    'league_id' => 1132,
    'status' => 'active',
    'per_page' => 50,
    'page' => 1,
]);
$url .= '?' . $query;

$ch = curl_init($url);
curl_setopt_array($ch, [
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_TIMEOUT => 30,
    CURLOPT_HTTPHEADER => [
        'Authorization: Bearer {YOUR_API_TOKEN}',
        'Content-Type: application/json',
        'Accept: application/json',
    ],
    CURLOPT_POSTFIELDS => json_encode([
        'league_id' => 16,
        'season_id' => 16,
        'search' => 'n',
        'per_page' => 7,
        'page' => 66,
    ]),
]);

$response = curl_exec($ch);
$status = curl_getinfo($ch, CURLINFO_RESPONSE_CODE);
curl_close($ch);

$data = json_decode($response, true);
print_r($data);
const url = new URL(
    "https://api.globalsportsystems.org/v1/tournaments"
);

const params = {
    "league_id": "1132",
    "status": "active",
    "per_page": "50",
    "page": "1",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_API_TOKEN}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "league_id": 16,
    "season_id": 16,
    "search": "n",
    "per_page": 7,
    "page": 66
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request   

GET v1/tournaments

Headers

Authorization        

Example: Bearer {YOUR_API_TOKEN}

Content-Type        

Example: application/json

Accept        

Example: application/json

Query Parameters

league_id   integer  optional    

Фильтр по лиге (из scope токена). Example: 1132

season_id   integer  optional    

Фильтр по сезону.

status   string  optional    

draft / active / finished / archived. Example: active

search   string  optional    

Поиск по названию.

per_page   integer  optional    

1–100, default 50. Example: 50

page   integer  optional    

Номер страницы. Example: 1

Body Parameters

league_id   integer  optional    

Example: 16

season_id   integer  optional    

Example: 16

status   string  optional    
search   string  optional    

Must not be greater than 100 characters. Example: n

per_page   integer  optional    

Must be at least 1. Must not be greater than 100. Example: 7

page   integer  optional    

Must be at least 1. Example: 66

Get a tournament

requires authentication

Мета турнира + команды-участники + список этапов.

Example request:
curl --request GET \
    --get "https://api.globalsportsystems.org/v1/tournaments/10565" \
    --header "Authorization: Bearer {YOUR_API_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
$url = 'https://api.globalsportsystems.org/v1/tournaments/10565';

$ch = curl_init($url);
curl_setopt_array($ch, [
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_TIMEOUT => 30,
    CURLOPT_HTTPHEADER => [
        'Authorization: Bearer {YOUR_API_TOKEN}',
        'Content-Type: application/json',
        'Accept: application/json',
    ],
]);

$response = curl_exec($ch);
$status = curl_getinfo($ch, CURLINFO_RESPONSE_CODE);
curl_close($ch);

$data = json_decode($response, true);
print_r($data);
const url = new URL(
    "https://api.globalsportsystems.org/v1/tournaments/10565"
);

const headers = {
    "Authorization": "Bearer {YOUR_API_TOKEN}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};


fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Request   

GET v1/tournaments/{tournament_id}

Headers

Authorization        

Example: Bearer {YOUR_API_TOKEN}

Content-Type        

Example: application/json

Accept        

Example: application/json

URL Parameters

tournament_id   integer     

The ID of the tournament. Example: 10565

tournament   integer     

ID турнира. Example: 45

Tournament table (standings)

requires authentication

Турнирная таблица по этапам — тот же агрегат, что и на публичных порталах (пересчитывается кроном после каждого матча).

Example request:
curl --request GET \
    --get "https://api.globalsportsystems.org/v1/tournaments/10565/table" \
    --header "Authorization: Bearer {YOUR_API_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
$url = 'https://api.globalsportsystems.org/v1/tournaments/10565/table';

$ch = curl_init($url);
curl_setopt_array($ch, [
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_TIMEOUT => 30,
    CURLOPT_HTTPHEADER => [
        'Authorization: Bearer {YOUR_API_TOKEN}',
        'Content-Type: application/json',
        'Accept: application/json',
    ],
]);

$response = curl_exec($ch);
$status = curl_getinfo($ch, CURLINFO_RESPONSE_CODE);
curl_close($ch);

$data = json_decode($response, true);
print_r($data);
const url = new URL(
    "https://api.globalsportsystems.org/v1/tournaments/10565/table"
);

const headers = {
    "Authorization": "Bearer {YOUR_API_TOKEN}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};


fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());

Example response (200):


{
    "data": {
        "tournament": {
            "id": 45,
            "slug": "allowed-cup",
            "name": "Кубок",
            "name_en": "Cup"
        },
        "stages": [
            {
                "id": 3,
                "name": "Группа А",
                "name_en": "Group A",
                "type": "round-robin",
                "sort_order": 1,
                "standings": [
                    {
                        "position": 1,
                        "team": {
                            "id": 11,
                            "team_id": 123,
                            "name": "Команда А",
                            "name_en": "Team A",
                            "short_name": null,
                            "short_name_en": null,
                            "additional_name": null,
                            "display_name": "Команда А",
                            "logo_url": "https://s3.example/logos/123.webp",
                            "is_placeholder": false,
                            "is_out_of_standings": false,
                            "final_position": null
                        },
                        "games_played": 5,
                        "wins_total": 4,
                        "wins": 4,
                        "wins_ot": 0,
                        "wins_so": 0,
                        "draws": 0,
                        "losses_total": 1,
                        "losses": 1,
                        "losses_ot": 0,
                        "losses_so": 0,
                        "scores_for": 20,
                        "scores_against": 8,
                        "points": 8
                    }
                ]
            }
        ]
    }
}
 

Request   

GET v1/tournaments/{tournament_id}/table

Headers

Authorization        

Example: Bearer {YOUR_API_TOKEN}

Content-Type        

Example: application/json

Accept        

Example: application/json

URL Parameters

tournament_id   integer     

The ID of the tournament. Example: 10565

tournament   integer     

ID турнира. Example: 45

Tournament schedule

requires authentication

Календарь игр турнира от старых к новым.

Example request:
curl --request GET \
    --get "https://api.globalsportsystems.org/v1/tournaments/10565/schedule" \
    --header "Authorization: Bearer {YOUR_API_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"date_from\": \"2026-07-21\",
    \"date_to\": \"2026-07-21\",
    \"per_page\": 1,
    \"page\": 22
}"
$url = 'https://api.globalsportsystems.org/v1/tournaments/10565/schedule';

$ch = curl_init($url);
curl_setopt_array($ch, [
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_TIMEOUT => 30,
    CURLOPT_HTTPHEADER => [
        'Authorization: Bearer {YOUR_API_TOKEN}',
        'Content-Type: application/json',
        'Accept: application/json',
    ],
    CURLOPT_POSTFIELDS => json_encode([
        'date_from' => '2026-07-21',
        'date_to' => '2026-07-21',
        'per_page' => 1,
        'page' => 22,
    ]),
]);

$response = curl_exec($ch);
$status = curl_getinfo($ch, CURLINFO_RESPONSE_CODE);
curl_close($ch);

$data = json_decode($response, true);
print_r($data);
const url = new URL(
    "https://api.globalsportsystems.org/v1/tournaments/10565/schedule"
);

const headers = {
    "Authorization": "Bearer {YOUR_API_TOKEN}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "date_from": "2026-07-21",
    "date_to": "2026-07-21",
    "per_page": 1,
    "page": 22
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request   

GET v1/tournaments/{tournament_id}/schedule

Headers

Authorization        

Example: Bearer {YOUR_API_TOKEN}

Content-Type        

Example: application/json

Accept        

Example: application/json

URL Parameters

tournament_id   integer     

The ID of the tournament. Example: 10565

tournament   integer     

ID турнира. Example: 45

Query Parameters

date_from   string  optional    

date Y-m-d.

date_to   string  optional    

date Y-m-d.

status   string  optional    

scheduled / live / finished / postponed / cancelled.

per_page   integer  optional    

1–200, default 100.

page   integer  optional    

Номер страницы.

Body Parameters

date_from   string  optional    

Must be a valid date in the format Y-m-d. Example: 2026-07-21

date_to   string  optional    

Must be a valid date in the format Y-m-d. Example: 2026-07-21

status   string  optional    
per_page   integer  optional    

Must be at least 1. Must not be greater than 200. Example: 1

page   integer  optional    

Must be at least 1. Example: 22

Tournament leaders

requires authentication

Top scorers и top goalies из турнирных агрегатов.

Example request:
curl --request GET \
    --get "https://api.globalsportsystems.org/v1/tournaments/10565/stats?limit=10" \
    --header "Authorization: Bearer {YOUR_API_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"limit\": 1
}"
$url = 'https://api.globalsportsystems.org/v1/tournaments/10565/stats';
$query = http_build_query([
    'limit' => 10,
]);
$url .= '?' . $query;

$ch = curl_init($url);
curl_setopt_array($ch, [
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_TIMEOUT => 30,
    CURLOPT_HTTPHEADER => [
        'Authorization: Bearer {YOUR_API_TOKEN}',
        'Content-Type: application/json',
        'Accept: application/json',
    ],
    CURLOPT_POSTFIELDS => json_encode([
        'limit' => 1,
    ]),
]);

$response = curl_exec($ch);
$status = curl_getinfo($ch, CURLINFO_RESPONSE_CODE);
curl_close($ch);

$data = json_decode($response, true);
print_r($data);
const url = new URL(
    "https://api.globalsportsystems.org/v1/tournaments/10565/stats"
);

const params = {
    "limit": "10",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_API_TOKEN}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "limit": 1
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request   

GET v1/tournaments/{tournament_id}/stats

Headers

Authorization        

Example: Bearer {YOUR_API_TOKEN}

Content-Type        

Example: application/json

Accept        

Example: application/json

URL Parameters

tournament_id   integer     

The ID of the tournament. Example: 10565

tournament   integer     

ID турнира. Example: 45

Query Parameters

limit   integer  optional    

1–50, default 10. Example: 10

Body Parameters

limit   integer  optional    

Must be at least 1. Must not be greater than 50. Example: 1

Tournament photo albums

requires authentication

Шорткат для GET /v1/albums?tournament_id={id}.

Example request:
curl --request GET \
    --get "https://api.globalsportsystems.org/v1/tournaments/10565/albums" \
    --header "Authorization: Bearer {YOUR_API_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"per_page\": 1,
    \"page\": 22
}"
$url = 'https://api.globalsportsystems.org/v1/tournaments/10565/albums';

$ch = curl_init($url);
curl_setopt_array($ch, [
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_TIMEOUT => 30,
    CURLOPT_HTTPHEADER => [
        'Authorization: Bearer {YOUR_API_TOKEN}',
        'Content-Type: application/json',
        'Accept: application/json',
    ],
    CURLOPT_POSTFIELDS => json_encode([
        'per_page' => 1,
        'page' => 22,
    ]),
]);

$response = curl_exec($ch);
$status = curl_getinfo($ch, CURLINFO_RESPONSE_CODE);
curl_close($ch);

$data = json_decode($response, true);
print_r($data);
const url = new URL(
    "https://api.globalsportsystems.org/v1/tournaments/10565/albums"
);

const headers = {
    "Authorization": "Bearer {YOUR_API_TOKEN}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "per_page": 1,
    "page": 22
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());

Request   

GET v1/tournaments/{tournament_id}/albums

Headers

Authorization        

Example: Bearer {YOUR_API_TOKEN}

Content-Type        

Example: application/json

Accept        

Example: application/json

URL Parameters

tournament_id   integer     

The ID of the tournament. Example: 10565

tournament   integer     

ID турнира. Example: 45

Query Parameters

per_page   integer  optional    

1–100, default 50.

page   integer  optional    

Номер страницы.

Body Parameters

per_page   integer  optional    

Must be at least 1. Must not be greater than 100. Example: 1

page   integer  optional    

Must be at least 1. Example: 22