RestAPI Endpoints Documentation

This documentation is automatically generated from the RestAPI plugin definitions. It provides a complete reference for all available endpoints, parameters, and responses.

Table of Contents

Summary Overview

API GET / POST Parameters Description        
/airbase GET server_name: string, airbase_name: string Get information for a given airbase on a given server.        
/airbase/atis GET server_name: string, airbase_name: string Get ATIS information for an airbase on a given server.        
/airbase/capture POST server_name: string, airbase_name: string, coalition: int Capture the airbase.        
/airbase/warehouse GET server_name: string, airbase_name: string Get warehouse information for an airbase on a given server.        
/airbase/warehouse/item POST server_name: string, airbase_name: string, item: string, value: int Set warehouse item quantity for an airbase on a given server.        
/airbases GET server_name: string Get a listing of all airbases on a given server.        
/convertCoordinates GET server_name: string, coordinates: string Convert provided coordinate string into other formats.        
/credits POST nick: string, [date: string None], [campaign: string None] Get campaign credits for players    
/current_server GET nick: string, [date: string None] Server name a player is flying on      
/events GET ucid: string, start_time: datetime, end_time: datetime, [event: string None], [init_type: string None], [offset: int None], [limit: int None] Get mission events for players
/getuser POST [nick: string], [discord_id: string] Get users by name        
/greenieboard POST [date: string None], [server_name: string None] Get a greenieboard    
/highscore GET [server_name: string], [period: string], [limit: int] Get highscore statistics for players        
/instance/mission/load POST server_name: string, mission_name: string Load a mission on a given server.        
/instance/mission/pause POST server_name: string Pause the mission on a given server.        
/instance/mission/restart POST server_name: string Restart the mission on a given server.        
/instance/mission/unpause POST server_name: string Unpause the mission on a given server.        
/instance/missions GET server_name: string Return all missions for a given server.        
/instance/restart POST server_name: string Restart a server.        
/instance/start POST server_name: string Start a server.        
/instance/stop POST server_name: string Stop a server.        
/leaderboard GET what: string, [order: string], [query: string None], [limit: int None], [offset: int None], [server_name: string None] Get leaderbord information
/linkme POST discord_id: string, [force: bool] Link your Discord account to your DCS account        
/mission/bullseyes GET server_name: string Get the bullseye coordinates for blue and red coalitions in the current mission.        
/mission/drawings GET server_name: string Get mission drawing objects grouped by drawing layer.        
/mission/group GET server_name: string, coalition: string, group_name: string, [group_type: string None] Get details for a single group in the current mission.      
/mission/group/waypoints GET server_name: string, group_name: string, group_type: string Get the lat/lon waypoints for a named group in the current mission.        
/mission/groups GET server_name: string, coalition: string, [group_type: string None] Get all groups in the currently running mission for a coalition.      
/mission/unit GET server_name: string, unit_name: string Get mission unit data including current position, loadout, navaids, and waypoints.        
/mission/upload POST server_name: string, file: string, filename: string, load_after: bool Upload a .miz mission file to the server.        
/modulestats POST nick: string, [date: string None], [server_name: string None] Get module statistics    
/player_info POST nick: string, [date: string None], [server_name: string None] Get player information    
/player_squadrons POST nick: string, [date: string None] List of player squadrons      
/refuelings GET ucid: string, [module: string None], [tanker: string None], [start_time: datetime None], [end_time: datetime None] Get refueling stats for players
/server_attendance GET [server_name: string] Get detailed server attendance statistics        
/servers GET [server_name: string None] List all servers, the active mission (if any) and the active extensions      
/serverstats GET [server_name: string] List the statistics of a whole group        
/squadron_credits POST name: string, [campaign: string] Squadron campaign credits        
/squadron_members POST name: string List squadron members        
/squadrons GET [limit: int], [offset: int] List all squadrons and their roles        
/stats POST nick: string, [date: string None], [server_name: string None], [last_session: bool None] Get player statistics  
/topkdr GET [limit: int], [offset: int], [server_name: string] Get top KDR statistics for players        
/topkills GET [limit: int], [offset: int], [server_name: string] Get top kills statistics for players        
/traps POST nick: string, [date: string None], [limit: int None], [offset: int None], [server_name: string None] Get traps for players
/traps/img GET trap_id: int Get trap image for a player        
/trueskill GET [limit: int], [offset: int], [server_name: string] Get TrueSkill:tm: statistics for players        
/weaponpk POST nick: string, [date: string None], [server_name: string None] Get PK statistics for all weapons of a specific players    

Airbase

GET /airbases

Summary: Airbases Listing

Description: Get a listing of all airbases on a given server.

Parameters

Name Type In Required Default Description
server_name string query Yes - Server Name

Response: AirbasesResponse

Response Example

{
  "airbases": [
    {
      "alt": 250.00025,
      "coalition": 1,
      "code": "ICAO",
      "dynamic": {
        "allowHotSpawn": false,
        "dynamicSpawnAvailable": true
      },
      "frequencyList": [
        [
          38950000,
          0
        ],
        [
          122200000,
          0
        ],
        [
          250500000,
          0
        ],
        [
          4025000,
          0
        ]
      ],
      "id": "Airbase_Name",
      "lat": 35.732306452624,
      "lng": 37.104127964423,
      "name": "Airbase Name",
      "position": {
        "x": 76048.957031,
        "y": 250.00025,
        "z": 111344.925781
      },
      "runwayList": [
        "09",
        "27"
      ],
      "rwy_heading": 274
    }
  ]
}

GET /airbase

Summary: Airbase Information

Description: Get information for a given airbase on a given server.

Parameters

Name Type In Required Default Description
server_name string query Yes - Server Name
airbase_name string query Yes - Airbase Name

Response: AirbaseInfoResponse

Response Example

{
  "airbase": {
    "alt": 69.475785112923,
    "auto_capture": true,
    "channel": "...",
    "coalition": 2,
    "command": "getAirbase",
    "lat": 36.371269972814,
    "lng": 36.298090184913,
    "magVar": 5.6234159795293,
    "mgrs": "37 S BA 56617 27553",
    "name": "Airbase Name",
    "parking": [
      {
        "TO_AC": false,
        "Term_Index": 9,
        "Term_Index_0": -1,
        "Term_Type": 104,
        "fDistToRW": 1641.8400878906,
        "vTerminalPos": {
          "x": 147715.125,
          "y": 69.475784301758,
          "z": 38939.109375
        }
      }
    ],
    "position": {
      "x": 148653.765625,
      "y": 69.475784301758,
      "z": 40403.9453125
    },
    "radio_silent": true,
    "runways": [
      {
        "Name": 22,
        "course": 2.3682391643524,
        "length": 2759.2866210938,
        "position": {
          "x": 147687.484375,
          "y": 69.475784301758,
          "z": 39418.7421875
        },
        "width": 60
      }
    ],
    "server_name": "Server Name",
    "unlimited": {
      "aircraft": false,
      "liquids": true,
      "weapon": false
    },
    "warehouse": {
      "aircraft": {
        "A-10C_2": 1,
        "CH-47Fbl1": 1,
        "F-14B": 1,
        "OH58D": 1
      },
      "liquids": {
        "0": 324730.28125,
        "1": 500000,
        "2": 500000,
        "3": 500000
      },
      "weapon": {
        "weapons.bombs.BEER_BOMB": 50,
        "weapons.containers.LANTIRN": 1000,
        "weapons.droptanks.Spitfire_tank_1": 1000,
        "weapons.missiles.AGM_154": 50,
        "weapons.nurs.HYDRA_70_M151_M433": 100
      }
    }
  }
}

GET /airbase/atis

Summary: Airbase ATIS

Description: Get ATIS information for an airbase on a given server.

Parameters

Name Type In Required Default Description
server_name string query Yes - Server Name
airbase_name string query Yes - Airbase Name

Response: AirbaseAtisResponse

Response Example

{
  "active_runways": [
    "31L"
  ],
  "clouds": {
    "base": 8000,
    "density": 4,
    "thickness": 1000
  },
  "preset": {
    "detailNoiseMapSize": 9000,
    "layers": [
      {
        "altitudeMax": 3440,
        "altitudeMin": 2520,
        "coverage": 0.418,
        "coverageMapFactor": 0,
        "coverageMapUVOffsetX": 0,
        "coverageMapUVOffsetY": 0,
        "density": 0.506,
        "densityGrad": 1.2,
        "noiseBlur": 1.5,
        "noiseFreq": 2.088,
        "shapeFactor": 0,
        "tile": 4.336
      },
      {
        "altitudeMax": 8400,
        "altitudeMin": 7560,
        "coverage": 0.469,
        "coverageMapFactor": 0,
        "coverageMapUVOffsetX": 0,
        "coverageMapUVOffsetY": 0,
        "density": 0.572,
        "densityGrad": 1.466,
        "noiseBlur": 1.303,
        "noiseFreq": 1.857,
        "shapeFactor": 0.264,
        "tile": 2.992
      },
      {
        "altitudeMax": 10920,
        "altitudeMin": 10000,
        "coverage": 0,
        "coverageMapFactor": 0,
        "coverageMapUVOffsetX": 0,
        "coverageMapUVOffsetY": 0,
        "density": 0,
        "densityGrad": 0,
        "noiseBlur": 0.27,
        "noiseFreq": 2,
        "shapeFactor": 0,
        "tile": 1
      }
    ],
    "levelMap": "bazar/effects/clouds/cloudsMap01.png",
    "precipitationPower": -1,
    "presetAltMax": 2520,
    "presetAltMin": 1260,
    "readableName": "02 ##Two Layers Few and Scattered \nMETAR: FEW/SCT 8/10 SCT 23/24",
    "readableNameShort": "Light Scattered 2",
    "thumbnailName": "Bazar/Effects/Clouds/Thumbnails/cloud_2.png",
    "visibleInGUI": true
  },
  "qfe": {
    "pressureHPA": 1013.25,
    "pressureIN": 29.92,
    "pressureMM": 760.0
  },
  "qnh": {
    "pressureHPA": 1013.25,
    "pressureIN": 29.92,
    "pressureMM": 760.0
  },
  "temp": 15.5,
  "turbulence": "None",
  "visibility": 10000,
  "wind": {
    "dir": 270.0,
    "speed": 5.2
  }
}

GET /airbase/warehouse

Summary: Airbase Warehouse

Description: Get warehouse information for an airbase on a given server.

Parameters

Name Type In Required Default Description
server_name string query Yes - Server Name
airbase_name string query Yes - Airbase Name

Response: AirbaseWarehouseResponse

Response Example

{
  "unlimited": {
    "aircraft": false,
    "liquids": true,
    "weapon": false
  },
  "warehouse": {
    "aircraft": {
      "A6E": 100,
      "AH-64D_BLK_II": 5,
      "F-16C_50": 1
    },
    "liquids": {
      "0": 500000,
      "1": 500000,
      "2": 500000,
      "3": 500000
    },
    "weapon": {
      "weapons.bombs.GBU_38": 100,
      "weapons.containers.F-15E_AXQ-14_DATALINK": 100,
      "weapons.droptanks.FuelTank_350L": 100,
      "weapons.missiles.AGM_154": 100,
      "weapons.nurs.HYDRA_70_M151_M433": 100
    }
  }
}

