# Foxhole

> Read live Foxhole World Conquest data through the keyless public War API: the current war state, the active regions, each region's war report (enlistments and casualties), and each region's static and live map data. Covers the Live worlds and the dev world. No account or API key required.

App · Gaming · 5 actions. Web page: https://docs.lodol.com/docs/integrations/foxhole

## Actions

### Get region live map

Get a region's live (dynamic) map data: the team-controlled structures on the map (bases, fields, and facilities), each with its controlling faction, icon type, position, and flags.

**Inputs**

- Server (`shard`, text): Which Foxhole world (shard) to read. Live Server 1 is the busiest world and the default. One of: `live1` (Live: Server 1), `live2` (Live: Server 2), `live3` (Live: Server 3), `dev` (Development). Default: `live1`.
- Region (`map_name`, text, required): The region (hex) to read. Pick one from the selected server's active war, or reference a region name from a previous step.

**Outputs**

- `mapData` (object)

**Example output**

```json
{
  "mapData": {
    "lastUpdated": 1786588423660,
    "mapItems": [
      {
        "flags": 33,
        "iconType": 56,
        "teamId": "WARDENS",
        "viewDirection": 0,
        "x": 0.63364553,
        "y": 0.8568045
      },
      {
        "flags": 1,
        "iconType": 57,
        "teamId": "COLONIALS",
        "viewDirection": 0,
        "x": 0.37816164,
        "y": 0.51045084
      }
    ],
    "mapItemsC": [],
    "mapItemsW": [],
    "mapTextItems": [],
    "regionId": 38,
    "scorchedVictoryTowns": 0,
    "version": 106
  }
}
```

### Get region map labels

Get a region's static map data: its named locations (towns, forts, relics) with their positions and Major/Minor marker type. These stay fixed for the war.

**Inputs**

- Server (`shard`, text): Which Foxhole world (shard) to read. Live Server 1 is the busiest world and the default. One of: `live1` (Live: Server 1), `live2` (Live: Server 2), `live3` (Live: Server 3), `dev` (Development). Default: `live1`.
- Region (`map_name`, text, required): The region (hex) to read. Pick one from the selected server's active war, or reference a region name from a previous step.

**Outputs**

- `mapData` (object)

**Example output**

```json
{
  "mapData": {
    "lastUpdated": 1786588423660,
    "mapItems": [],
    "mapItemsC": [],
    "mapItemsW": [],
    "mapTextItems": [
      {
        "mapMarkerType": "Major",
        "text": "Fort Barley",
        "x": 0.4517946,
        "y": 0.36775875
      },
      {
        "mapMarkerType": "Minor",
        "text": "Captain's Dread",
        "x": 0.69483316,
        "y": 0.23571695
      }
    ],
    "regionId": 38,
    "scorchedVictoryTowns": 0,
    "version": 106
  }
}
```

### Get region war report

Get the war report for one region: total enlistments, Colonial and Warden casualties, and the current day of the war.

**Inputs**

- Server (`shard`, text): Which Foxhole world (shard) to read. Live Server 1 is the busiest world and the default. One of: `live1` (Live: Server 1), `live2` (Live: Server 2), `live3` (Live: Server 3), `dev` (Development). Default: `live1`.
- Region (`map_name`, text, required): The region (hex) to read. Pick one from the selected server's active war, or reference a region name from a previous step.

**Outputs**

- `warReport` (object)

**Example output**

```json
{
  "warReport": {
    "colonialCasualties": 1,
    "dayOfWar": 39,
    "totalEnlistments": 104,
    "version": 99,
    "wardenCasualties": 20
  }
}
```

### Get war state

Get the current war on a server: its war number, the winning faction (if it has ended), and the conquest start/end times.

**Inputs**

- Server (`shard`, text): Which Foxhole world (shard) to read. Live Server 1 is the busiest world and the default. One of: `live1` (Live: Server 1), `live2` (Live: Server 2), `live3` (Live: Server 3), `dev` (Development). Default: `live1`.

**Outputs**

- `war` (object)

**Example output**

```json
{
  "war": {
    "conquestEndTime": null,
    "conquestStartTime": 1786467601848,
    "requiredVictoryTowns": 32,
    "resistanceStartTime": null,
    "scheduledConquestEndTime": 1786986000000,
    "shortRequiredVictoryTowns": 27,
    "warId": "83850b20-9ed4-4651-a214-67abe0ca5388",
    "warNumber": 138,
    "winner": "NONE"
  }
}
```

### List active regions

List the regions (hexes) active in the current war on a server. Each entry has the internal name used by the other actions and a friendly label.

**Inputs**

- Server (`shard`, text): Which Foxhole world (shard) to read. Live Server 1 is the busiest world and the default. One of: `live1` (Live: Server 1), `live2` (Live: Server 2), `live3` (Live: Server 3), `dev` (Development). Default: `live1`.

**Outputs**

- `maps` (list)

**Example output**

```json
{
  "maps": [
    {
      "label": "The Fingers",
      "name": "TheFingersHex"
    },
    {
      "label": "Mooring County",
      "name": "MooringCountyHex"
    },
    {
      "label": "Marban Hollow",
      "name": "MarbanHollow"
    }
  ]
}
```
