MENU navbar-image

Introduction

Microsserviço de rankings e métricas de jogos para integração com o ecossistema GameVerse.

Esta API expõe rankings semanais, mensais e anuais, jogos mais jogados, histórico de pontuação e filtros por plataforma.

<aside>Use os exemplos da documentação para demonstrar como o frontend ou outros microsserviços podem consumir os dados de ranking.</aside>

Authenticating requests

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

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

Use um token JWT RS256 emitido pelo serviço de autenticação integrado ao GameVerse.

Rankings

Top semanal

requires authentication

Retorna o ranking dos jogos com melhor desempenho na última semana.

Example request:
curl --request GET \
    --get "http://127.0.0.1:8000/api/v1/rankings/weekly" \
    --header "Authorization: Bearer {YOUR_JWT_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "http://127.0.0.1:8000/api/v1/rankings/weekly"
);

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


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

Example response (200):

Show headers
cache-control: no-cache, private
content-type: application/json
x-ratelimit-limit: 60
x-ratelimit-remaining: 59
access-control-allow-origin: *
 

[
    {
        "id": 11,
        "name": "Apex Legends",
        "platform": "Steam",
        "active_players": 218457,
        "weekly_points": 945,
        "monthly_points": 8776,
        "yearly_points": 56526,
        "created_at": "2026-05-18T21:57:31.000000Z",
        "updated_at": "2026-05-18T21:57:31.000000Z"
    },
    {
        "id": 12,
        "name": "Call of Duty: Warzone",
        "platform": "Battle.net",
        "active_players": 243114,
        "weekly_points": 877,
        "monthly_points": 2426,
        "yearly_points": 36655,
        "created_at": "2026-05-18T21:57:31.000000Z",
        "updated_at": "2026-05-18T21:57:31.000000Z"
    },
    {
        "id": 14,
        "name": "Cyberpunk 2077",
        "platform": "Steam",
        "active_players": 1161973,
        "weekly_points": 874,
        "monthly_points": 4853,
        "yearly_points": 27988,
        "created_at": "2026-05-18T21:57:31.000000Z",
        "updated_at": "2026-05-18T21:57:31.000000Z"
    },
    {
        "id": 8,
        "name": "EA SPORTS FC 24",
        "platform": "Steam",
        "active_players": 398998,
        "weekly_points": 872,
        "monthly_points": 5333,
        "yearly_points": 81468,
        "created_at": "2026-05-18T21:57:31.000000Z",
        "updated_at": "2026-05-18T21:57:31.000000Z"
    },
    {
        "id": 10,
        "name": "League of Legends",
        "platform": "Riot Launcher",
        "active_players": 1166370,
        "weekly_points": 786,
        "monthly_points": 4506,
        "yearly_points": 21445,
        "created_at": "2026-05-18T21:57:31.000000Z",
        "updated_at": "2026-05-18T21:57:31.000000Z"
    },
    {
        "id": 9,
        "name": "Roblox",
        "platform": "Multiplataforma",
        "active_players": 991415,
        "weekly_points": 770,
        "monthly_points": 2080,
        "yearly_points": 22209,
        "created_at": "2026-05-18T21:57:31.000000Z",
        "updated_at": "2026-05-18T21:57:31.000000Z"
    },
    {
        "id": 1,
        "name": "Counter-Strike 2",
        "platform": "Steam",
        "active_players": 1086549,
        "weekly_points": 729,
        "monthly_points": 1215,
        "yearly_points": 71182,
        "created_at": "2026-05-18T21:57:31.000000Z",
        "updated_at": "2026-05-18T21:57:31.000000Z"
    },
    {
        "id": 15,
        "name": "Stardew Valley",
        "platform": "Steam",
        "active_players": 1117483,
        "weekly_points": 702,
        "monthly_points": 7545,
        "yearly_points": 42912,
        "created_at": "2026-05-18T21:57:31.000000Z",
        "updated_at": "2026-05-18T21:57:31.000000Z"
    },
    {
        "id": 2,
        "name": "Elden Ring",
        "platform": "Steam",
        "active_players": 715531,
        "weekly_points": 697,
        "monthly_points": 7369,
        "yearly_points": 44291,
        "created_at": "2026-05-18T21:57:31.000000Z",
        "updated_at": "2026-05-18T21:57:31.000000Z"
    },
    {
        "id": 4,
        "name": "Helldivers 2",
        "platform": "Steam",
        "active_players": 217823,
        "weekly_points": 617,
        "monthly_points": 5232,
        "yearly_points": 24531,
        "created_at": "2026-05-18T21:57:31.000000Z",
        "updated_at": "2026-05-18T21:57:31.000000Z"
    }
]
 