POST /airbase/warehouse/item

Summary: Set Quantity of an Airbase Warehouse Item

Description: Set warehouse item quantity for an airbase on a given server.

Parameters

Name Type In Required Default Description
server_name string form Yes - Server Name
airbase_name string form Yes - Airbase Name
item string form Yes - Item
value int form Yes - Value

Request Body Content-Type: application/x-www-form-urlencoded

Response: AirbaseSetWarehouseItemResponse

Response Example

{
  "item": "weapons.bombs.GBU_38",
  "server_name": "Server Name",
  "value": 50
}

POST /airbase/capture

Summary: Airbase Information

Description: Capture the airbase.

Parameters

Name Type In Required Default Description
server_name string form Yes - Server Name
airbase_name string form Yes - Airbase Name
coalition int form Yes - Coalition

Request Body Content-Type: application/x-www-form-urlencoded

Response: AirbaseCaptureResponse

Response Example

{
  "airbase_name": "Airbase Name",
  "coalition": 0,
  "server_name": "Server Name"
}

Info

GET /serverstats

Summary: Server Statistics

Description: List the statistics of a whole group

Parameters

Name Type In Required Default Description
server_name string query No - Server Name

Response: ServerStats

Response Example

{
  "activePlayers": 50,
  "avgPlaytime": 120,
  "daily_players": [
    {
      "date": "2025-08-07T12:00:00",
      "player_count": 100
    }
  ],
  "totalDeaths": 50,
  "totalKills": 100,
  "totalPlayers": 100,
  "totalPlaytime": 3600,
  "totalPvPDeaths": 20,
  "totalPvPKills": 30,
  "totalSorties": 100
}

GET /server_attendance

Summary: Server Attendance Statistics

Description: Get detailed server attendance statistics

Parameters

Name Type In Required Default Description
server_name string query No - Server Name

Response: ServerAttendanceStats

Response Example

{
  "current_players": 8,
  "daily_trend": [
    {
      "date": "2025-12-24",
      "unique_players": 15
    },
    {
      "date": "2025-12-25",
      "unique_players": 18
    }
  ],
  "discord_members_24h": 12,
  "discord_members_30d": 65,
  "discord_members_7d": 28,
  "top_missions": [
    {
      "mission_name": "Training Map",
      "playtime_hours": 1200
    },
    {
      "mission_name": "Combat Mission",
      "playtime_hours": 800
    }
  ],
  "top_modules": [
    {
      "module": "F/A-18C",
      "playtime_hours": 800,
      "total_uses": 127,
      "unique_players": 45
    }
  ],
  "top_theatres": [
    {
      "playtime_hours": 2500,
      "theatre": "Caucasus"
    },
    {
      "playtime_hours": 347,
      "theatre": "Syria"
    }
  ],
  "total_deaths": 567,
  "total_kills": 892,
  "total_playtime_hours_24h": 45.5,
  "total_playtime_hours_30d": 720.8,
  "total_playtime_hours_7d": 180.2,
  "total_pvp_deaths": 189,
  "total_pvp_kills": 234,
  "total_sorties": 1245,
  "unique_players_24h": 15,
  "unique_players_30d": 85,
  "unique_players_7d": 35
}

GET /servers

Summary: Server list

Description: List all servers, the active mission (if any) and the active extensions

Parameters

Name Type In Required Default Description
server_name string | None query No - Server Name

Response: list[ServerInfo]

Response Example

[
  {
    "address": "127.0.0.1:10308",
    "description": "Public Dedicated Server",
    "extensions": [
      {
        "name": "SRS",
        "value": "127.0.0.1:5002",
        "version": "1.9.0.0"
      }
    ],
    "max_players": 32,
    "mission": {
      "blue_slots": 20,
      "blue_slots_used": 5,
      "date_time": "2025-08-07 12:00:00",
      "name": "Training Mission",
      "red_slots": 20,
      "red_slots_used": 3,
      "restart_time": 1691424000,
      "theatre": "Caucasus",
      "uptime": 3600
    },
    "name": "DCS Server",
    "password": "secret",
    "players": [
      {
        "callsign": "Chevy 1-1",
        "nick": "Pilot1",
        "radios": [
          127500000,
          251000000
        ],
        "side": "blue",
        "unit_type": "FA-18C_hornet"
      }
    ],
    "require_pure_clients": true,
    "require_pure_models": true,
    "require_pure_scripts": true,
    "require_pure_textures": true,
    "restart_time": "2025-08-07T12:00:00",
    "status": "running",
    "weather": {
      "clouds_base": 8000,
      "clouds_density": 4,
      "clouds_thickness": 1000,
      "dust_enabled": false,
      "fog_enabled": false,
      "precipitation": 0,
      "pressure": 760.0,
      "temperature": 15.5,
      "visibility": 9999,
      "wind_direction": 270,
      "wind_speed": 5.2
    }
  }
]

GET /squadrons

Summary: Squadron list

Description: List all squadrons and their roles

Parameters

Name Type In Required Default Description
limit int query No - Limit
offset int query No 0 Offset

Response: list[SquadronInfo]

Response Example

[
  {
    "description": "Elite Fighter Squadron",
    "image_url": "https://example.com/squadron-logo.png",
    "locked": true,
    "members": [
      {
        "current_server": "My Fancy Server",
        "date": "2025-08-07T12:00:00",
        "discord_id": 123456789012345678,
        "nick": "Player1",
        "ucid": "aabbccddeeffgghhiiffkk1234567890"
      }
    ],
    "name": "Red Devils",
    "role": "Squadron Leader"
  }
]

POST /squadron_members

Summary: Squadron Members

Description: List squadron members

Parameters

Name Type In Required Default Description
name string form Yes - Name

Request Body Content-Type: application/x-www-form-urlencoded

Response: list[UserEntry]

Response Example

[
  {
    "current_server": "My Fancy Server",
    "date": "2025-08-07T12:00:00",
    "discord_id": 123456789012345678,
    "nick": "Player1",
    "ucid": "aabbccddeeffgghhiiffkk1234567890"
  }
]

POST /getuser

Summary: User list

Description: Get users by name

Parameters

Name Type In Required Default Description
nick string form No - Nick
discord_id string form No - Discord Id

Request Body Content-Type: application/x-www-form-urlencoded

Response: list[UserEntry]

Response Example

[
  {
    "current_server": "My Fancy Server",
    "date": "2025-08-07T12:00:00",
    "discord_id": 123456789012345678,
    "nick": "Player1",
    "ucid": "aabbccddeeffgghhiiffkk1234567890"
  }
]

POST /linkme

Summary: Link Discord to DCS

Description: Link your Discord account to your DCS account

Parameters

Name Type In Required Default Description
discord_id string form Yes - Discord user ID (snowflake)
force bool form No False Force the operation

Request Body Content-Type: application/x-www-form-urlencoded

Response: LinkMeResponse

Response Example

{
  "rc": 2,
  "timestamp": "2025-08-09T12:00:00+00:00",
  "token": "1234"
}

GET /current_server

Summary: Current Server

Description: Server name a player is flying on

Parameters

Name Type In Required Default Description
nick string query Yes - Nick
date string | None query No - Date

Response: string | None

Response Example

"DCS Server"

POST /player_squadrons

Summary: Player Squadrons

Description: List of player squadrons

Parameters

Name Type In Required Default Description
nick string form Yes - Nick
date string | None form No - Date

Request Body Content-Type: application/x-www-form-urlencoded

Response: list[PlayerSquadron]

Response Example

[
  {
    "image_url": "https://example.com/squadron-logo.png",
    "name": "Red Devils"
  }
]

Statistics

GET /leaderboard

Summary: Leaderboard

Description: Get leaderbord information

Parameters

Name Type In Required Default Description
what string query Yes - What
order string query No desc Order
query string | None query No - Query
limit int | None query No 10 Limit
offset int | None query No 0 Offset
server_name string | None query No - Server Name

Response: LeaderBoard

Response Example

{
  "items": [
    {
      "credits": 1500,
      "date": "2025-01-01T00:00:00",
      "deaths": 2,
      "deaths_pvp": 0,
      "kdr": 5.0,
      "kdr_pvp": 5.0,
      "kills": 10,
      "kills_pvp": 5,
      "nick": "Special K",
      "playtime": 7200,
      "row_num": 1
    }
  ],
  "offset": 0,
  "total_count": 1
}

GET /topkills

Summary: Top Kills

Description: Get top kills statistics for players

Parameters

Name Type In Required Default Description
limit int query No 10 Limit
offset int query No 0 Offset
server_name string query No - Server Name

Response: list[TopKill]

Response Example

[
  {
    "credits": 1500,
    "date": "2025-01-01T00:00:00",
    "deaths": 2,
    "deaths_pvp": 0,
    "kdr": 5.0,
    "kdr_pvp": 5.0,
    "kills": 10,
    "kills_pvp": 5,
    "nick": "Special K",
    "playtime": 7200,
    "row_num": 1
  }
]

GET /topkdr

Summary: Top KDR

Description: Get top KDR statistics for players

Parameters

Name Type In Required Default Description
limit int query No 10 Limit
offset int query No 0 Offset
server_name string query No - Server Name

Response: list[TopKill]

Response Example

[
  {
    "credits": 1500,
    "date": "2025-01-01T00:00:00",
    "deaths": 2,
    "deaths_pvp": 0,
    "kdr": 5.0,
    "kdr_pvp": 5.0,
    "kills": 10,
    "kills_pvp": 5,
    "nick": "Special K",
    "playtime": 7200,
    "row_num": 1
  }
]

GET /trueskill

Summary: TrueSkill:tm:

Description: Get TrueSkill:tm: statistics for players

Parameters

Name Type In Required Default Description
limit int query No 10 Limit
offset int query No 0 Offset
server_name string query No - Server Name

Response: list[Trueskill]

Response Example

[
  {
    "TrueSkill": 18.6,
    "date": "2025-01-01T00:00:00",
    "deaths_pvp": 2,
    "kills_pvp": 10,
    "nick": "Special K"
  }
]

POST /weaponpk

Summary: Weapon PK

Description: Get PK statistics for all weapons of a specific players

Parameters

Name Type In Required Default Description
nick string form Yes - Nick
date string | None form No - Date
server_name string | None form No - Server Name

Request Body Content-Type: application/x-www-form-urlencoded

Response: list[WeaponPK]

Response Example

[
  {
    "hits": 10,
    "pk": 0.5,
    "shots": 20,
    "weapon": "AIM-120C"
  }
]

POST /stats

Summary: Player Statistics

Description: Get player statistics

Parameters

Name Type In Required Default Description
nick string form Yes - Nick
date string | None form No - Date
server_name string | None form No - Server Name
last_session bool | None form No False Last Session

