App-Preisliste
Endpunkt
Dieser Endpunkt gibt eine umfassende, vorgefertigte Preisliste für jedes getrackte Market-Item einer bestimmten Steam-App zurück — einschließlich aktueller Preis-Summaries, Volumen, Order-Book-Tiefe, Signals und Flags. Er ist für Bulk-Consumer gedacht (zum Beispiel um einen lokalen Preis-Cache für den gesamten Markt einer App zu synchronisieren).
Der Endpunkt leitet weiter (HTTP 302) auf eine vorgefertigte JSON-Datei im CDN von SteamApis. Der genaue Inhalt dieser Datei hängt von deinem aktiven History-Plan ab — Pläne mit mehr History bieten tiefere prices-Fenster (zum Beispiel 180d und all). Dein HTTP-Client sollte Redirects automatisch folgen.
{ "success": true, "result": {...} }-Envelope eingepackt. Die oberste Ebene der umgeleiteten Datei ist direkt { metadata, items }.Erforderliche Parameter
Authentifizierung
Übergib deinen API-Schlüssel als x-api-key Request-Header.
x-api-key: YourSecretAPIKey
Antwortstruktur
Die umgeleitete Datei hat zwei Top-Level-Keys:
| Feld | Typ | Beschreibung |
|---|---|---|
metadata | object | Informationen zum Snapshot. Siehe Felder unten. |
items | array | Liste der Item-Einträge. Siehe Felder unten. |
Metadata-Felder
| Feld | Typ | Beschreibung |
|---|---|---|
appId | number | Die Steam-Applikations-ID, für die die Liste generiert wurde. |
itemCount | number | Anzahl der Einträge in items. |
generatedAt | number | Unix-Zeitstempel (ms) der Snapshot-Generierung. |
version | number | Snapshot-Schema-Version. |
Item-Felder
| Feld | Typ | Beschreibung |
|---|---|---|
nameId | number | Interne numerische Item-ID von SteamApis. |
marketName | string | Market-Anzeigename des Items. |
marketHashName | string | Market-Hashname (kanonische URL-sichere Form). |
firstSeen | number | Unix-Zeitstempel (ms) der ersten Beobachtung auf dem Market. |
lastSale | number | Unix-Zeitstempel (ms) des letzten erfassten Verkaufs. |
prices | object | Preis-Summaries für verschiedene Zeitfenster. Siehe unten. |
volume | object | Verkaufsvolumen pro Zeitfenster. Siehe unten. |
orderBook | object | Snapshot des aktuellen Order Books. Siehe unten. |
signals | object | Abgeleitete Signals zum Markt-Zustand. Siehe unten. |
flags | object | Boolean-Flags zum Item. Siehe unten. |
updatedAt | number | Unix-Zeitstempel (ms) der letzten Aktualisierung dieses Eintrags. |
prices
Indiziert nach Zeitfenster: recent, 7d, 30d, 90d, 180d, all. Die Verfügbarkeit längerer Fenster hängt von deinem History-Plan ab. Jedes Fenster ist ein Objekt:
| Feld | Typ | Beschreibung |
|---|---|---|
min | number | null | Niedrigster Verkaufspreis im Fenster. null, wenn keine Verkäufe. |
max | number | null | Höchster Verkaufspreis im Fenster. |
median | number | null | Median-Verkaufspreis im Fenster. |
safe | number | null | Konservative "safe"-Preisschätzung (gefilterter Median, robust gegen Ausreißer). |
ewma | number | Exponentiell gewichteter gleitender Mittelwert. In den meisten Fenstern außer recent vorhanden. |
avg | number | Durchschnittlicher Verkaufspreis. Im Fenster all vorhanden. |
latest | number | Zuletzt beobachteter Verkaufspreis. Im Fenster all vorhanden. |
volume
Anzahl beobachteter Verkäufe pro Fenster:
| Feld | Typ | Beschreibung |
|---|---|---|
recent | number | Verkäufe im letzten Tick. |
7d / 30d / 90d / 180d | number | Verkäufe in den jeweiligen rollierenden Fenstern. |
all | number | Insgesamt beobachtete Verkäufe. |
orderBook
| Feld | Typ | Beschreibung |
|---|---|---|
highestBuy | number | Höchster aktueller Buy-Order-Preis. |
lowestSell | number | Niedrigster aktueller Sell-Order-Preis. |
spread | number | lowestSell - highestBuy. |
spreadPct | number | Spread als Prozentsatz von lowestSell. |
buyDepth | number | Gesamte Einheiten über alle Buy Orders. |
sellDepth | number | Gesamte Einheiten über alle Sell Orders. |
buyOrdersTop10 | array | Bis zu 10 höchstpreisige Buy Orders als { price, quantity }. |
sellOrdersTop10 | array | Bis zu 10 niedrigstpreisige Sell Orders als { price, quantity }. |
imbalanceRatio | number | buyDepth / sellDepth. |
histogramAgeSeconds | number | Alter des zugrunde liegenden Order-Book-Histograms in Sekunden. |
signals
| Feld | Typ | Beschreibung |
|---|---|---|
confidence | string | low, medium oder high. |
confidenceScore | number | Numerische Confidence in [0, 1]. |
stale | boolean | Ob die Daten als veraltet gelten. |
unstable | boolean | Ob das Signal aktuell instabil ist. |
unstableReasons | array | String-Codes (zum Beispiel "LOW_VOLUME"). |
volatility | number | Aktuelle Volatilitätsmessung. |
volatility30d | number | 30-Tage-Volatilitätsmessung. |
liquidity | string | low, medium oder high. |
manipulationRisk | string | none, low, medium oder high. |
manipulationFlags | array | String-Codes (zum Beispiel "PRICE_DROP", "WIDE_SPREAD"). |
priceMomentum7d | number | 7-Tage-Preismomentum. |
volumeTrend | string | stable, declining, rising. |
flags
| Feld | Typ | Beschreibung |
|---|---|---|
commodity | boolean | Ob Steam das Item als Commodity (fungibler Stack) behandelt. |
tradable | boolean | Ob das Item getradet werden kann. |
marketable | boolean | Ob das Item auf dem Market gelistet werden kann. |
Antwortbeispiel
Beispielausgabe für diesen Endpunkt. Zur Übersichtlichkeit wurden die meisten Items weggelassen und einige Fenster pro Item gekürzt.
{
"metadata": {
"appId": 252490,
"itemCount": 5215,
"generatedAt": 1776562202287,
"version": 2
},
"items": [
{
"nameId": 74287236,
"marketName": "60's Army Jacket",
"marketHashName": "60's Army Jacket",
"firstSeen": 1444341600000,
"lastSale": 1776459600000,
"prices": {
"recent": { "min": 14.89, "max": 14.89, "median": 14.89, "safe": 12.65 },
"7d": { "min": 12.548, "max": 15.887, "median": 14.9, "safe": 13.07, "ewma": 15.01 },
"30d": { "min": 1.49, "max": 17.22, "median": 14.87, "safe": 12.74, "ewma": 14.5 },
"all": { "latest": 14.89, "min": 1.49, "max": 21.369, "avg": 7.23, "median": 5.55, "safe": 5.31, "ewma": 14.91 }
},
"volume": { "recent": 1, "7d": 9, "30d": 43, "90d": 114, "180d": 238, "all": 9513 },
"orderBook": {
"highestBuy": 12.62,
"lowestSell": 15.96,
"spread": 3.34,
"spreadPct": 23.37,
"buyDepth": 9853,
"sellDepth": 110,
"buyOrdersTop10": [
{ "price": 12.62, "quantity": 1 },
{ "price": 12.58, "quantity": 2 }
],
"sellOrdersTop10": [
{ "price": 15.96, "quantity": 1 },
{ "price": 16, "quantity": 2 }
],
"imbalanceRatio": 89.57,
"histogramAgeSeconds": 4048
},
"signals": {
"confidence": "medium",
"confidenceScore": 0.5,
"stale": false,
"unstable": false,
"unstableReasons": [],
"volatility": 0.12,
"volatility30d": 0.12,
"liquidity": "medium",
"manipulationRisk": "low",
"manipulationFlags": ["PRICE_DROP"],
"priceMomentum7d": 0,
"volumeTrend": "stable"
},
"flags": { "commodity": true, "tradable": true, "marketable": true },
"updatedAt": 1776562229774
}
]
}