Public stash tab API

From Path of Exile Wiki
Jump to navigation Jump to search

This page contains development information and is intended for developers and not regular end users.

This article needs to be updated.

Reason: Editors, please determine whether this article needs to be updated! Notice added on December 20, 2022 with no reason given.

Please update this article to reflect newly available information.

Public stash tab API is a basic JSON interface to obtain information relevant for general trade using Premium Stash Tabs for PC clients. Basically the interface serves global update information (considerable as an update-"stream") on any public stash tabs recognized by the game servers.

API doesn't contain any historical data and always returns the current state of stash tabs.[1]

Using ajax from a browser got blocked by CORS, you need to setup a basic proxy to fetch it.



The JSON data is prefixed with the field "next_change_id" If you want the next page of update information append the next_change_id to the URL:

For example:

Rate Limit

curl -XGET -s -D - | grep -i 'x-rate-limit'


Official Docs


The subsections follow the format of the json.

Key Value description Type
next_change_id string
stashes See below array[assoc]


Key Value description Type
accountName account name the stash linked to. Can be null. string/null
lastCharacterName last character name of the player. Can be null. string/null
id unique stash id string
stash stash name. Can be null string/null
stashType NormalStash/PremiumStash/QuadStash/EssenceStash/CurrencyStash/MapStash/FragmentStash/DivinationCardStash string
items See below, items included in this stash array[assoc]
public public or not bool
league Standard/Hardcore/ string/null


items array may empty if user make stash private or league end.

Key Value description Type Key always present
abyssJewel bool no
additionalProperties See properties array[assoc] no
artFilename Divination Card string no
category maps, currency, jewels, gems, cards, flasks or category object (explained below) string/array[assoc] yes
corrupted bool no
cosmeticMods string array no
craftedMods master mods string array no
descrText description text string no
duplicated bool no
elder item was dropped in elder map bool no
enchantMods labyrinth mods string array no
explicitMods Mods under the line string array no
flavourText string array no
frameType See below integer yes
h slot height integer yes
icon item picture art url string yes
id item id, will NOT change if you use currency on it string yes
identified bool yes
ilvl item level integer yes
implicitMods Mods above the line string array no
inventoryId slot. 'Stash25', 'Stash3', etc. string no
isRelic bool no
league Standard/Hardcore/ string yes
lockedToCharacter bool no
maxStackSize integer no
name unique name string yes
nextLevelRequirements See requirements array[assoc] no
note Mostly item price string no
properties See below array[assoc] no
prophecyDiffText prophecy difficulty text string no
prophecyText string no
requirements See below array[assoc] no
secDescrText second description text string no
shaper item was dropped in shaper map bool no
socketedItems See items array[assoc] no
sockets See below, array of sockets array[assoc] no
stackSize integer no
support bool no
talismanTier integer no
typeLine item base type, mixed with affix name for magic/rare string yes
utilityMods flask utility mods string array no
verified bool yes
w slot width integer yes
x stash position x integer yes
y stash position y integer yes
'^[\\s]RaceReward$' Rare flag for race reward items. There can be few of them, so key is 'regular expression', instead of string bool no


Each array contains only one string.

Key Value description Type
accessories amulet, belt or ring array[string]
armour helmet, gloves, chest, shield, quiver, boots array[string]
jewels abyss array[string]
weapons twosword, bow, dagger, staff, claw, onesword, wand, oneaxe, twoaxe, sceptre, onemace, twomace array[string]


Key Value description Type
group group id integer
attr S, I, D, G, false (type is boolean for abyss). Stands for str, int, dex, generic?. G - white socket. string/boolean
sColour G, W, R, B, A. Stands for: green, white, red, blue, abyss (though not a colour but type). string


Key Value description Type
name string
values array[0] is value, array[1] is valueTypes array
  • 0 means name should go before the values.[2]
  • 1 means the values should go after the name.
  • 2 is a progress bar (for skill gem experience).
  • 3 means that the name should have occurrences of {0}, {1}, etc replaced with the values.
type properties type integer
progress additionalProperties's Experience integer


Key Value description
0 white, or physical
1 blue for modified value
4 fire
5 cold
6 lightning
7 chaos


Key Value description
0 normal
1 magic
2 rare
3 unique
4 gem
5 currency
6 divination card
7 quest item
8 prophecy
9 relic

Further information and reading

Latest ID

If you want the most recent data you'll have to start from the end of the river.

Version history

Version Changes
  • Introduced to the game.


  1. Novynn (October 4, 2016). "Development Manifesto: 2.3.0 Balance". Path of Exile Dev subreddit. Retrieved October 4, 2016.
  2. -Dargs (July 29, 2017). "The public-stash-tabs api is a good interim solution to trading problems, but it is lacking in a one thing... documentation". Path of Exile subreddit. Retrieved March 19, 2020.