Request Body Content-Type: application/x-www-form-urlencoded

Response: PlayerStats

Response Example

{
  "crashes": 15,
  "deaths": 20,
  "deaths_ground": 2,
  "deaths_helicopters": 2,
  "deaths_planes": 10,
  "deaths_pvp": 20,
  "deaths_sams": 5,
  "deaths_ships": 1,
  "ejections": 5,
  "kdr": 2.5,
  "kdrByModule": [
    {
      "kdr": 2.5,
      "module": "F/A-18C"
    }
  ],
  "kdr_pvp": 2.5,
  "kills": 100,
  "killsByModule": [
    {
      "kills": 30,
      "module": "F/A-18C"
    }
  ],
  "kills_ground": 30,
  "kills_helicopters": 10,
  "kills_planes": 40,
  "kills_pvp": 50,
  "kills_sams": 15,
  "kills_ships": 5,
  "landings": 180,
  "playtime": 3600,
  "takeoffs": 200,
  "teamkills": 2
}

POST /modulestats

Summary: Module Statistics

Description: Get module statistics

Parameters

Name Type In Required Default Description
nick string form Yes - Nick
date string | None form No - Date
server_name string | None form No - Server Name

Request Body Content-Type: application/x-www-form-urlencoded

Response: list[ModuleStats]

Response Example

[
  {
    "deaths": 10,
    "kdr": 3.0,
    "kills": 30,
    "module": "F/A-18C",
    "playtime": 3600
  }
]

POST /player_info

Summary: Player Information

Description: Get player information

Parameters

Name Type In Required Default Description
nick string form Yes - Nick
date string | None form No - Date
server_name string | None form No - Server Name

Request Body Content-Type: application/x-www-form-urlencoded

Response: PlayerInfo

Response Example

{
  "credits": {
    "badge": "https://example.com/rookie_badge.png",
    "credits": 1500.0,
    "id": 1,
    "name": "Summer Campaign 2025",
    "rank": "Rookie"
  },
  "current_server": "DCS Server",
  "last_session": {
    "crashes": 0,
    "deaths": 2,
    "deaths_ground": 0,
    "deaths_helicopters": 0,
    "deaths_planes": 1,
    "deaths_pvp": 1,
    "deaths_sams": 1,
    "deaths_ships": 0,
    "ejections": 0,
    "kdr": 5.0,
    "kdrByModule": [
      {
        "kdr": 5.0,
        "module": "F/A-18C"
      }
    ],
    "kdr_pvp": 5.0,
    "kills": 10,
    "killsByModule": [
      {
        "kills": 10,
        "module": "F/A-18C"
      }
    ],
    "kills_ground": 3,
    "kills_helicopters": 1,
    "kills_planes": 4,
    "kills_pvp": 5,
    "kills_sams": 2,
    "kills_ships": 0,
    "landings": 3,
    "playtime": 3600,
    "takeoffs": 3,
    "teamkills": 0
  },
  "module_stats": [
    {
      "deaths": 10,
      "kdr": 3.0,
      "kills": 30,
      "module": "F/A-18C",
      "playtime": 3600
    }
  ],
  "overall": {
    "crashes": 22,
    "deaths": 30,
    "deaths_ground": 3,
    "deaths_helicopters": 3,
    "deaths_planes": 15,
    "deaths_pvp": 25,
    "deaths_sams": 8,
    "deaths_ships": 1,
    "ejections": 8,
    "kdr": 5.0,
    "kdrByModule": [
      {
        "kdr": 3.5,
        "module": "F/A-18C"
      }
    ],
    "kdr_pvp": 3.2,
    "kills": 150,
    "killsByModule": [
      {
        "kills": 50,
        "module": "F/A-18C"
      }
    ],
    "kills_ground": 50,
    "kills_helicopters": 15,
    "kills_planes": 60,
    "kills_pvp": 80,
    "kills_sams": 20,
    "kills_ships": 5,
    "landings": 270,
    "playtime": 7200,
    "takeoffs": 300,
    "teamkills": 1
  },
  "squadrons": [
    {
      "image_url": "https://example.com/squadron-logo.png",
      "name": "Red Devils"
    }
  ]
}

GET /highscore

Summary: Highscore

Description: Get highscore statistics for players

Parameters

Name Type In Required Default Description
server_name string query No - Server Name
period string query No all Period
limit int query No 10 Limit

Response: Highscore

Response Example

{
  "Air Defence": [
    {
      "date": "2025-08-07T12:00:00",
      "nick": "Player1",
      "value": 12.0
    }
  ],
  "Air Targets": [
    {
      "date": "2025-08-07T12:00:00",
      "nick": "Player1",
      "value": 42.0
    }
  ],
  "Ground Targets": [
    {
      "date": "2025-08-07T12:00:00",
      "nick": "Player1",
      "value": 55.0
    }
  ],
  "KD-Ratio": [
    {
      "date": "2025-08-07T12:00:00",
      "nick": "Player1",
      "value": 3.5
    }
  ],
  "Most Efficient Killers": [
    {
      "date": "2025-08-07T12:00:00",
      "nick": "Player1",
      "value": 15.2
    }
  ],
  "Most Wasteful Pilots": [
    {
      "date": "2025-08-07T12:00:00",
      "nick": "Player1",
      "value": 1.1
    }
  ],
  "PvP-KD-Ratio": [
    {
      "date": "2025-08-07T12:00:00",
      "nick": "Player1",
      "value": 2.5
    }
  ],
  "Ships": [
    {
      "date": "2025-08-07T12:00:00",
      "nick": "Player1",
      "value": 3.0
    }
  ],
  "playtime": [
    {
      "date": "2025-08-07T12:00:00",
      "nick": "Player1",
      "playtime": 3600
    }
  ]
}

POST /traps

Summary: Carrier Traps

Description: Get traps for players

Parameters

Name Type In Required Default Description
nick string form Yes - Nick
date string | None form No - Date
limit int | None form No 10 Limit
offset int | None form No 0 Offset
server_name string | None form No - Server Name

Request Body Content-Type: application/x-www-form-urlencoded

Response: list[TrapEntry]

Response Example

[
  {
    "comment": "Good pass",
    "grade": "OK",
    "id": 1,
    "night": false,
    "place": "CVN-73",
    "points": 100,
    "time": "2025-08-07T12:00:00",
    "trapcase": 3,
    "unit_type": "F/A-18C",
    "wire": 3
  }
]

GET /traps/img

Summary: Carrier Trap Image

Description: Get trap image for a player

Parameters

Name Type In Required Default Description
trap_id int query Yes - Trap Id

Response: string

Response Example

Binary PNG image stream (image/png)


POST /greenieboard

Summary: GreenieBoard

Description: Get a greenieboard

Parameters

Name Type In Required Default Description
date string | None form No - Date
server_name string | None form No - Server Name

Request Body Content-Type: application/x-www-form-urlencoded

Response: GreenieboardResponse

Response Example

{
  "players": [
    {
      "nick": "Player1",
      "traps": [
        {
          "comment": "Good pass",
          "grade": "OK",
          "id": 1,
          "night": false,
          "place": "CVN-73",
          "points": 100,
          "time": "2025-08-07T12:00:00",
          "trapcase": 3,
          "unit_type": "F/A-18C",
          "wire": 3
        }
      ]
    }
  ]
}

GET /events

Summary: Mission Events

Description: Get mission events for players

Parameters

Name Type In Required Default Description
ucid string query Yes - Ucid
start_time datetime query Yes - Start Time
end_time datetime query Yes - End Time
event string | None query No - Event
init_type string | None query No - Init Type
offset int | None query No 0 Offset
limit int | None query No 10 Limit

Response: list[EventEntry]

Response Example

[
  {
    "comment": "First kill of the day!",
    "event": "S_EVENT_KILL",
    "init_cat": "Airplanes",
    "init_id": "aabbccddeeffgghhiiffkk1234567890",
    "init_side": 2,
    "init_type": "FA-18C_hornet",
    "mission_id": 1,
    "place": "Over the Caucasus",
    "target_cat": "Airplanes",
    "target_id": "11223344556677889900aabbccddeeff",
    "target_side": 1,
    "target_type": "MiG-29A",
    "time": "2025-08-07T12:00:00",
    "weapon": "AIM-120C"
  }
]

GET /refuelings

Summary: Refueling Stats

Description: Get refueling stats for players

Parameters

Name Type In Required Default Description
ucid string query Yes - Ucid
module string | None query No - Module
tanker string | None query No - Tanker
start_time datetime | None query No - Start Time
end_time datetime | None query No - End Time

Response: list[RefuelingEntry]

Response Example

[
  {
    "avg_fuel": 1700.0,
    "avg_time": 30.5,
    "completed_transfers": 4,
    "fuel_taken": 8500,
    "module": "F-16C_50",
    "refuelings": 5,
    "tanker": "KC-135"
  }
]

Credits

POST /credits

Summary: Campaign Credits

Description: Get campaign credits for players

Parameters

Name Type In Required Default Description
nick string form Yes - Nick
date string | None form No - Date
campaign string | None form No - Campaign

Request Body Content-Type: application/x-www-form-urlencoded

Response: CampaignCredits

Response Example

{
  "badge": "https://example.com/rookie_badge.png",
  "credits": 1500.0,
  "id": 1,
  "name": "Summer Campaign 2025",
  "rank": "Rookie"
}

POST /squadron_credits

Summary: Squadron Credits

Description: Squadron campaign credits

Parameters

Name Type In Required Default Description
name string form Yes - Name
campaign string form No - Campaign

Request Body Content-Type: application/x-www-form-urlencoded

Response: SquadronCampaignCredit

Response Example

{
  "campaign": "Summer Campaign 2025",
  "credits": 1500.0
}

Utilities

GET /convertCoordinates

Summary: Converts the provided coordinate into multiple formats.

Description: Convert provided coordinate string into other formats.

Parameters

Name Type In Required Default Description
server_name string query Yes - Server Name
coordinates string query Yes - Coordinates

Response: ConvertCoordinates

Response Example

{
  "ddm": "N35°24.33333 E35°56.93333",
  "dms": "N 35°24'20.00\" E 035°56'56.00\"",
  "latlon": "35.40556, 35.94889",
  "meters": {
    "x": 42430,
    "y": 5719
  },
  "mgrs": "36S YE 67795 22013"
}

GET /mission/group/waypoints

Summary: Group Waypoints

Description: Get the lat/lon waypoints for a named group in the current mission.

Parameters

Name Type In Required Default Description
server_name string query Yes - Name of the server
group_name string query Yes - Name of the group to retrieve waypoints for
group_type string query Yes - Category of the group

Response: GroupWaypointsResponse

Response Example

{
  "group_name": "Tanker-1",
  "group_type": "plane",
  "waypoints": {
    "wp1": {
      "lat": 36.00001,
      "lon": 36.00001
    },
    "wp2": {
      "lat": 36.5,
      "lon": 36.5
    }
  }
}

GET /mission/group

Summary: Mission Group

