Skip to main content
GET/v1/pricing/:marketHashName/listingsDEVELOPER+

实时挂单与磨损数据

饰品的逐件实时挂单(价格、磨损值、模板、印花、StatTrak™),附磨损覆盖率元数据。limit 最多 2000 条,可用 market 过滤特定市场。磨损-价格散点图的数据来源。

其他接口做的是聚合,本接口返回*逐件*挂单:每件带 price、floatValue(磨损值)、paintSeed(模板)、stickers(印花)与 StatTrak 标志。它是磨损-价格分析与按成色定价的数据来源。

磨损数据并非全市场可用。只有公开逐件磨损的市场才有 floatValue / paintSeed;其余返回 null。floatCoverage 明确告诉你哪些市场有、哪些没有(marketsWithFloat / marketsWithoutFloat),floatSummary 则把观察到的磨损值放在该饰品可能的磨损区间中对照。

样本覆盖最近 24 小时内抓取的挂单(聚合回退行为 48 小时,这类行的 listingId 为 null),并按磨损优先排序:带已知磨损值的挂单排在前面,磨损值从低到高,其次按价格,因此列表开头是磨损最低的库存,而不是最便宜的挂单。floatCoverage(包括 marketsWithFloat)与 floatSummary 只描述本次返回的样本,因此更小的 limit 可能改变它们。要查最低在售价,请用价格快照或 NBBO。

每条挂单都带 isStale(抓取时间超过 30 分钟),floatSummary.observedSource 也是如此。totalListings 只统计在其市场最长时效内(1 小时;steamcommunity 为 6 小时)的挂单,这也是价格与 NBBO 剔除报价的界限,因此当样本中仍有较旧的挂单时,它可能小于 sampledListings,甚至为 0。只需要当前挂单时,请按 isStale 过滤。详见数据新鲜度。

用 limit(1 到 2000,默认 500)控制样本量,用 market CSV 限定平台。

按游戏区分的版本:GET /v2/pricing/:marketHashName/listings 通过必填参数 game=cs2|rust 同时服务两款游戏。Rust 挂单不带磨损数据:floatValue、paintSeed、paintIndex 与 stickers 在 Rust 上始终为 null 或空。见游戏:CS2 与 Rust。

参数

marketHashNamestring必填
路径段。URL 编码的 market_hash_name。
limitinteger可选
查询参数。最大样本数,1 到 2000。默认:500。
marketstring可选
查询参数。市场过滤 CSV(markets 为其别名)。

响应字段

ListingsResponse逐件实时挂单,附磨损覆盖率元数据。
marketHashNamestring
Market hash name。
canonicalItemIdstring
规范饰品 id。
totalListingsinteger
在其市场最长时效内(1 小时;steamcommunity 为 6 小时)抓取的全市场挂单数。可能小于 sampledListings,甚至为 0,而过期挂单行仍会返回。
sampledListingsinteger
本次返回的挂单数(≤ limit)。
floatCoverageFloatCoverage
哪些市场对该饰品公开磨损值。
floatSummaryFloatSummarynullable
观察到的磨损值摘要;未观察到磨损时为 null。
listingsListing[]
抽样的挂单。
calculatedAtstring (date-time)
抽样时间。

嵌套与共享结构链接到 API 对象 参考页。

错误

404饰品不存在。
401缺少 Authorization 头、认证方案不支持,或密钥未知、未激活、已过期、已吊销。
403密钥有效,但订阅未激活/已过期,或套餐不含此接口。
429超出速率限制;见 Retry-After 与 X-RateLimit-* 响应头。配额按账号合并计算,所有密钥共享。
5xx上游快照不可用或服务端问题。请退避后重试。

使用此端点的指南(英文)

export SKINPRICER_API_KEY="sp_live_•••"

curl -G "https://pricing.skinpricer.com/v1/pricing/AK-47%20%7C%20Redline%20(Field-Tested)/listings" \
  --data-urlencode "limit=20" \
  -H "Authorization: ApiKey $SKINPRICER_API_KEY"
