Raw Database Endpoints
null if the requested resource is not found.
GET /tanks
Retrieves a list of all tanks in the database with their complete information. Returns an empty list if no tanks exist in the database.
{
"count": 3,
"tanks": [
{
"tank_id": 41745,
"name": "T-34",
"tier": 5,
"class_type": "Medium Tank",
"nation": "USSR"
}
]
}
GET /maps
Retrieves a list of all maps in the database with their complete information. Returns an empty list if no maps exist in the database.
{
"count": 2,
"maps": [
{
"map_id": 1,
"map_name": "Himmelsdorf"
}
]
}
GET /tank/{tank_id}
Retrieves detailed information about a specific tank by its ID. Returns null if the tank is not found.
{
"tank_id": 41745,
"name": "T-34",
"tier": 5,
"class_type": "Medium Tank",
"nation": "USSR"
}
GET /map/{map_name}
Retrieves information about a specific map by its name. Returns null if the map is not found. Map names are case-sensitive.
{
"map_id": 1,
"map_name": "Himmelsdorf"
}
GET /tankstats/{tank_id}
Retrieves all individual match statistics for a specific tank with pagination support. Returns complete raw database records including all fields such as battle_time, damage metrics, spotting data, and more. Returns an empty matches list if no matches are found for the tank.
{
"tank_id": 7489,
"page": 1,
"limit": 10,
"total_matches": 150,
"total_pages": 15,
"matches": [
{
"match_entry": 9999008,
"tank_id": 7489,
"map_id": 35,
"battle_time": "2025-09-18T19:56:27",
"spawn": 2,
"won": true,
"total_damage": 1337,
"...": "..."
}
]
}
GET /mapstats/{map_id}
Retrieves all individual match statistics for a specific map with pagination support (raw database records). Returns every
match_stats row for the requested map ID. Returns an empty matches list if no matches are found for the map.
{
"map_id": 35,
"page": 1,
"limit": 20,
"total_matches": 250,
"total_pages": 13,
"matches": [
{
"match_entry": 100234,
"tank_id": 7489,
"map_id": 35,
"battle_time": "2025-09-18T19:56:27",
"won": true,
"total_damage": 1875,
"...": "..."
}
]
}
GET /tankmapstats/{tank_id}/{map_id}
Retrieves all match statistics for a specific tank on a specific map with pagination support. Returns an empty matches list if no matches are found for the tank-map combination.
{
"tank_id": 7249,
"map_id": 12,
"page": 1,
"limit": 25,
"total_matches": 75,
"total_pages": 3,
"matches": [
{
"match_entry": 100321,
"tank_id": 7249,
"map_id": 12,
"battle_time": "2025-09-19T20:15:33",
"spawn": 1,
"won": true,
"total_damage": 2580,
"...": "..."
}
]
}
Computed Statistics Endpoints
GET /tankstats/advanced/{tank_id}
Retrieves aggregated advanced statistics for a specific tank including total matches,
max damage, average damage, and win count. The tank_name field will be null if the tank ID doesn't exist in the database.
{
"tank_name": "T-34",
"tank_count": 45,
"max_damage": 2350,
"average_damage": 1542,
"won_games": 28
}
GET /mapsidestats/{map_id}
Retrieves aggregated statistics for a specific map by spawn side, including total matches played, wins, and win rates for each side. Useful for analyzing map balance.
{
"map_id": 35,
"total_matches": 250,
"side_one": {
"total_matches": 125,
"wins": 68,
"win_rate": 54.4
},
"side_two": {
"total_matches": 125,
"wins": 57,
"win_rate": 45.6
}
}
GET /platoonstats
Compares performance statistics between solo play (platoon = 0) and platoon play (platoon ≠ 0), showing total matches, total damage, and average damage for each category.
{
"no_platoon": {
"count": 150,
"total_damage": 225000,
"average_damage": 1500
},
"platoon": {
"count": 75,
"total_damage": 135000,
"average_damage": 1800
}
}
Utility Endpoints
GET /
Displays this API documentation page.
GET /health
Health check endpoint to verify API availability.
{
"status": "healthy",
"service": "WoT Statistics API"
}