Description: Get details for a single group in the current mission.

Parameters

Name Type In Required Default Description
server_name string query Yes - Name of the server
coalition string query Yes - Coalition (‘blue’, ‘red’, ‘neutral’)
group_name string query Yes - Name of the group to retrieve details for
group_type string | None query No - Optional category of the group (‘plane’, ‘helicopter’, ‘vehicle’, ‘ship’, ‘static’)

Response: MissionGroupResponse

Response Example

{
  "coalition": "blue",
  "country": "USA",
  "frequency": 251.0,
  "group_id": 1,
  "group_type": "plane",
  "hidden": false,
  "modulation": 0,
  "name": "Enfield 1",
  "start_time": 0.0,
  "task": "CAP",
  "uncontrolled": false,
  "unit_count": 1,
  "units": [
    {
      "alt": 5000.0,
      "callsign": "Enfield 1-1",
      "heading": 1.57,
      "lat": 35.12345,
      "livery_id": "16th FS",
      "lon": 36.54321,
      "name": "Enfield 1-1",
      "onboard_num": "010",
      "skill": "High",
      "speed": 220.0,
      "type": "F-16C_50",
      "unit_id": 1,
      "x": 42430.0,
      "y": 5719.0
    }
  ],
  "waypoints": [
    {
      "action": "Turning Point",
      "alt": 5000.0,
      "eta": 0.0,
      "lat": 35.12345,
      "lon": 36.54321,
      "name": "WP 1",
      "speed": 220.0,
      "type": "Turning Point",
      "x": 42430.0,
      "y": 5719.0
    }
  ]
}

GET /mission/groups

Summary: Mission Groups

Description: Get all groups in the currently running mission for a coalition.

Parameters

Name Type In Required Default Description
server_name string query Yes - Name of the server
coalition string query Yes - Coalition (‘blue’, ‘red’, ‘neutral’)
group_type string | None query No - Optional category to filter groups by (‘plane’, ‘helicopter’, ‘vehicle’, ‘ship’, ‘static’)

Response: MissionGroupsResponse

Response Example

{
  "groups": [
    {
      "group_type": "plane",
      "name": "Enfield 1",
      "task": "CAP",
      "unit_count": 1
    }
  ]
}

GET /mission/bullseyes

Summary: Mission Bullseyes

Description: Get the bullseye coordinates for blue and red coalitions in the current mission.

Parameters

Name Type In Required Default Description
server_name string query Yes - Name of the server

Response: MissionBullseyesResponse

Response Example

{
  "bullseyes": [
    {
      "coalition": "blue",
      "lat": 36.12345,
      "lng": 36.54321
    },
    {
      "coalition": "red",
      "lat": 35.98765,
      "lng": 35.45678
    }
  ]
}

GET /mission/drawings

Summary: Mission Drawings

Description: Get mission drawing objects grouped by drawing layer.

Parameters

Name Type In Required Default Description
server_name string query Yes - Name of the server

Response: MissionDrawingsResponse

Response Example

{
  "drawings": {
    "Layer 1": [
      {
        "location": {
          "lat": 36.12345,
          "lng": 36.54321
        },
        "name": "AO Boundary",
        "points": [
          {
            "lat": 36.1,
            "lng": 36.5
          },
          {
            "lat": 36.2,
            "lng": 36.6
          }
        ],
        "primitiveType": "Line"
      }
    ]
  }
}

GET /mission/unit

Summary: Mission Unit

Description: Get mission unit data including current position, loadout, navaids, and waypoints.

Parameters

Name Type In Required Default Description
server_name string query Yes - Name of the server
unit_name string query Yes - Name of the unit to retrieve

Response: MissionUnitResponse

Response Example

{
  "current_location": {
    "alt": 58.6,
    "lat": 13.58402,
    "lon": 144.93082
  },
  "fuel_percentage": 0.85,
  "group_name": "Andersen AFB Group",
  "icls": {
    "active": false
  },
  "in_air": false,
  "life": 100.0,
  "loadout": {
    "AIM-120C": {
      "count": 2,
      "displayName": "AIM-120C AMRAAM"
    }
  },
  "player_name": "PilotNick",
  "speed": 0.0,
  "tacan": {
    "active": true,
    "channel": 67,
    "modeChannel": "X"
  },
  "type": "FA-18C_hornet",
  "unit_name": "Andersen AFB_F/A-18C Lot 20_0-1",
  "waypoints": [
    {
      "alt": 3000.0,
      "lat": 13.6,
      "lng": 145.0,
      "speed": 180.0
    }
  ]
}

Instance Control

POST /instance/start

Summary: Start a server instance.

Description: Start a server.

Parameters

Name Type In Required Default Description
server_name string query Yes - Server Name

Response: ServerStartResponse

Response Example

{
  "message": "Server 'DCS Server' started.",
  "status": "success"
}

POST /instance/stop

Summary: Stop a server instance.

Description: Stop a server.

Parameters

Name Type In Required Default Description
server_name string query Yes - Server Name

Response: ServerStopResponse

Response Example

{
  "message": "Server 'DCS Server' stopped.",
  "status": "success"
}

POST /instance/restart

Summary: Restart a server instance.

Description: Restart a server.

Parameters

Name Type In Required Default Description
server_name string query Yes - Server Name

Response: ServerRestartResponse

Response Example

{
  "message": "Server 'DCS Server' restarted.",
  "status": "success"
}

Mission Control

GET /instance/missions

Summary: Mission listing for a server instance.

Description: Return all missions for a given server.

Parameters

Name Type In Required Default Description
server_name string query Yes - Server Name

Response: MissionsResponse

Response Example

{
  "count": 2,
  "missions": [
    {
      "installed": true,
      "name": "Training Mission",
      "path": "Training Mission.miz"
    },
    {
      "installed": false,
      "name": "Combat Scenario",
      "path": "scenarios/Combat Scenario.miz"
    }
  ]
}

POST /instance/mission/pause

Summary: Pause mission for a server instance.

Description: Pause the mission on a given server.

Parameters

Name Type In Required Default Description
server_name string query Yes - Server Name

Response: MissionPauseResponse

Response Example

{
  "message": "Mission on server 'DCS Server' paused.",
  "status": "success"
}

POST /instance/mission/unpause

Summary: Unpause mission for a server instance.

Description: Unpause the mission on a given server.

Parameters

Name Type In Required Default Description
server_name string query Yes - Server Name

Response: MissionUnpauseResponse

Response Example

{
  "message": "Mission on server 'DCS Server' resumed.",
  "status": "success"
}

POST /instance/mission/restart

Summary: Restart mission for a server instance.

Description: Restart the mission on a given server.

Parameters

Name Type In Required Default Description
server_name string query Yes - Server Name

Response: MissionRestartResponse

Response Example

{
  "message": "Mission on server 'DCS Server' restarted.",
  "status": "success"
}

POST /instance/mission/load

Summary: Load mission for a server instance.

Description: Load a mission on a given server.

Parameters

Name Type In Required Default Description
server_name string query Yes - Server Name
mission_name string query Yes - Mission Name

Response: MissionLoadResponse

Response Example

{
  "message": "Mission 'Training Mission.miz' loaded on server 'DCS Server'.",
  "status": "success"
}

Mission

POST /mission/upload

Summary: Upload mission file

Description: Upload a .miz mission file to the server.

Parameters

Name Type In Required Default Description
server_name string query Yes - Name of the server to upload the mission to
file string form Yes - Mission file (.miz)
filename string form Yes - Filename for the mission file (required)
load_after bool form Yes - Load mission after upload (default: False)

Request Body Content-Type: multipart/form-data

Response: MissionUploadResponse

Response Example

{
  "message": "Mission 'Training Mission.miz' uploaded to server 'DCS Server'.",
  "status": "success"
}

Schema Models Reference

Below are the data structures and response models used across the API endpoints:

Airbase

Property Type Required Description
alt float Yes Alt
code string | None No Code
id string | None No Id
lat float Yes Lat
rwy_heading int | None No Rwy Heading
lng float Yes Lng
name string Yes Name
position Position Yes -
frequencyList list[list[int]] | list[list[any]] | object | None No Frequencylist
dynamic Dynamic Yes -
runwayList list[string] | object | None No Runwaylist
coalition string | int | None No Coalition

Example

{
  "alt": 250.0,
  "coalition": 2,
  "code": "UGSB",
  "dynamic": {
    "allowHotSpawn": false,
    "dynamicSpawnAvailable": true
  },
  "frequencyList": [
    [
      131000000,
      0
    ],
    [
      260000000,
      0
    ]
  ],
  "id": "Batumi",
  "lat": 41.6166,
  "lng": 41.6,
  "name": "Batumi",
  "position": {
    "x": 76048.95,
    "y": 250.0,
    "z": 111344.92
  },
  "runwayList": [
    "13",
    "31"
  ],
  "rwy_heading": 126
}

AirbaseAtisResponse

Property Type Required Description
temp float Yes Temperature in Celsius
qfe PressureInfo | object Yes QFE pressure
qnh PressureInfo | object Yes QNH pressure
turbulence float | None No Turbulence in kts
wind WindInfo | object Yes Wind conditions in kts
preset object | None No Weather preset
clouds object | None No Cloud cover information
visibility int | None No Visibility in m
active_runways list[any] | None No Active Runways

Example

{
  "active_runways": [
    "31L"
  ],
  "clouds": {
    "base": 8000,
    "density": 4,
    "thickness": 1000
  },
  "preset": {
    "detailNoiseMapSize": 9000,
    "layers": [
      {
        "altitudeMax": 3440,
        "altitudeMin": 2520,
        "coverage": 0.418,
        "coverageMapFactor": 0,
        "coverageMapUVOffsetX": 0,
        "coverageMapUVOffsetY": 0,
        "density": 0.506,
        "densityGrad": 1.2,
        "noiseBlur": 1.5,
        "noiseFreq": 2.088,
        "shapeFactor": 0,
        "tile": 4.336
      },
      {
        "altitudeMax": 8400,
        "altitudeMin": 7560,
        "coverage": 0.469,
        "coverageMapFactor": 0,
        "coverageMapUVOffsetX": 0,
        "coverageMapUVOffsetY": 0,
        "density": 0.572,
        "densityGrad": 1.466,
        "noiseBlur": 1.303,
        "noiseFreq": 1.857,
        "shapeFactor": 0.264,
        "tile": 2.992
      },
      {
        "altitudeMax": 10920,
        "altitudeMin": 10000,
        "coverage": 0,
        "coverageMapFactor": 0,
        "coverageMapUVOffsetX": 0,
        "coverageMapUVOffsetY": 0,
        "density": 0,
        "densityGrad": 0,
        "noiseBlur": 0.27,
        "noiseFreq": 2,
        "shapeFactor": 0,
        "tile": 1
      }
    ],
    "levelMap": "bazar/effects/clouds/cloudsMap01.png",
    "precipitationPower": -1,
    "presetAltMax": 2520,
    "presetAltMin": 1260,
    "readableName": "02 ##Two Layers Few and Scattered \nMETAR: FEW/SCT 8/10 SCT 23/24",
    "readableNameShort": "Light Scattered 2",
    "thumbnailName": "Bazar/Effects/Clouds/Thumbnails/cloud_2.png",
    "visibleInGUI": true
  },
  "qfe": {
    "pressureHPA": 1013.25,
    "pressureIN": 29.92,
    "pressureMM": 760.0
  },
  "qnh": {
    "pressureHPA": 1013.25,
    "pressureIN": 29.92,
    "pressureMM": 760.0
  },
  "temp": 15.5,
  "turbulence": "None",
  "visibility": 10000,
  "wind": {
    "dir": 270.0,
    "speed": 5.2
  }
}

