Skip to main content
GET/v1/pricing/:marketHashNameDEVELOPER+

跨市场价格快照

单件 CS2 饰品的完整跨市场价格快照:各市场报价、聚合值(min/max/avg/median/stdDev)、最优买卖价与 NBBO 价差。路径段为 URL 编码的 market_hash_name。所有价格均为整数美分。

这是单件饰品最全面的读取。markets[] 给出每个市场的代表性在售价,buyOrders[] 给出每个有效求购单,aggregate 是对在售价的聚合(min / max / avg / median / stdDev),再加上 bestAsk / bestBid / spreadBps 摘要。与默认的 /v1/nbbo 一样,这里的 bestBid 默认仅统计可现金变现的市场;传入 markets CSV 则采信每个被请求平台的求购价。spreadBps 在缺少任一边、盘口交叉(求购价高于在售价)或超过 10000 基点时为 null;要看明确的 crossed 标志、扣费后的执行价格与 executionAdjusted 块,请用 /v1/nbbo。

每个 MarketQuote 携带 fetchedAt(SkinPricer 最近一次从市场抓取该报价的时间)、ingestedAt(写入我们价格存储的时间)和 isStale;若市场说明了生成时间,还会携带 sourceUpdatedAt。请据此对旧报价做折价,而不是直接丢弃。quoteSize 是该报价背后的挂单数量。

求购单是稀疏的:只有部分市场有求购侧,因此即使 markets[] 很长,buyOrders[] 也可能很短甚至为空。用 markets CSV 可将响应收窄到特定平台。

按游戏区分的版本:GET /v2/pricing/:marketHashName 通过必填参数 game=cs2|rust 同时服务两款游戏,响应结构、认证与配额均相同。见游戏:CS2 与 Rust。

参数

marketHashNamestring必填
路径段。URL 编码的 market_hash_name,例如 AK-47%20%7C%20Redline%20(Field-Tested)。
marketsstring可选
查询参数。用于限定响应范围的市场 id CSV,例如 csfloat,buff163。

响应字段

PricingResponse完整跨市场快照:各市场报价 + 聚合值。
canonicalItemIdstring
SkinPricer 的规范饰品 id。
namestring
饰品的 market hash name。
aggregateAggregatenullable
所有参与市场的汇总统计。当饰品没有任何有价市场时(例如饰品搜索的部分行)可为 null/缺席。
每个有实时在售价的市场一条。
buyOrdersBuyOrder[]
各市场的有效求购单。
bestAskQuotenullable
跨市场最优在售价。
bestBidQuotenullable
最优求购价。与 /v1/nbbo 一样,默认仅统计可现金变现的市场;传入 markets 则采信每个被请求平台的求购价。
spreadBpsintegernullable
最优在售价 − 最优求购价,以基点计。缺少任一边、盘口交叉(求购价高于在售价)或超过 10000 基点时为 null。
marketCountinteger
提供报价的市场数。
freshMarketCountinteger
其中仍新鲜的市场数。
calculatedAtstring (date-time)
快照计算时间。

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

错误

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

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

export SKINPRICER_API_KEY="sp_live_•••"

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

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

const item = await client.pricing.get("AK-47 | Redline (Field-Tested)");
console.log(item.markets.length, "markets quoting", item.name);
if (item.bestAsk) console.log("lowest ask:", formatUsd(item.bestAsk.price), "on", item.bestAsk.market);
import os
import requests

res = requests.get(
    "https://pricing.skinpricer.com/v1/pricing/AK-47%20%7C%20Redline%20(Field-Tested)",
    headers={"Authorization": f"ApiKey {os.environ['SKINPRICER_API_KEY']}"},
    timeout=10,
)
res.raise_for_status()
print(res.json())
响应 200
{
  "canonicalItemId": "cmlofca920lka01yozajhixt3",
  "name": "Glock-18 | Water Elemental (Factory New)",
  "aggregate": {
    "minPrice": 6500,
    "maxPrice": 8012,
    "avgPrice": 7102,
    "medianPrice": 7119,
    "stdDev": 439.12,
    "marketCount": 10,
    "freshMarketCount": 9,
    "listingCount": 710,
    "updatedAt": "2026-06-23T21:59:48.717Z"
  },
  "markets": [
    {
      "market": "csfloat",
      "price": 6500,
      "currency": "USD",
      "fetchedAt": "2026-06-23T21:52:27.427Z",
      "ingestedAt": "2026-06-23T21:55:56.923Z",
      "quoteSize": 132,
      "ingestLatencyMs": 209496,
      "isStale": false,
      "sourceUpdatedAt": "2026-06-23T21:01:13.000Z",
      "sourceTimeKind": "last_modified",
      "sourceAgeSeconds": 3074
    }
  ],
  "buyOrders": [
    {
      "market": "buff163",
      "price": 6440,
      "currency": "USD",
      "fetchedAt": "2026-06-23T21:59:48.717Z",
      "ingestedAt": "2026-06-23T21:59:48.000Z",
      "quoteSize": 47,
      "totalQuantity": 47,
      "ingestLatencyMs": 0,
      "isStale": false
    }
  ],
  "bestAsk": {
    "market": "csfloat",
    "price": 6500,
    "updatedAt": "2026-06-23T21:52:27.427Z",
    "isStale": false
  },
  "bestBid": {
    "market": "buff163",
    "price": 6440,
    "updatedAt": "2026-06-23T21:59:48.717Z",
    "isStale": false
  },
  "spreadBps": 93,
  "marketCount": 10,
  "freshMarketCount": 9,
  "calculatedAt": "2026-06-23T22:07:13.752Z"
}
响应头
X-RateLimit-Limit: <每分钟配额,由套餐决定>
X-RateLimit-Remaining: <本分钟剩余次数>
X-RateLimit-Reset: <距重置的秒数>
X-RateLimit-Remaining-Month: <本月剩余次数,仅限有月度上限的套餐>
X-Request-ID: req_xxxxxxxxxxxxxxxx

使用与许可

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