Request      

GET api/v1/rankings/weekly

Headers

Authorization        

Example: Bearer {YOUR_JWT_TOKEN}

Content-Type        

Example: application/json

Accept        

Example: application/json

Top mensal

requires authentication

Retorna o ranking dos jogos com melhor desempenho no último mês.

Example request:
curl --request GET \
    --get "http://127.0.0.1:8000/api/v1/rankings/monthly" \
    --header "Authorization: Bearer {YOUR_JWT_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "http://127.0.0.1:8000/api/v1/rankings/monthly"
);

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


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

Example response (200):

Show headers
cache-control: no-cache, private
content-type: application/json
x-ratelimit-limit: 60
x-ratelimit-remaining: 58
access-control-allow-origin: *
 

[
    {
        "id": 13,
        "name": "Minecraft",
        "platform": "Multiplataforma",
        "active_players": 242066,
        "weekly_points": 184,
        "monthly_points": 9278,
        "yearly_points": 33053,
        "created_at": "2026-05-18T21:57:31.000000Z",
        "updated_at": "2026-05-18T21:57:31.000000Z"
    },
    {
        "id": 11,
        "name": "Apex Legends",
        "platform": "Steam",
        "active_players": 218457,
        "weekly_points": 945,
        "monthly_points": 8776,
        "yearly_points": 56526,
        "created_at": "2026-05-18T21:57:31.000000Z",
        "updated_at": "2026-05-18T21:57:31.000000Z"
    },
    {
        "id": 15,
        "name": "Stardew Valley",
        "platform": "Steam",
        "active_players": 1117483,
        "weekly_points": 702,
        "monthly_points": 7545,
        "yearly_points": 42912,
        "created_at": "2026-05-18T21:57:31.000000Z",
        "updated_at": "2026-05-18T21:57:31.000000Z"
    },
    {
        "id": 2,
        "name": "Elden Ring",
        "platform": "Steam",
        "active_players": 715531,
        "weekly_points": 697,
        "monthly_points": 7369,
        "yearly_points": 44291,
        "created_at": "2026-05-18T21:57:31.000000Z",
        "updated_at": "2026-05-18T21:57:31.000000Z"
    },
    {
        "id": 6,
        "name": "Fortnite",
        "platform": "Epic Games",
        "active_players": 1091171,
        "weekly_points": 611,
        "monthly_points": 5678,
        "yearly_points": 96832,
        "created_at": "2026-05-18T21:57:31.000000Z",
        "updated_at": "2026-05-18T21:57:31.000000Z"
    },
    {
        "id": 8,
        "name": "EA SPORTS FC 24",
        "platform": "Steam",
        "active_players": 398998,
        "weekly_points": 872,
        "monthly_points": 5333,
        "yearly_points": 81468,
        "created_at": "2026-05-18T21:57:31.000000Z",
        "updated_at": "2026-05-18T21:57:31.000000Z"
    },
    {
        "id": 4,
        "name": "Helldivers 2",
        "platform": "Steam",
        "active_players": 217823,
        "weekly_points": 617,
        "monthly_points": 5232,
        "yearly_points": 24531,
        "created_at": "2026-05-18T21:57:31.000000Z",
        "updated_at": "2026-05-18T21:57:31.000000Z"
    },
    {
        "id": 14,
        "name": "Cyberpunk 2077",
        "platform": "Steam",
        "active_players": 1161973,
        "weekly_points": 874,
        "monthly_points": 4853,
        "yearly_points": 27988,
        "created_at": "2026-05-18T21:57:31.000000Z",
        "updated_at": "2026-05-18T21:57:31.000000Z"
    },
    {
        "id": 10,
        "name": "League of Legends",
        "platform": "Riot Launcher",
        "active_players": 1166370,
        "weekly_points": 786,
        "monthly_points": 4506,
        "yearly_points": 21445,
        "created_at": "2026-05-18T21:57:31.000000Z",
        "updated_at": "2026-05-18T21:57:31.000000Z"
    },
    {
        "id": 5,
        "name": "Baldur's Gate 3",
        "platform": "Steam",
        "active_players": 296988,
        "weekly_points": 352,
        "monthly_points": 3595,
        "yearly_points": 62260,
        "created_at": "2026-05-18T21:57:31.000000Z",
        "updated_at": "2026-05-18T21:57:31.000000Z"
    }
]
 

Request      

GET api/v1/rankings/monthly

Headers

Authorization        

Example: Bearer {YOUR_JWT_TOKEN}

Content-Type        

Example: application/json

Accept        

Example: application/json

Top anual

requires authentication

