ExileData
Path of Exile 1 & 2

Game data for Path of Exile tools.

ExileData turns each game patch into a normalized, versioned dataset. Query it through an HTTP API, or download the whole patch as JSON files. Your tool reads records instead of parsing game files.

Preview · API keys are issued by hand · Downloads need no key

Request api.exiledata.dev
$ curl -H "x-api-key: exd_…" \
    "https://api.exiledata.dev/v1/poe2/bases?itemClass=Amulet&limit=1"
{
  "data": [{
    "id": "Metadata/Items/Amulets/FourAmulet1",
    "name": "Crimson Amulet",
    "itemClass": "Amulet",
    "version": { "schemaVersion": "0.2.0", "game": "poe2", "gameVersion": "0.5.5.4" },
    "ext": {
      "drop_level": 1,
      "implicit_text": ["(2-4) Life Regeneration per second"],
      "tags": ["amulet", "default"],
      …
    }
  }],
  "meta": { "game": "poe2", "gameVersion": "0.5.5.4", "total": 25 }
}

A real response, shortened. meta.gameVersion names the patch that answered, so you can pin to it.

What you get

One dataset per patch

Every game patch becomes its own dataset. Ask for one with ?version=0.5.5.4 or take the latest, and each response names the patch it came from.

Both games

Path of Exile 1 and 2 are built from their own game files into separate datasets. They share one schema, so the same code reads both.

Built from the game files

Data is extracted from the game client ahead of time. Nothing is scraped from other sites, and a request never waits on a third party.

Stable fields, raw fields

Fields ExileData guarantees sit at the top of each record. Everything else from the game files stays in ext under its original name, so nothing is lost.

Per-key rate limits

Each key has its own per-minute limit. Every response says how many requests are left, and a 429 says how long to wait.

Available today

The API serves base items for both games, with items, mods, gems and skills next. The downloads hold every data file of each patch, including mods, skills, uniques and the passive trees.