AirbaseCaptureResponse

Property Type Required Description
server_name string Yes Server name
airbase_name string Yes Airbase name
coalition int Yes Coalition capturing the airbase

Example

{
  "airbase_name": "Airbase Name",
  "coalition": 0,
  "server_name": "Server Name"
}

AirbaseInfoResponse

Property Type Required Description
airbase object Yes Airbase data

Example

{
  "airbase": {
    "alt": 69.475785112923,
    "auto_capture": true,
    "channel": "...",
    "coalition": 2,
    "command": "getAirbase",
    "lat": 36.371269972814,
    "lng": 36.298090184913,
    "magVar": 5.6234159795293,
    "mgrs": "37 S BA 56617 27553",
    "name": "Airbase Name",
    "parking": [
      {
        "TO_AC": false,
        "Term_Index": 9,
        "Term_Index_0": -1,
        "Term_Type": 104,
        "fDistToRW": 1641.8400878906,
        "vTerminalPos": {
          "x": 147715.125,
          "y": 69.475784301758,
          "z": 38939.109375
        }
      }
    ],
    "position": {
      "x": 148653.765625,
      "y": 69.475784301758,
      "z": 40403.9453125
    },
    "radio_silent": true,
    "runways": [
      {
        "Name": 22,
        "course": 2.3682391643524,
        "length": 2759.2866210938,
        "position": {
          "x": 147687.484375,
          "y": 69.475784301758,
          "z": 39418.7421875
        },
        "width": 60
      }
    ],
    "server_name": "Server Name",
    "unlimited": {
      "aircraft": false,
      "liquids": true,
      "weapon": false
    },
    "warehouse": {
      "aircraft": {
        "A-10C_2": 1,
        "CH-47Fbl1": 1,
        "F-14B": 1,
        "OH58D": 1
      },
      "liquids": {
        "0": 324730.28125,
        "1": 500000,
        "2": 500000,
        "3": 500000
      },
      "weapon": {
        "weapons.bombs.BEER_BOMB": 50,
        "weapons.containers.LANTIRN": 1000,
        "weapons.droptanks.Spitfire_tank_1": 1000,
        "weapons.missiles.AGM_154": 50,
        "weapons.nurs.HYDRA_70_M151_M433": 100
      }
    }
  }
}

AirbaseSetWarehouseItemResponse

Property Type Required Description
item string Yes Warehouse item name
server_name string Yes Server name
value int Yes Quantity value

Example

{
  "item": "weapons.bombs.GBU_38",
  "server_name": "Server Name",
  "value": 50
}

AirbaseWarehouseResponse

Property Type Required Description
warehouse object Yes Warehouse data
unlimited object Yes Unlimited flags

Example

{
  "unlimited": {
    "aircraft": false,
    "liquids": true,
    "weapon": false
  },
  "warehouse": {
    "aircraft": {
      "A6E": 100,
      "AH-64D_BLK_II": 5,
      "F-16C_50": 1
    },
    "liquids": {
      "0": 500000,
      "1": 500000,
      "2": 500000,
      "3": 500000
    },
    "weapon": {
      "weapons.bombs.GBU_38": 100,
      "weapons.containers.F-15E_AXQ-14_DATALINK": 100,
      "weapons.droptanks.FuelTank_350L": 100,
      "weapons.missiles.AGM_154": 100,
      "weapons.nurs.HYDRA_70_M151_M433": 100
    }
  }
}

AirbasesResponse

Property Type Required Description
airbases list[Airbase] Yes Airbases data

Example

{
  "airbases": [
    {
      "alt": 250.00025,
      "coalition": 1,
      "code": "ICAO",
      "dynamic": {
        "allowHotSpawn": false,
        "dynamicSpawnAvailable": true
      },
      "frequencyList": [
        [
          38950000,
          0
        ],
        [
          122200000,
          0
        ],
        [
          250500000,
          0
        ],
        [
          4025000,
          0
        ]
      ],
      "id": "Airbase_Name",
      "lat": 35.732306452624,
      "lng": 37.104127964423,
      "name": "Airbase Name",
      "position": {
        "x": 76048.957031,
        "y": 250.00025,
        "z": 111344.925781
      },
      "runwayList": [
        "09",
        "27"
      ],
      "rwy_heading": 274
    }
  ]
}

CampaignCredits

Property Type Required Description
id int Yes Campaign ID
name string Yes Campaign name
credits float Yes Player’s credits in this campaign
rank string | None Yes Player’s rank
badge string | None Yes Player’s badge

Example

{
  "badge": "https://example.com/rookie_badge.png",
  "credits": 1500.0,
  "id": 1,
  "name": "Summer Campaign 2025",
  "rank": "Rookie"
}

ConvertCoordinates

Property Type Required Description
latlon string Yes Latitude and Longitude in decimal degrees
mgrs string Yes Cooridnate provided, converted to MGRS
dms string Yes Cooridnate provided, converted to Decimal, Minutes, Seconds
ddm string Yes Cooridnate provided, converted to Degrees and Decimal Minutes
meters object Yes Cooridnate provided, converted to DCS Meters

Example

{
  "ddm": "N35°24.33333 E35°56.93333",
  "dms": "N 35°24'20.00\" E 035°56'56.00\"",
  "latlon": "35.40556, 35.94889",
  "meters": {
    "x": 42430,
    "y": 5719
  },
  "mgrs": "36S YE 67795 22013"
}

DailyPlayers

Property Type Required Description
date datetime Yes Date
player_count int Yes Player Count

Example

{
  "date": "2025-08-07T12:00:00",
  "player_count": 100
}

Dynamic

Property Type Required Description
dynamicSpawnAvailable bool Yes Dynamicspawnavailable
allowHotSpawn bool Yes Allowhotspawn

Example

{
  "allowHotSpawn": false,
  "dynamicSpawnAvailable": true
}

EventEntry

Property Type Required Description
mission_id int Yes Mission ID
event string Yes Event type
init_id string | None No Initiator UCID
init_side int | None No Initiator side
init_type string | None No Initiator type
init_cat string | None No Initiator category
target_id string | None No Target UCID
target_side int | None No Target side
target_type string | None No Target type
target_cat string | None No Target category
weapon string | None No Weapon used in the event
place string | None No Event location
comment string | None No Event comment
time datetime Yes Event time

Example

{
  "comment": "First kill of the day!",
  "event": "S_EVENT_KILL",
  "init_cat": "Airplanes",
  "init_id": "aabbccddeeffgghhiiffkk1234567890",
  "init_side": 2,
  "init_type": "FA-18C_hornet",
  "mission_id": 1,
  "place": "Over the Caucasus",
  "target_cat": "Airplanes",
  "target_id": "11223344556677889900aabbccddeeff",
  "target_side": 1,
  "target_type": "MiG-29A",
  "time": "2025-08-07T12:00:00",
  "weapon": "AIM-120C"
}

ExtensionInfo

Property Type Required Description
name string Yes Name
version string | None No Version
value string Yes Value

Example

{
  "name": "SRS",
  "value": "127.0.0.1:5002",
  "version": "1.9.0.0"
}

GreenieboardEntry

Property Type Required Description
nick string Yes Player name
traps list[TrapEntry] Yes List of traps for this player

Example

{
  "nick": "Player1",
  "traps": [
    {
      "comment": "Good pass",
      "grade": "OK",
      "id": 1,
      "night": false,
      "place": "CVN-73",
      "points": 100,
      "time": "2025-08-07T12:00:00",
      "trapcase": 3,
      "unit_type": "F/A-18C",
      "wire": 3
    }
  ]
}

GreenieboardResponse

Property Type Required Description
players list[GreenieboardEntry] Yes All players and their traps

Example

{
  "players": [
    {
      "nick": "Player1",
      "traps": [
        {
          "comment": "Good pass",
          "grade": "OK",
          "id": 1,
          "night": false,
          "place": "CVN-73",
          "points": 100,
          "time": "2025-08-07T12:00:00",
          "trapcase": 3,
          "unit_type": "F/A-18C",
          "wire": 3
        }
      ]
    }
  ]
}

GroupWaypointsResponse

Property Type Required Description
group_name string Yes Name of the group
group_type string Yes Type of the group
waypoints object Yes Keyed waypoint dictionary (wp1, wp2, …) with lat/lon per waypoint

Example

{
  "group_name": "Tanker-1",
  "group_type": "plane",
  "waypoints": {
    "wp1": {
      "lat": 36.00001,
      "lon": 36.00001
    },
    "wp2": {
      "lat": 36.5,
      "lon": 36.5
    }
  }
}

Highscore

Property Type Required Description
playtime list[PlaytimeEntry] No Playtime rankings
Air Targets list[HighscoreEntry] No Air kills rankings
Ships list[HighscoreEntry] No Ship kills rankings
Air Defence list[HighscoreEntry] No SAM kills rankings
Ground Targets list[HighscoreEntry] No Ground kills rankings
KD-Ratio list[HighscoreEntry] No Kill/Death ratio rankings
PvP-KD-Ratio list[HighscoreEntry] No PvP Kill/Death ratio rankings
Most Efficient Killers list[HighscoreEntry] No Kills per hour rankings
Most Wasteful Pilots list[HighscoreEntry] No Crashes per hour rankings

Example

{
  "Air Defence": [
    {
      "date": "2025-08-07T12:00:00",
      "nick": "Player1",
      "value": 12.0
    }
  ],
  "Air Targets": [
    {
      "date": "2025-08-07T12:00:00",
      "nick": "Player1",
      "value": 42.0
    }
  ],
  "Ground Targets": [
    {
      "date": "2025-08-07T12:00:00",
      "nick": "Player1",
      "value": 55.0
    }
  ],
  "KD-Ratio": [
    {
      "date": "2025-08-07T12:00:00",
      "nick": "Player1",
      "value": 3.5
    }
  ],
  "Most Efficient Killers": [
    {
      "date": "2025-08-07T12:00:00",
      "nick": "Player1",
      "value": 15.2
    }
  ],
  "Most Wasteful Pilots": [
    {
      "date": "2025-08-07T12:00:00",
      "nick": "Player1",
      "value": 1.1
    }
  ],
  "PvP-KD-Ratio": [
    {
      "date": "2025-08-07T12:00:00",
      "nick": "Player1",
      "value": 2.5
    }
  ],
  "Ships": [
    {
      "date": "2025-08-07T12:00:00",
      "nick": "Player1",
      "value": 3.0
    }
  ],
  "playtime": [
    {
      "date": "2025-08-07T12:00:00",
      "nick": "Player1",
      "playtime": 3600
    }
  ]
}