Retorna o ranking dos jogos com melhor desempenho no último ano.

Example request:
curl --request GET \
    --get "http://127.0.0.1:8000/api/v1/rankings/yearly" \
    --header "Authorization: Bearer {YOUR_JWT_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "http://127.0.0.1:8000/api/v1/rankings/yearly"
);

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


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

Example response (200):

Show headers
cache-control: no-cache, private
content-type: application/json
x-ratelimit-limit: 60
x-ratelimit-remaining: 57
access-control-allow-origin: *
 

[
    {
        "id": 6,
        "name": "Fortnite",
        "platform": "Epic Games",
        "active_players": 1091171,
        "weekly_points": 611,
        "monthly_points": 5678,
        "yearly_points": 96832,
        "created_at": "2026-05-18T21:57:31.000000Z",
        "updated_at": "2026-05-18T21:57:31.000000Z"
    },
    {
        "id": 8,
        "name": "EA SPORTS FC 24",
        "platform": "Steam",
        "active_players": 398998,
        "weekly_points": 872,
        "monthly_points": 5333,
        "yearly_points": 81468,
        "created_at": "2026-05-18T21:57:31.000000Z",
        "updated_at": "2026-05-18T21:57:31.000000Z"
    },
    {
        "id": 1,
        "name": "Counter-Strike 2",
        "platform": "Steam",
        "active_players": 1086549,
        "weekly_points": 729,
        "monthly_points": 1215,
        "yearly_points": 71182,
        "created_at": "2026-05-18T21:57:31.000000Z",
        "updated_at": "2026-05-18T21:57:31.000000Z"
    },
    {
        "id": 7,
        "name": "Grand Theft Auto V",
        "platform": "Steam",
        "active_players": 262363,
        "weekly_points": 199,
        "monthly_points": 2257,
        "yearly_points": 62350,
        "created_at": "2026-05-18T21:57:31.000000Z",
        "updated_at": "2026-05-18T21:57:31.000000Z"
    },
    {
        "id": 5,
        "name": "Baldur's Gate 3",
        "platform": "Steam",
        "active_players": 296988,
        "weekly_points": 352,
        "monthly_points": 3595,
        "yearly_points": 62260,
        "created_at": "2026-05-18T21:57:31.000000Z",
        "updated_at": "2026-05-18T21:57:31.000000Z"
    },
    {
        "id": 3,
        "name": "Valorant",
        "platform": "Riot Launcher",
        "active_players": 821498,
        "weekly_points": 241,
        "monthly_points": 1030,
        "yearly_points": 57266,
        "created_at": "2026-05-18T21:57:31.000000Z",
        "updated_at": "2026-05-18T21:57:31.000000Z"
    },
    {
        "id": 11,
        "name": "Apex Legends",
        "platform": "Steam",
        "active_players": 218457,
        "weekly_points": 945,
        "monthly_points": 8776,
        "yearly_points": 56526,
        "created_at": "2026-05-18T21:57:31.000000Z",
        "updated_at": "2026-05-18T21:57:31.000000Z"
    },
    {
        "id": 2,
        "name": "Elden Ring",
        "platform": "Steam",
        "active_players": 715531,
        "weekly_points": 697,
        "monthly_points": 7369,
        "yearly_points": 44291,
        "created_at": "2026-05-18T21:57:31.000000Z",
        "updated_at": "2026-05-18T21:57:31.000000Z"
    },
    {
        "id": 15,
        "name": "Stardew Valley",
        "platform": "Steam",
        "active_players": 1117483,
        "weekly_points": 702,
        "monthly_points": 7545,
        "yearly_points": 42912,
        "created_at": "2026-05-18T21:57:31.000000Z",
        "updated_at": "2026-05-18T21:57:31.000000Z"
    },
    {
        "id": 12,
        "name": "Call of Duty: Warzone",
        "platform": "Battle.net",
        "active_players": 243114,
        "weekly_points": 877,
        "monthly_points": 2426,
        "yearly_points": 36655,
        "created_at": "2026-05-18T21:57:31.000000Z",
        "updated_at": "2026-05-18T21:57:31.000000Z"
    }
]
 

Request      

GET api/v1/rankings/yearly

Headers

Authorization        

Example: Bearer {YOUR_JWT_TOKEN}

Content-Type        

Example: application/json

Accept        

Example: application/json

Histórico de ranking

requires authentication

Retorna a evolução de um jogo específico ao longo do tempo.

Example request:
curl --request GET \
    --get "http://127.0.0.1:8000/api/v1/rankings/history/1" \
    --header "Authorization: Bearer {YOUR_JWT_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "http://127.0.0.1:8000/api/v1/rankings/history/1"
);

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


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

