API Reference

What is supported

The economy overview endpoints documented on this page are the supported public surface of the poe.ninja API. They cover economy pricing for Path of Exile 1 and Path of Exile 2.

None of it is secret, either. With thanks to community moderator cdr, who has patiently told half the community to just press F12 and read these requests off the Network tab.

What is not allowed

The builds / profiles API, and every other non-economy endpoint (character, Path of Building, authentication), are internal. They are undocumented, unsupported, and not available for third-party use, and they may change or break at any time.

If you've reached out about building on the builds / profiles API: it's nothing personal, and it's not that your idea isn't a good one. We get a lot of these requests, and that number has risen sharply as AI-assisted development has taken off. Apps that behave badly against the builds / profiles API regularly cause serious load problems. The builds / profiles API is closed for two concrete reasons:

  • It is significantly more performance-intensive to serve than economy data, and when it gets overloaded it causes real, time-consuming problems for keeping the site running.
  • Many players deliberately hide their characters or make their profiles private, and they change these settings frequently, for example to hide a specific character. Serving that data to third parties directly would bypass that privacy choice.

Clients that misbehave against these endpoints, or make excessive use of the economy endpoints, will be blocked.

Looking for an official data feed?
Grinding Gear Games offers an official API you can apply for. See the GGG developer docs.

No stability guarantee

This API exists to run the poe.ninja website, not as a product. Public access to the economy endpoints is allowed but incidental. "Supported public surface" means you are allowed to use it, not that it is stable. There is no versioning and no SLA, and breaking changes can happen to the economy endpoints without notice. In practice, because we know these endpoints are used externally, we usually keep them stable and provide redirects when routes move, but treat that as best effort rather than a promise.

If you are building an app

Desktop apps and other clients should proxy these requests through their own backend rather than calling the endpoints directly from end-user machines. That lets you cache responses, set a proper User-Agent, and control request volume instead of pushing per-user traffic straight at us.

Usage guidelines

  • Responses are HTTP-cached (roughly 5 minutes, ETag-based). Use conditional requests and respect the cache headers; do not bypass caching.
  • The underlying data refreshes infrequently (PoE 1 overviews roughly every 15 minutes, PoE 2 roughly hourly), so polling faster than a few minutes wastes bandwidth for no fresher data.
  • Send a descriptive User-Agent that identifies your app and a contact.
  • Be reasonable with concurrency and volume; this is a community resource.
  • Don't use the API to directly replicate the site. Use it to build something new and exciting.
Endpoints
Economy leagues

Lists the active economy leagues as a plain array. The first entry is the current temporary challenge league; use its id as the league parameter on the other endpoints.

PoE 1 GET /poe1/api/economy/leagues
PoE 2 GET /poe2/api/economy/leagues

Response [] EconomyLeagueDto

Field Description
id League identifier. Pass this as the league query parameter on the other endpoints.
name Human-readable league name.
Exchange overview

Currency-exchange pricing for a category, shared by both games with the same response shape.

PoE 1 GET /poe1/api/economy/exchange/current/overview ?league={league}&type={type}
PoE 2 GET /poe2/api/economy/exchange/current/overview ?league={league}&type={type}

Query parameters

Parameter Description
league A league id from the economy leagues endpoint (for example, the current challenge league).
type The category to fetch. Accepted values per game are listed below.

Accepted type values

PoE 1

Value Category
Currency Currency
Fragment Fragments
Runegraft Runegrafts
AllflameEmber Allflame Embers
Tattoo Tattoos
Omen Omens
DjinnCoin Djinn Coins
DivinationCard Divination Cards
Artifact Artifacts
Oil Oils
DeliriumOrb Delirium Orbs
Scarab Scarabs
Astrolabe Astrolabes
Fossil Fossils
Resonator Resonators
Essence Essences

PoE 2

Value Category
Currency Currency
Fragments Fragments
Abyss Abyssal Bones
UncutGems Uncut Gems
LineageSupportGems Lineage Gems
Essences Essences
SoulCores Soul Cores
Idols Idols
Runes Runes
Ritual Omens
Expedition Expedition
Delirium Liquid Emotions
Breach Catalysts
Verisium Verisium

Response lines[] CurrencyExchangeOverviewLineDto

Field Description
id Stable identifier for the traded currency within this overview.
primaryValue Price expressed in the primary reference currency (see core.primary).
volumePrimaryValue Traded volume expressed in the primary reference currency.
maxVolumeCurrency The paired currency with the highest observed trade volume.
maxVolumeRate Exchange rate against the highest-volume paired currency.
sparkline Recent price-trend samples for the highest-volume pair.