HighscoreEntry

Property Type Required Description
nick string Yes Player nickname
date datetime Yes Last seen timestamp
value string Yes Score value (varies by category)

Example

{
  "date": "2025-08-07T12:00:00",
  "nick": "Player1",
  "value": 42.0
}

LeaderBoard

Property Type Required Description
items list[TopKill] Yes Items
total_count int Yes Total Count
offset int Yes Offset

Example

{
  "items": [
    {
      "credits": 1500,
      "date": "2025-01-01T00:00:00",
      "deaths": 2,
      "deaths_pvp": 0,
      "kdr": 5.0,
      "kdr_pvp": 5.0,
      "kills": 10,
      "kills_pvp": 5,
      "nick": "Special K",
      "playtime": 7200,
      "row_num": 1
    }
  ],
  "offset": 0,
  "total_count": 1
}

LinkMeResponse

Property Type Required Description
token string | None No 4-digit token for linking DCS and Discord accounts
timestamp string | None No Expiry timestamp in ISO format
rc int Yes Return code bitmask (1=User linked, 2=Link in progress, 4=Force operation)

Example

{
  "rc": 2,
  "timestamp": "2025-08-09T12:00:00+00:00",
  "token": "1234"
}

MissionBullseye

Property Type Required Description
coalition string Yes Coalition name (‘blue’ or ‘red’)
lat float Yes Bullseye latitude in decimal degrees
lng float Yes Bullseye longitude in decimal degrees

Example

{
  "coalition": "blue",
  "lat": 36.12345,
  "lng": 36.54321
}

MissionBullseyesResponse

Property Type Required Description
bullseyes list[MissionBullseye] Yes List of coalition bullseye coordinates

Example

{
  "bullseyes": [
    {
      "coalition": "blue",
      "lat": 36.12345,
      "lng": 36.54321
    },
    {
      "coalition": "red",
      "lat": 35.98765,
      "lng": 35.45678
    }
  ]
}

MissionDrawing

Property Type Required Description
name string Yes Drawing name
primitiveType string Yes Drawing primitive type
text string | None No Optional drawing text
layerName string | None No Drawing layer name
visible bool | None No Whether drawing is visible
mapX float | None No Drawing origin X in mission meters
mapY float | None No Drawing origin Y in mission meters
colorString string | None No Stroke color as ARGB hex string
fillColorString string | None No Fill color as ARGB hex string
style string | None No Line or fill style
thickness float | int | None No Line thickness
location MissionDrawingPoint | None No Drawing anchor location
points list[MissionDrawingPoint] | None No Optional list of drawing points
lineMode string | None No Line mode (segment, segments, free)
closed bool | None No Whether line is closed
polygonMode string | None No Polygon mode (free, circle, oval, rect, arrow)
radius float | None No Radius for circle/disc polygons
r1 float | None No First oval radius
r2 float | None No Second oval radius
width float | None No Width for rectangle polygons
height float | None No Height for rectangle polygons
length float | None No Length for arrow polygons
angle float | None No Drawing rotation angle
font string | None No TextBox font file
fontSize float | int | None No TextBox font size
borderThickness float | int | None No TextBox border thickness
file string | None No Icon file name
scale float | None No Icon scale factor

Example

{
  "colorString": "0xFF0000FF",
  "fillColorString": "0x330000FF",
  "layerName": "Layer 1",
  "location": {
    "lat": 36.12345,
    "lng": 36.54321
  },
  "mapX": 147687.0,
  "mapY": 39418.0,
  "name": "AO Boundary",
  "points": [
    {
      "lat": 36.1,
      "lng": 36.5
    },
    {
      "lat": 36.2,
      "lng": 36.6
    }
  ],
  "primitiveType": "Line",
  "style": "solid",
  "text": "Restricted Area",
  "thickness": 2,
  "visible": true
}

MissionDrawingPoint

Property Type Required Description
lat float Yes Latitude in decimal degrees
lng float Yes Longitude in decimal degrees

Example

{
  "lat": 36.12345,
  "lng": 36.54321
}

MissionDrawingsResponse

Property Type Required Description
drawings object Yes Drawings keyed by layer name; each drawing contains primitive-specific fields

Example

{
  "drawings": {
    "Layer 1": [
      {
        "location": {
          "lat": 36.12345,
          "lng": 36.54321
        },
        "name": "AO Boundary",
        "points": [
          {
            "lat": 36.1,
            "lng": 36.5
          },
          {
            "lat": 36.2,
            "lng": 36.6
          }
        ],
        "primitiveType": "Line"
      }
    ]
  }
}

MissionEntry

Property Type Required Description
name string Yes Mission name without extension
path string Yes Relative path to mission file
installed bool Yes Whether mission is in the active mission list

Example

{
  "installed": true,
  "name": "Training Mission",
  "path": "Training Mission.miz"
}

MissionGroupResponse

Property Type Required Description
name string Yes Group name
group_id int | None No DCS group ID
coalition string Yes Coalition (‘blue’, ‘red’, ‘neutral’)
group_type string Yes Category of the group (‘plane’, ‘helicopter’, ‘vehicle’, ‘ship’, ‘static’)
country string | None No Country name
task string | None No Main task of the group
hidden bool | None No Whether the group is hidden on the F10 map/planner
frequency float | None No Radio frequency in MHz
modulation int | None No Modulation (0=AM, 1=FM)
start_time float | None No Group start time in seconds
uncontrolled bool | None No Whether the group is uncontrolled
unit_count int No Number of units in the group
units list[MissionGroupUnit] No Units in the group
waypoints list[MissionGroupWaypoint] No Waypoints for the group
raw object | None No Raw group mission definition table if available

Example

{
  "coalition": "blue",
  "country": "USA",
  "frequency": 251.0,
  "group_id": 1,
  "group_type": "plane",
  "hidden": false,
  "modulation": 0,
  "name": "Enfield 1",
  "start_time": 0.0,
  "task": "CAP",
  "uncontrolled": false,
  "unit_count": 1,
  "units": [
    {
      "alt": 5000.0,
      "callsign": "Enfield 1-1",
      "heading": 1.57,
      "lat": 35.12345,
      "livery_id": "16th FS",
      "lon": 36.54321,
      "name": "Enfield 1-1",
      "onboard_num": "010",
      "skill": "High",
      "speed": 220.0,
      "type": "F-16C_50",
      "unit_id": 1,
      "x": 42430.0,
      "y": 5719.0
    }
  ],
  "waypoints": [
    {
      "action": "Turning Point",
      "alt": 5000.0,
      "eta": 0.0,
      "lat": 35.12345,
      "lon": 36.54321,
      "name": "WP 1",
      "speed": 220.0,
      "type": "Turning Point",
      "x": 42430.0,
      "y": 5719.0
    }
  ]
}

MissionGroupSummary

Property Type Required Description
group_type string Yes Category of the group (‘plane’, ‘helicopter’, ‘vehicle’, ‘ship’, ‘static’)
name string Yes Group name
task string | None No Main task of the group
unit_count int No Number of units in the group

Example

{
  "group_type": "plane",
  "name": "Enfield 1",
  "task": "CAP",
  "unit_count": 1
}

MissionGroupUnit

Property Type Required Description
name string Yes Unit name
unit_id int | None No DCS unit ID
type string Yes Unit type name
skill string | None No Unit skill level (e.g. ‘Player’, ‘Client’, ‘High’)
lat float | None No Unit latitude in decimal degrees
lon float | None No Unit longitude in decimal degrees
alt float | None No Unit altitude in meters
heading float | None No Unit heading in radians
speed float | None No Unit speed in m/s
callsign string | int | object | None No Unit callsign
onboard_num string | None No Unit onboard/tail number
livery_id string | None No Unit livery ID
x float | None No DCS X coordinate in meters
y float | None No DCS Y coordinate in meters

Example

{
  "alt": 5000.0,
  "callsign": "Enfield 1-1",
  "heading": 1.57,
  "lat": 35.12345,
  "livery_id": "16th FS",
  "lon": 36.54321,
  "name": "Enfield 1-1",
  "onboard_num": "010",
  "skill": "High",
  "speed": 220.0,
  "type": "F-16C_50",
  "unit_id": 1,
  "x": 42430.0,
  "y": 5719.0
}

MissionGroupWaypoint

Property Type Required Description
name string | None No Waypoint name
lat float | None No Waypoint latitude in decimal degrees
lon float | None No Waypoint longitude in decimal degrees
alt float | None No Waypoint altitude in meters
speed float | None No Waypoint speed in m/s
action string | None No Waypoint action
type string | None No Waypoint type
eta float | None No Estimated time of arrival in seconds from mission start
x float | None No DCS X coordinate in meters
y float | None No DCS Y coordinate in meters

Example

{
  "action": "Turning Point",
  "alt": 5000.0,
  "eta": 0.0,
  "lat": 35.12345,
  "lon": 36.54321,
  "name": "WP 1",
  "speed": 220.0,
  "type": "Turning Point",
  "x": 42430.0,
  "y": 5719.0
}

MissionGroupsResponse

Property Type Required Description
groups list[MissionGroupSummary] No List of groups in the mission

Example

{
  "groups": [
    {
      "group_type": "plane",
      "name": "Enfield 1",
      "task": "CAP",
      "unit_count": 1
    }
  ]
}

MissionInfo

Property Type Required Description
name string Yes Name
uptime int Yes Uptime
date_time string Yes Date Time
theatre string Yes Theatre
blue_slots int | None No Blue Slots
blue_slots_used int | None No Blue Slots Used
red_slots int | None No Red Slots
red_slots_used int | None No Red Slots Used
restart_time int | None No Restart Time

Example

{
  "blue_slots": 20,
  "blue_slots_used": 5,
  "date_time": "2025-08-07 12:00:00",
  "name": "Training Mission",
  "red_slots": 20,
  "red_slots_used": 3,
  "restart_time": 1691424000,
  "theatre": "Caucasus",
  "uptime": 3600
}

MissionLoadResponse

Property Type Required Description
status string Yes Status of the operation
message string Yes Status message

Example

{
  "message": "Mission 'Training Mission.miz' loaded on server 'DCS Server'.",
  "status": "success"
}

MissionPauseResponse

Property Type Required Description
status string Yes Status of the operation
message string Yes Status message

Example

{
  "message": "Mission on server 'DCS Server' paused.",
  "status": "success"
}

MissionRestartResponse

Property Type Required Description
status string Yes Status of the operation
message string Yes Status message

Example

{
  "message": "Mission on server 'DCS Server' restarted.",
  "status": "success"
}

MissionUnitLoadoutItem

Property Type Required Description
displayName string Yes Display name of the weapon or store
count int Yes Remaining count

Example

{
  "count": 2,
  "displayName": "AIM-120C AMRAAM"
}