Example response (200):

Show headers
cache-control: no-cache, private
content-type: application/json
x-ratelimit-limit: 60
x-ratelimit-remaining: 56
access-control-allow-origin: *
 

{
    "game": "Counter-Strike 2",
    "history": [
        {
            "period": "Semana 1",
            "points": 729
        },
        {
            "period": "Mês Atual",
            "points": 1215
        },
        {
            "period": "Ano Atual",
            "points": 71182
        }
    ]
}
 

Request      

GET api/v1/rankings/history/{id}

Headers

Authorization        

Example: Bearer {YOUR_JWT_TOKEN}

Content-Type        

Example: application/json

Accept        

Example: application/json

URL Parameters

id   integer     

O ID do jogo. Example: 1

Ranking por Plataforma

requires authentication

Retorna os jogos mais bem ranqueados de uma plataforma específica.

Example request:
curl --request GET \
    --get "http://127.0.0.1:8000/api/v1/rankings/platforms/Steam" \
    --header "Authorization: Bearer {YOUR_JWT_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "http://127.0.0.1:8000/api/v1/rankings/platforms/Steam"
);

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


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

Example response (200):

Show headers
cache-control: no-cache, private
content-type: application/json
x-ratelimit-limit: 60
x-ratelimit-remaining: 55
access-control-allow-origin: *
 

[
    {
        "id": 14,
        "name": "Cyberpunk 2077",
        "platform": "Steam",
        "active_players": 1161973,
        "weekly_points": 874,
        "monthly_points": 4853,
        "yearly_points": 27988,
        "created_at": "2026-05-18T21:57:31.000000Z",
        "updated_at": "2026-05-18T21:57:31.000000Z"
    },
    {
        "id": 15,
        "name": "Stardew Valley",
        "platform": "Steam",
        "active_players": 1117483,
        "weekly_points": 702,
        "monthly_points": 7545,
        "yearly_points": 42912,
        "created_at": "2026-05-18T21:57:31.000000Z",
        "updated_at": "2026-05-18T21:57:31.000000Z"
    },
    {
        "id": 1,
        "name": "Counter-Strike 2",
        "platform": "Steam",
        "active_players": 1086549,
        "weekly_points": 729,
        "monthly_points": 1215,
        "yearly_points": 71182,
        "created_at": "2026-05-18T21:57:31.000000Z",
        "updated_at": "2026-05-18T21:57:31.000000Z"
    },
    {
        "id": 2,
        "name": "Elden Ring",
        "platform": "Steam",
        "active_players": 715531,
        "weekly_points": 697,
        "monthly_points": 7369,
        "yearly_points": 44291,
        "created_at": "2026-05-18T21:57:31.000000Z",
        "updated_at": "2026-05-18T21:57:31.000000Z"
    },
    {
        "id": 8,
        "name": "EA SPORTS FC 24",
        "platform": "Steam",
        "active_players": 398998,
        "weekly_points": 872,
        "monthly_points": 5333,
        "yearly_points": 81468,
        "created_at": "2026-05-18T21:57:31.000000Z",
        "updated_at": "2026-05-18T21:57:31.000000Z"
    },
    {
        "id": 5,
        "name": "Baldur's Gate 3",
        "platform": "Steam",
        "active_players": 296988,
        "weekly_points": 352,
        "monthly_points": 3595,
        "yearly_points": 62260,
        "created_at": "2026-05-18T21:57:31.000000Z",
        "updated_at": "2026-05-18T21:57:31.000000Z"
    },
    {
        "id": 7,
        "name": "Grand Theft Auto V",
        "platform": "Steam",
        "active_players": 262363,
        "weekly_points": 199,
        "monthly_points": 2257,
        "yearly_points": 62350,
        "created_at": "2026-05-18T21:57:31.000000Z",
        "updated_at": "2026-05-18T21:57:31.000000Z"
    },
    {
        "id": 11,
        "name": "Apex Legends",
        "platform": "Steam",
        "active_players": 218457,
        "weekly_points": 945,
        "monthly_points": 8776,
        "yearly_points": 56526,
        "created_at": "2026-05-18T21:57:31.000000Z",
        "updated_at": "2026-05-18T21:57:31.000000Z"
    },
    {
        "id": 4,
        "name": "Helldivers 2",
        "platform": "Steam",
        "active_players": 217823,
        "weekly_points": 617,
        "monthly_points": 5232,
        "yearly_points": 24531,
        "created_at": "2026-05-18T21:57:31.000000Z",
        "updated_at": "2026-05-18T21:57:31.000000Z"
    }
]
 

Request      