Response core CurrencyExchangeEconomyCoreDto

Field Description
primary Primary reference currency that line values are quoted in.
secondary Secondary reference currency used for cross-rates.
rates Map of currency id to its rate against the primary reference currency.
items Metadata (names, icons) for the currencies referenced by id.
Stash item overview

Stash-based item pricing for a category. The response shape differs per game.

PoE 1 GET /poe1/api/economy/stash/current/item/overview ?league={league}&type={type}
PoE 2 GET /poe2/api/economy/stash/current/item/overview ?league={league}&type={type}

Query parameters

Parameter Description
league A league id from the economy leagues endpoint (for example, the current challenge league).
type The category to fetch. Accepted values per game are listed below.

Accepted type values

PoE 1

Value Category
Wombgift Wombgifts
Incubator Incubators
UniqueWeapon Unique Weapons
UniqueArmour Unique Armours
UniqueAccessory Unique Accessories
UniqueFlask Unique Flasks
UniqueJewel Unique Jewels
ForbiddenJewel Forbidden Jewels
ShrineBelt Shrine Belts
UniqueTincture Unique Tinctures
UniqueRelic Unique Relics
SkillGem Skill Gems
ImbuedGem Imbued Gems
ClusterJewel Cluster Jewels
Map Maps
BlightedMap Blighted Maps
BlightRavagedMap Blight-ravaged Maps
UniqueMap Unique Maps
ValdoMap Valdo Maps
Invitation Invitations
Memory Memories
IncursionTemple Temples
BaseType Base Types
Beast Beasts
Vial Vials

PoE 2

Value Category
UniqueWeapons Unique Weapons
UniqueArmours Unique Armours
UniqueAccessories Unique Accessories
UniqueFlasks Unique Flasks
UniqueCharms Unique Charms
UniqueJewels Unique Jewels
UniqueSanctumRelics Unique Relics
UniqueTablets Unique Tablets
PrecursorTablets Precursor Tablets

Response PoE 1 lines[] ItemOverviewLineModel

Field Description
id Numeric identifier for the item line.
name Item name.
baseType Base type of the item.
detailsId Slug used to look up the item on its detail page.
chaosValue Estimated value in Chaos Orbs.
divineValue Estimated value in Divine Orbs.
variant Variant discriminator for uniques with multiple rolls.
corrupted Whether the priced item is corrupted.
links Linked-socket count the price applies to, where relevant.
count Number of observations backing the price.
listingCount Number of current listings backing the price.
icon Item icon URL.
sparkLine Recent price-trend samples.

Response PoE 2 lines[] Poe2ItemOverviewLineDto

Field Description
id Numeric identifier for the item line.
itemId Stable item identifier.
detailsId Slug used to look up the item on its detail page.
name Item name.
baseType Base type of the item.
variant Variant discriminator for uniques with multiple rolls.
category Category the item belongs to.
primaryValue Estimated value in the league's primary reference currency.
listingCount Number of current listings backing the price.
corrupted Whether the priced item is corrupted.
levelRequired Character level required to equip the item.
icon Item icon URL.
sparkLine Recent price-trend samples.
Stash currency overview (PoE 1 only)

Stash-based currency pricing for a category. This endpoint exists for Path of Exile 1 only; PoE 2 currency is served through the exchange overview.

PoE 1 GET /poe1/api/economy/stash/current/currency/overview ?league={league}&type={type}

Query parameters

Parameter Description
league A league id from the economy leagues endpoint (for example, the current challenge league).
type The category to fetch. Accepted values per game are listed below.

Accepted type values

PoE 1

Value Category
Currency Currency
Fragment Fragments

Response lines[] CurrencyOverviewLineModel

Field Description
currencyTypeName Currency name.
detailsId Slug used to look up the currency on its detail page.
chaosEquivalent Estimated value in Chaos Orbs.
pay Pay-side data point (what you give to obtain Chaos).
receive Receive-side data point (what you get for Chaos).
paySparkLine Recent pay-side price-trend samples.
receiveSparkLine Recent receive-side price-trend samples.

Response currencyDetails[] CurrencyDetailsModel

Field Description
id Numeric identifier, joined to a line's detailsId lookups.
name Currency name.
icon Currency icon URL.
tradeId Identifier used by the official trade site, where available.