MissionUnitLocation

Property Type Required Description
lat float Yes Current latitude in decimal degrees
lon float Yes Current longitude in decimal degrees
alt float Yes Current altitude in meters

Example

{
  "alt": 58.6,
  "lat": 13.58402,
  "lon": 144.93082
}

MissionUnitNavAid

Property Type Required Description
active bool Yes Whether this navaid is active
channel int | None No Configured channel if available
modeChannel string | int | None No TACAN mode channel, if available

Example

{
  "active": true,
  "channel": 67,
  "modeChannel": "X"
}

MissionUnitResponse

Property Type Required Description
type string Yes DCS unit type name
group_name string Yes DCS group name
unit_name string Yes DCS unit name
current_location MissionUnitLocation Yes Current unit location
speed float Yes Current unit speed in m/s
fuel_percentage float | None No Current fuel fraction, where 1.0 is 100%
life float | int | None No Current unit life value
in_air bool | None No Whether the unit is currently in the air
player_name string | None No Player name occupying this unit, if any
loadout object Yes Loadout keyed by weapon type name
tacan MissionUnitNavAid Yes TACAN status and channel data
icls MissionUnitNavAid Yes ICLS status and channel data
waypoints list[MissionUnitWaypoint] | None No Mission waypoints, if available

Example

{
  "current_location": {
    "alt": 58.6,
    "lat": 13.58402,
    "lon": 144.93082
  },
  "fuel_percentage": 0.85,
  "group_name": "Andersen AFB Group",
  "icls": {
    "active": false
  },
  "in_air": false,
  "life": 100.0,
  "loadout": {
    "AIM-120C": {
      "count": 2,
      "displayName": "AIM-120C AMRAAM"
    }
  },
  "player_name": "PilotNick",
  "speed": 0.0,
  "tacan": {
    "active": true,
    "channel": 67,
    "modeChannel": "X"
  },
  "type": "FA-18C_hornet",
  "unit_name": "Andersen AFB_F/A-18C Lot 20_0-1",
  "waypoints": [
    {
      "alt": 3000.0,
      "lat": 13.6,
      "lng": 145.0,
      "speed": 180.0
    }
  ]
}

MissionUnitWaypoint

Property Type Required Description
lat float Yes Waypoint latitude in decimal degrees
lng float Yes Waypoint longitude in decimal degrees
alt float | None No Waypoint altitude in meters
speed float | None No Waypoint speed in m/s

Example

{
  "alt": 3000.0,
  "lat": 13.6,
  "lng": 145.0,
  "speed": 180.0
}

MissionUnpauseResponse

Property Type Required Description
status string Yes Status of the operation
message string Yes Status message

Example

{
  "message": "Mission on server 'DCS Server' resumed.",
  "status": "success"
}

MissionUploadResponse

Property Type Required Description
status string Yes Status of the operation
message string Yes Status message

Example

{
  "message": "Mission 'Training Mission.miz' uploaded to server 'DCS Server'.",
  "status": "success"
}

MissionsResponse

Property Type Required Description
missions list[MissionEntry] Yes List of available missions
count int Yes Total count of missions

Example

{
  "count": 2,
  "missions": [
    {
      "installed": true,
      "name": "Training Mission",
      "path": "Training Mission.miz"
    },
    {
      "installed": false,
      "name": "Combat Scenario",
      "path": "scenarios/Combat Scenario.miz"
    }
  ]
}

ModuleStats

Property Type Required Description
module string Yes Aircraft/module name
kills int | None No Number of kills with this module
deaths int | None No Number of deaths with this module
kdr string | None No Kill/Death ratio with this module
playtime int | None No Total playtime with this module in seconds

Example

{
  "deaths": 10,
  "kdr": 3.0,
  "kills": 30,
  "module": "F/A-18C",
  "playtime": 3600
}

PlayerEntry

Property Type Required Description
nick string Yes Player name
side string Yes Player side
unit_type string Yes Type of aircraft
callsign string Yes Callsign of the aircraft
radios list[int] Yes List of radios

Example

{
  "callsign": "Chevy 1-1",
  "nick": "Pilot1",
  "radios": [
    127500000,
    251000000
  ],
  "side": "blue",
  "unit_type": "FA-18C_hornet"
}

PlayerInfo

Property Type Required Description
current_server string | None No Current server
overall PlayerStats Yes Overall statistics
last_session PlayerStats Yes Statistics of the last session
module_stats list[ModuleStats] No Statistics by module
credits CampaignCredits | None No Campaign credits of this player
squadrons list[PlayerSquadron] No Squadrons the player is a member of

Example

{
  "credits": {
    "badge": "https://example.com/rookie_badge.png",
    "credits": 1500.0,
    "id": 1,
    "name": "Summer Campaign 2025",
    "rank": "Rookie"
  },
  "current_server": "DCS Server",
  "last_session": {
    "crashes": 0,
    "deaths": 2,
    "deaths_ground": 0,
    "deaths_helicopters": 0,
    "deaths_planes": 1,
    "deaths_pvp": 1,
    "deaths_sams": 1,
    "deaths_ships": 0,
    "ejections": 0,
    "kdr": 5.0,
    "kdrByModule": [
      {
        "kdr": 5.0,
        "module": "F/A-18C"
      }
    ],
    "kdr_pvp": 5.0,
    "kills": 10,
    "killsByModule": [
      {
        "kills": 10,
        "module": "F/A-18C"
      }
    ],
    "kills_ground": 3,
    "kills_helicopters": 1,
    "kills_planes": 4,
    "kills_pvp": 5,
    "kills_sams": 2,
    "kills_ships": 0,
    "landings": 3,
    "playtime": 3600,
    "takeoffs": 3,
    "teamkills": 0
  },
  "module_stats": [
    {
      "deaths": 10,
      "kdr": 3.0,
      "kills": 30,
      "module": "F/A-18C",
      "playtime": 3600
    }
  ],
  "overall": {
    "crashes": 22,
    "deaths": 30,
    "deaths_ground": 3,
    "deaths_helicopters": 3,
    "deaths_planes": 15,
    "deaths_pvp": 25,
    "deaths_sams": 8,
    "deaths_ships": 1,
    "ejections": 8,
    "kdr": 5.0,
    "kdrByModule": [
      {
        "kdr": 3.5,
        "module": "F/A-18C"
      }
    ],
    "kdr_pvp": 3.2,
    "kills": 150,
    "killsByModule": [
      {
        "kills": 50,
        "module": "F/A-18C"
      }
    ],
    "kills_ground": 50,
    "kills_helicopters": 15,
    "kills_planes": 60,
    "kills_pvp": 80,
    "kills_sams": 20,
    "kills_ships": 5,
    "landings": 270,
    "playtime": 7200,
    "takeoffs": 300,
    "teamkills": 1
  },
  "squadrons": [
    {
      "image_url": "https://example.com/squadron-logo.png",
      "name": "Red Devils"
    }
  ]
}

PlayerSquadron

Property Type Required Description
name string Yes Squadron name
image_url string Yes URL of the squadron’s image

Example

{
  "image_url": "https://example.com/squadron-logo.png",
  "name": "Red Devils"
}

PlayerStats

Property Type Required Description
playtime int Yes Total playtime in seconds
kills int Yes Total kills
deaths int Yes Total deaths
kills_pvp int Yes Total PvP kills
deaths_pvp int Yes Total PvP deaths
kills_planes int Yes Total plane kills
kills_helicopters int Yes Total helicopter kills
kills_ships int Yes Total ship kills
kills_sams int Yes Total SAM kills
kills_ground int Yes Total ground kills
deaths_planes int Yes Total plane deaths
deaths_helicopters int Yes Total helicopter deaths
deaths_ships int Yes Total ship deaths
deaths_sams int Yes Total SAM deaths
deaths_ground int Yes Total ground deaths
takeoffs int Yes Number of takeoffs
landings int Yes Number of landings
ejections int Yes Number of ejections
crashes int Yes Number of crashes
teamkills int Yes Number of team kills
kdr string Yes Kill/death ratio
kdr_pvp string Yes PvP Kill/death ratio
killsByModule list[ModuleStats] No PvP-Kills breakdown by module
kdrByModule list[ModuleStats] No PvP-KDR breakdown by module

Example

{
  "crashes": 15,
  "deaths": 20,
  "deaths_ground": 2,
  "deaths_helicopters": 2,
  "deaths_planes": 10,
  "deaths_pvp": 20,
  "deaths_sams": 5,
  "deaths_ships": 1,
  "ejections": 5,
  "kdr": 2.5,
  "kdrByModule": [
    {
      "kdr": 2.5,
      "module": "F/A-18C"
    }
  ],
  "kdr_pvp": 2.5,
  "kills": 100,
  "killsByModule": [
    {
      "kills": 30,
      "module": "F/A-18C"
    }
  ],
  "kills_ground": 30,
  "kills_helicopters": 10,
  "kills_planes": 40,
  "kills_pvp": 50,
  "kills_sams": 15,
  "kills_ships": 5,
  "landings": 180,
  "playtime": 3600,
  "takeoffs": 200,
  "teamkills": 2
}

PlaytimeEntry

Property Type Required Description
nick string Yes Player nickname
date datetime Yes Last seen timestamp
playtime int Yes Total playtime in seconds

Example

{
  "date": "2025-08-07T12:00:00",
  "nick": "Player1",
  "playtime": 3600
}

Position

Property Type Required Description
y float Yes Y
x float Yes X
z float Yes Z

Example

{
  "x": 76048.95,
  "y": 250.0,
  "z": 111344.92
}

PressureInfo

Property Type Required Description
pressureHPA float Yes Pressure in hPa
pressureMM float Yes Pressure in mmHg
pressureIN float Yes Pressure in inHg

Example

{
  "pressureHPA": 1013.25,
  "pressureIN": 29.92,
  "pressureMM": 760.0
}

RefuelingEntry

Property Type Required Description
module string Yes Aircraft
tanker string Yes Tanker used
refuelings int Yes # of refuelings
fuel_taken int Yes Fuel taken in lbs
avg_fuel float Yes Avg fuel taken per refueling
avg_time float Yes Avg time to refuel
completed_transfers int Yes Number of transfer complete

Example

{
  "avg_fuel": 1700.0,
  "avg_time": 30.5,
  "completed_transfers": 4,
  "fuel_taken": 8500,
  "module": "F-16C_50",
  "refuelings": 5,
  "tanker": "KC-135"
}

ServerAttendanceStats