// npm i @skinpricer/sdk
import { SkinpricerClient } from "@skinpricer/sdk";

const client = new SkinpricerClient({
  apiKey: process.env.SKINPRICER_API_KEY!,
  authScheme: "ApiKey",
});

const { listings } = await client.pricing.listings("AK-47 | Redline (Field-Tested)", { limit: 20 });
console.log(listings.length, "listing samples");
import os
import requests

res = requests.get(
    "https://pricing.skinpricer.com/v1/pricing/AK-47%20%7C%20Redline%20(Field-Tested)/listings",
    params={"limit": "20"},
    headers={"Authorization": f"ApiKey {os.environ['SKINPRICER_API_KEY']}"},
    timeout=10,
)
res.raise_for_status()
print(res.json())
响应 200
{
  "marketHashName": "AK-47 | Redline (Field-Tested)",
  "canonicalItemId": "cmlofczf90qj401vsd80dskd1",
  "totalListings": 22022,
  "sampledListings": 2,
  "floatCoverage": {
    "coverage": "partial",
    "sampledListings": 2,
    "listingsWithFloat": 2,
    "marketsWithFloat": [
      "avanmarket"
    ],
    "marketsWithoutFloat": [
      "buff163",
      "csfloat",
      "cstrade",
      "dmarket",
      "itrade",
      "lis-skins",
      "lootfarm",
      "mannco-store",
      "marketcsgo",
      "skindeck",
      "skinport",
      "steamcommunity",
      "swapgg",
      "tradeit-store",
      "tradeit-trade",
      "waxpeer",
      "whitemarket"
    ]
  },
  "floatSummary": {
    "observed": 0.15027404,
    "itemMin": 0.15,
    "itemMax": 0.38,
    "observedSource": {
      "market": "avanmarket",
      "price": 9404,
      "fetchedAt": "2026-09-25T11:25:44.891Z",
      "isStale": false
    }
  },
  "listings": [
    {
      "listingId": "listing:5698b064-d92a-4b7f-8c5f-4aa014d1400e",
      "market": "avanmarket",
      "price": 9484,
      "currency": "USD",
      "originalPriceCents": 9484,
      "originalCurrency": "USD",
      "floatValue": 0.15005141,
      "paintSeed": null,
      "paintIndex": null,
      "inspectLink": null,
      "stickers": [],
      "isStatTrak": false,
      "fetchedAt": "2026-09-25T11:25:44.891Z",
      "isStale": false
    },
    {
      "listingId": "listing:e40c11f4-73f7-4d15-89e4-765e3ee14253",
      "market": "avanmarket",
      "price": 9404,
      "currency": "USD",
      "originalPriceCents": 9404,
      "originalCurrency": "USD",
      "floatValue": 0.15027404,
      "paintSeed": null,
      "paintIndex": null,
      "inspectLink": null,
      "stickers": [
        {
          "name": "Sticker | device | Cologne 2016",
          "slot": 0
        },
        {
          "name": "Sticker | Astralis (Holo) | Cologne 2016",
          "slot": 1
        },
        {
          "name": "Sticker | device (Foil) | Cologne 2016",
          "slot": 2
        }
      ],
      "isStatTrak": false,
      "fetchedAt": "2026-09-25T11:25:44.891Z",
      "isStale": false
    }
  ],
  "calculatedAt": "2026-09-25T11:33:18.805Z"
}
响应头
X-RateLimit-Limit: <每分钟配额,由套餐决定>
X-RateLimit-Remaining: <本分钟剩余次数>
X-RateLimit-Reset: <距重置的秒数>
X-RateLimit-Remaining-Month: <本月剩余次数,仅限有月度上限的套餐>
X-Request-ID: req_xxxxxxxxxxxxxxxx

使用与许可

API 及其数据的使用受我们的服务条款(英文)约束:不得转售或再分发数据,不得用于构建竞争性服务, 不得超出套餐的速率限制;在条款允许展示数据的场景下须注明数据来源为 SkinPricer。滥用行为可能被限流或封禁。