GET api/v1/rankings/platforms/{platform}

Headers

Authorization        

Example: Bearer {YOUR_JWT_TOKEN}

Content-Type        

Example: application/json

Accept        

Example: application/json

URL Parameters

platform   string     

O nome da plataforma. Example: Steam

Jogos mais jogados

requires authentication

Retorna o top 10 jogos com base no número de jogadores ativos.

Example request:
curl --request GET \
    --get "http://127.0.0.1:8000/api/v1/games/most-played" \
    --header "Authorization: Bearer {YOUR_JWT_TOKEN}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "http://127.0.0.1:8000/api/v1/games/most-played"
);

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


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

Example response (200):

Show headers
cache-control: no-cache, private
content-type: application/json
x-ratelimit-limit: 60
x-ratelimit-remaining: 54
access-control-allow-origin: *
 

[
    {
        "id": 10,
        "name": "League of Legends",
        "platform": "Riot Launcher",
        "active_players": 1166370,
        "weekly_points": 786,
        "monthly_points": 4506,
        "yearly_points": 21445,
        "created_at": "2026-05-18T21:57:31.000000Z",
        "updated_at": "2026-05-18T21:57:31.000000Z"
    },
    {
        "id": 14,
        "name": "Cyberpunk 2077",
        "platform": "Steam",
        "active_players": 1161973,
        "weekly_points": 874,
        "monthly_points": 4853,
        "yearly_points": 27988,
        "created_at": "2026-05-18T21:57:31.000000Z",
        "updated_at": "2026-05-18T21:57:31.000000Z"
    },
    {
        "id": 15,
        "name": "Stardew Valley",
        "platform": "Steam",
        "active_players": 1117483,
        "weekly_points": 702,
        "monthly_points": 7545,
        "yearly_points": 42912,
        "created_at": "2026-05-18T21:57:31.000000Z",
        "updated_at": "2026-05-18T21:57:31.000000Z"
    },
    {
        "id": 6,
        "name": "Fortnite",
        "platform": "Epic Games",
        "active_players": 1091171,
        "weekly_points": 611,
        "monthly_points": 5678,
        "yearly_points": 96832,
        "created_at": "2026-05-18T21:57:31.000000Z",
        "updated_at": "2026-05-18T21:57:31.000000Z"
    },
    {
        "id": 1,
        "name": "Counter-Strike 2",
        "platform": "Steam",
        "active_players": 1086549,
        "weekly_points": 729,
        "monthly_points": 1215,
        "yearly_points": 71182,
        "created_at": "2026-05-18T21:57:31.000000Z",
        "updated_at": "2026-05-18T21:57:31.000000Z"
    },
    {
        "id": 9,
        "name": "Roblox",
        "platform": "Multiplataforma",
        "active_players": 991415,
        "weekly_points": 770,
        "monthly_points": 2080,
        "yearly_points": 22209,
        "created_at": "2026-05-18T21:57:31.000000Z",
        "updated_at": "2026-05-18T21:57:31.000000Z"
    },
    {
        "id": 3,
        "name": "Valorant",
        "platform": "Riot Launcher",
        "active_players": 821498,
        "weekly_points": 241,
        "monthly_points": 1030,
        "yearly_points": 57266,
        "created_at": "2026-05-18T21:57:31.000000Z",
        "updated_at": "2026-05-18T21:57:31.000000Z"
    },
    {
        "id": 2,
        "name": "Elden Ring",
        "platform": "Steam",
        "active_players": 715531,
        "weekly_points": 697,
        "monthly_points": 7369,
        "yearly_points": 44291,
        "created_at": "2026-05-18T21:57:31.000000Z",
        "updated_at": "2026-05-18T21:57:31.000000Z"
    },
    {
        "id": 8,
        "name": "EA SPORTS FC 24",
        "platform": "Steam",
        "active_players": 398998,
        "weekly_points": 872,
        "monthly_points": 5333,
        "yearly_points": 81468,
        "created_at": "2026-05-18T21:57:31.000000Z",
        "updated_at": "2026-05-18T21:57:31.000000Z"
    },
    {
        "id": 5,
        "name": "Baldur's Gate 3",
        "platform": "Steam",
        "active_players": 296988,
        "weekly_points": 352,
        "monthly_points": 3595,
        "yearly_points": 62260,
        "created_at": "2026-05-18T21:57:31.000000Z",
        "updated_at": "2026-05-18T21:57:31.000000Z"
    }
]
 

Request      

GET api/v1/games/most-played

Headers

Authorization        

Example: Bearer {YOUR_JWT_TOKEN}

Content-Type        

Example: application/json

Accept        

Example: application/json