Property Type Required Description
current_players int Yes Current number of active players
unique_players_24h int Yes Unique players in last 24 hours
total_playtime_hours_24h float Yes Total playtime hours in last 24 hours
discord_members_24h int Yes Discord members who played in last 24 hours
unique_players_7d int Yes Unique players in last 7 days
total_playtime_hours_7d float Yes Total playtime hours in last 7 days
discord_members_7d int Yes Discord members who played in last 7 days
unique_players_30d int Yes Unique players in last 30 days
total_playtime_hours_30d float Yes Total playtime hours in last 30 days
discord_members_30d int Yes Discord members who played in last 30 days
daily_trend list[object] No Daily unique player counts for trend analysis
top_theatres list[TopTheatre] No Top theatres by playtime
top_missions list[TopMission] No Top missions by playtime
top_modules list[TopModule] No Top modules by playtime and usage
total_sorties int | None No Total sorties flown
total_kills int | None No Total kills
total_deaths int | None No Total deaths
total_pvp_kills int | None No Total PvP kills
total_pvp_deaths int | None No Total PvP deaths

Example

{
  "current_players": 8,
  "daily_trend": [
    {
      "date": "2025-12-24",
      "unique_players": 15
    },
    {
      "date": "2025-12-25",
      "unique_players": 18
    }
  ],
  "discord_members_24h": 12,
  "discord_members_30d": 65,
  "discord_members_7d": 28,
  "top_missions": [
    {
      "mission_name": "Training Map",
      "playtime_hours": 1200
    },
    {
      "mission_name": "Combat Mission",
      "playtime_hours": 800
    }
  ],
  "top_modules": [
    {
      "module": "F/A-18C",
      "playtime_hours": 800,
      "total_uses": 127,
      "unique_players": 45
    }
  ],
  "top_theatres": [
    {
      "playtime_hours": 2500,
      "theatre": "Caucasus"
    },
    {
      "playtime_hours": 347,
      "theatre": "Syria"
    }
  ],
  "total_deaths": 567,
  "total_kills": 892,
  "total_playtime_hours_24h": 45.5,
  "total_playtime_hours_30d": 720.8,
  "total_playtime_hours_7d": 180.2,
  "total_pvp_deaths": 189,
  "total_pvp_kills": 234,
  "total_sorties": 1245,
  "unique_players_24h": 15,
  "unique_players_30d": 85,
  "unique_players_7d": 35
}

ServerInfo

Property Type Required Description
name string Yes Name of the server
description string Yes Description of the server
status string Yes Server status
address string Yes IP address and port
password string Yes Server password
restart_time datetime | None No Restart time
max_players int | None No Maximum number of players
require_pure_clients bool Yes Whether to require pure clients
require_pure_models bool Yes Whether to require pure models
require_pure_scripts bool Yes Whether to require pure scripts
require_pure_textures bool Yes Whether to require pure textures
mission MissionInfo | None No Mission info
extensions list[ExtensionInfo] No Extensions
players list[PlayerEntry] No Players
weather WeatherInfo | None No Current weather information

Example

{
  "address": "127.0.0.1:10308",
  "description": "Public Dedicated Server",
  "extensions": [
    {
      "name": "SRS",
      "value": "127.0.0.1:5002",
      "version": "1.9.0.0"
    }
  ],
  "max_players": 32,
  "mission": {
    "blue_slots": 20,
    "blue_slots_used": 5,
    "date_time": "2025-08-07 12:00:00",
    "name": "Training Mission",
    "red_slots": 20,
    "red_slots_used": 3,
    "restart_time": 1691424000,
    "theatre": "Caucasus",
    "uptime": 3600
  },
  "name": "DCS Server",
  "password": "secret",
  "players": [
    {
      "callsign": "Chevy 1-1",
      "nick": "Pilot1",
      "radios": [
        127500000,
        251000000
      ],
      "side": "blue",
      "unit_type": "FA-18C_hornet"
    }
  ],
  "require_pure_clients": true,
  "require_pure_models": true,
  "require_pure_scripts": true,
  "require_pure_textures": true,
  "restart_time": "2025-08-07T12:00:00",
  "status": "running",
  "weather": {
    "clouds_base": 8000,
    "clouds_density": 4,
    "clouds_thickness": 1000,
    "dust_enabled": false,
    "fog_enabled": false,
    "precipitation": 0,
    "pressure": 760.0,
    "temperature": 15.5,
    "visibility": 9999,
    "wind_direction": 270,
    "wind_speed": 5.2
  }
}

ServerRestartResponse

Property Type Required Description
status string Yes Status of the operation
message string Yes Status message

Example

{
  "message": "Server 'DCS Server' restarted.",
  "status": "success"
}

ServerStartResponse

Property Type Required Description
status string Yes Status of the operation
message string Yes Status message

Example

{
  "message": "Server 'DCS Server' started.",
  "status": "success"
}

ServerStats

Property Type Required Description
totalPlayers int Yes Totalplayers
avgPlaytime int Yes Avgplaytime
totalPlaytime int Yes Totalplaytime
activePlayers int Yes Activeplayers
totalSorties int Yes Totalsorties
totalKills int Yes Totalkills
totalDeaths int Yes Totaldeaths
totalPvPKills int Yes Totalpvpkills
totalPvPDeaths int Yes Totalpvpdeaths
daily_players list[DailyPlayers] Yes Daily Players

Example

{
  "activePlayers": 50,
  "avgPlaytime": 120,
  "daily_players": [
    {
      "date": "2025-08-07T12:00:00",
      "player_count": 100
    }
  ],
  "totalDeaths": 50,
  "totalKills": 100,
  "totalPlayers": 100,
  "totalPlaytime": 3600,
  "totalPvPDeaths": 20,
  "totalPvPKills": 30,
  "totalSorties": 100
}

ServerStopResponse

Property Type Required Description
status string Yes Status of the operation
message string Yes Status message

Example

{
  "message": "Server 'DCS Server' stopped.",
  "status": "success"
}

SquadronCampaignCredit

Property Type Required Description
campaign string | None No Campaign name
credits float | None No Squadron’s credits in the campaign

Example

{
  "campaign": "Summer Campaign 2025",
  "credits": 1500.0
}

SquadronInfo

Property Type Required Description
name string Yes Name of the squadron
description string Yes Description of the squadron
image_url string Yes URL to the squadron’s image
locked bool Yes Whether the squadron is locked
role string | None No Discord role name associated with the squadron
members list[UserEntry] No Members

Example

{
  "description": "Elite Fighter Squadron",
  "image_url": "https://example.com/squadron-logo.png",
  "locked": true,
  "members": [
    {
      "current_server": "My Fancy Server",
      "date": "2025-08-07T12:00:00",
      "discord_id": 123456789012345678,
      "nick": "Player1",
      "ucid": "aabbccddeeffgghhiiffkk1234567890"
    }
  ],
  "name": "Red Devils",
  "role": "Squadron Leader"
}

TopKill

Property Type Required Description
row_num int Yes Row number
nick string Yes Player’s nickname
date datetime Yes Last seen date of that player in ISO-format
kills int Yes Number of kills
deaths int Yes Number of deaths
kdr float Yes Kill/Death ratio
kills_pvp int Yes Number of kills in PvP
deaths_pvp int Yes Number of deaths in PvP
kdr_pvp float Yes Kill/Death ratio in PvP
playtime int Yes Total playtime in seconds
credits int Yes Total credits earned

Example

{
  "credits": 1500,
  "date": "2025-01-01T00:00:00",
  "deaths": 2,
  "deaths_pvp": 0,
  "kdr": 5.0,
  "kdr_pvp": 5.0,
  "kills": 10,
  "kills_pvp": 5,
  "nick": "Special K",
  "playtime": 7200,
  "row_num": 1
}

TopMission

Property Type Required Description
mission_name string Yes Mission Name
playtime_hours int Yes Playtime Hours

Example

{
  "mission_name": "Training Map",
  "playtime_hours": 1200
}

TopModule

Property Type Required Description
module string Yes Module
playtime_hours int Yes Playtime Hours
unique_players int Yes Unique Players
total_uses int Yes Total Uses

Example

{
  "module": "F/A-18C",
  "playtime_hours": 800,
  "total_uses": 127,
  "unique_players": 45
}

TopTheatre

Property Type Required Description
theatre string Yes Theatre
playtime_hours int Yes Playtime Hours

Example

{
  "playtime_hours": 2500,
  "theatre": "Caucasus"
}

TrapEntry

Property Type Required Description
id int Yes Trap ID
unit_type string Yes Type of aircraft
grade string Yes Landing grade
comment string Yes Landing comment
place string Yes Landing location
trapcase int Yes Trap case number
wire int | None Yes Arresting wire number
night bool Yes Whether landing was at night
points int Yes Points awarded for the trap
time datetime Yes Time of the trap

Example

{
  "comment": "Good pass",
  "grade": "OK",
  "id": 1,
  "night": false,
  "place": "CVN-73",
  "points": 100,
  "time": "2025-08-07T12:00:00",
  "trapcase": 3,
  "unit_type": "F/A-18C",
  "wire": 3
}

Trueskill

Property Type Required Description
nick string Yes Player’s nickname
date datetime Yes Last seen date of that player in ISO-format
kills_pvp int Yes Number of PvP kills
deaths_pvp int Yes Number of deaths by other players
TrueSkill float Yes TrueSkill:tm: Rating of that player

Example

{
  "TrueSkill": 18.6,
  "date": "2025-01-01T00:00:00",
  "deaths_pvp": 2,
  "kills_pvp": 10,
  "nick": "Special K"
}

UserEntry

Property Type Required Description
ucid string Yes DCS account ID
discord_id int Yes Discord user ID
nick string Yes Player nickname
date datetime Yes Last seen timestamp
current_server string | None No Current server

Example

{
  "current_server": "My Fancy Server",
  "date": "2025-08-07T12:00:00",
  "discord_id": 123456789012345678,
  "nick": "Player1",
  "ucid": "aabbccddeeffgghhiiffkk1234567890"
}

WeaponPK

Property Type Required Description
weapon string Yes Weapon type
shots int Yes Number of shots fired
hits int Yes Number of hits
pk string Yes Probability of killing

Example

{
  "hits": 10,
  "pk": 0.5,
  "shots": 20,
  "weapon": "AIM-120C"
}

WeatherInfo

Property Type Required Description
temperature float | None No Temperature in Celsius
wind_speed float | None No Wind speed in kts
wind_direction int | None No Wind direction in degrees
turbulence float | None No Turbulence at ground in kts
pressure float | None No Atmospheric pressure in mmHg
clouds_base int | None No Cloud base altitude in feet
clouds_density int | None No Cloud density (0-10)
clouds_thickness int | None No Cloud thickness in feet
precipitation int | None No Precipitation type (0=none, 1=rain, 2=thunderstorm, 3=snow)
fog_enabled bool | None No Fog enabled
dust_enabled bool | None No Dust storm enabled
visibility int | None No Visibility in meters

Example

{
  "clouds_base": 8000,
  "clouds_density": 4,
  "clouds_thickness": 1000,
  "dust_enabled": false,
  "fog_enabled": false,
  "precipitation": 0,
  "pressure": 760.0,
  "temperature": 15.5,
  "visibility": 9999,
  "wind_direction": 270,
  "wind_speed": 5.2
}

WindInfo

Property Type Required Description
speed float Yes Wind speed in m/s
dir float Yes Wind direction in degrees

Example

{
  "dir": 270.0,
  "speed": 5.2
}