Skip to main content
GET/v1/markets/buff163/latestDEVELOPER+

Buff163 Attribute Prices

Buff163-only attribute bucket prices for an item: the same float/fade/pattern/seed/variant bands as /v1/attribute-prices/latest, but scoped to a single market. The envelope carries one market: "buff163" instead of a markets[] array. Buff's float bands are its own native non-uniform ranges (see how buckets are built). Scope by marketHashName or canonicalItemId, or omit both for a paginated all-items snapshot. Defaults to float buckets only. For the time series, see buff163 history. Prices are integer USD cents.

A market-scoped cut of attribute prices: only buff163's buckets, so the envelope carries a single market field instead of a markets[] array. Everything inside items[] is the same AttributeItem / AttributeBucket shape, with per-bucket askCents / bidCents and listing counts.

Buff's float buckets are its own native non-uniform ranges (not fixed 0.01-wide bins like Steam / marketcsgo / csfloat / dmarket), so read each bucket's dimensions for exact bounds rather than assuming a width. See How attribute & float buckets are built. Like the cross-market endpoint, the response defaults to float buckets only; pass attributes=float,fade,tag for fade and pattern/variant buckets, and page with limit + cursor / nextCursor.

Reach for it when buff163 is the only venue you care about (it's the deepest float-bucket source). For the same buckets across every market, use /v1/attribute-prices/latest; for buff163's time series, see buff163 history.

Parameters

marketHashNamestringoptional
Query. Exact market_hash_name to scope buckets. Optional. Omit both this and canonicalItemId for a paginated all-items snapshot (no 400).
canonicalItemIdstringoptional
Query. Canonical item id to scope buckets. Optional. Omit both this and marketHashName for a paginated all-items snapshot (no 400).
attributesstringoptional
Query. CSV of attribute dimensions to include: float | fade | tag. Defaults to float only; add fade / tag explicitly, e.g. attributes=float,fade,tag.
limitintegeroptional
Query. Max buckets to return, 1 to 1000. Default 500. Paginate with cursor / nextCursor.
cursorstringoptional
Query. Opaque pagination cursor from the previous response's nextCursor.

Response fields

BuffLatestResponseBuff163-only attribute bucket prices for an item.
bucketSchemaVersioninteger
Schema version for the bucket shape.
marketstring
Always buff163.
currencystring
Always USD.
asOfstring (date-time)
Snapshot time.
One entry per item; buckets share the AttributeItem / AttributeBucket shape.
nextCursorstringnullable
Opaque cursor for the next page; null on the last page.
sourceGapsstring[]
Requested markets with no coverage (empty for the single-market buff163 cut).

Response 200

{
  "bucketSchemaVersion": 1,
  "market": "buff163",
  "currency": "USD",
  "asOf": "2026-06-23T09:19:23.280Z",
  "items": [
    {
      "canonicalItemId": "cmlofa7dh08ww01yo9lrpej3e",
      "marketHashName": "★ Karambit | Doppler (Factory New) - Phase 2",
      "market": "buff163",
      "buckets": [
        {
          "bucketId": "buff163:cmlofa7dh08ww01yo9lrpej3e:tag:446954:float:0-0.01",
          "bucketKey": "tag:446954:float:0-0.01",
          "bucketType": "attribute",
          "attributeType": "tag",
          "attributeTypes": ["tag", "float"],
          "dimensions": {
            "variant": "Phase2",
            "float": { "min": 0, "max": 0.01, "minInclusive": true, "maxInclusive": false },
            "fade": null,
            "pattern": null,
            "paintSeed": null
          },
          "askCents": 197795,
          "bidCents": 179787,
          "askListingCount": 82,
          "bidOrderCount": null,
          "sourceUpdatedAt": "2026-06-23T09:10:00.000Z",
          "collectedAt": "2026-06-23T09:11:35.446Z"
        },
        {
          "bucketId": "buff163:cmlofa7dh08ww01yo9lrpej3e:tag:446954:float:0.01-0.02",
          "bucketKey": "tag:446954:float:0.01-0.02",
          "bucketType": "attribute",
          "attributeType": "tag",
          "attributeTypes": ["tag", "float"],
          "dimensions": {
            "variant": "Phase2",
            "float": { "min": 0.01, "max": 0.02, "minInclusive": true, "maxInclusive": false },
            "fade": null,
            "pattern": null,
            "paintSeed": null
          },
          "askCents": 189676,
          "bidCents": 179344,
          "askListingCount": 66,
          "bidOrderCount": null,
          "sourceUpdatedAt": "2026-06-23T09:10:00.000Z",
          "collectedAt": "2026-06-23T09:11:35.446Z"
        }
      ]
    }
  ],
  "nextCursor": null,
  "sourceGaps": []
}

Errors

400Invalid attributes, limit, or cursor value. (Scope is optional. Omitting marketHashName and canonicalItemId returns a paginated all-items snapshot, not a 400.)
401Missing Authorization header, unsupported scheme, or a key that is unknown, inactive, expired, or revoked.
403Valid key, but the subscription is inactive/expired or the plan does not include this endpoint.
429Rate limit exceeded; see Retry-After + X-RateLimit-* headers. Pooled per account across all keys.
5xxUpstream snapshot unavailable or a server-side issue. Retry with backoff.
curl "https://pricing.skinpricer.com/v1/markets/buff163/latest" \
  -H "Authorization: ApiKey sk_live_•••••••••••"

Authenticated endpoint — call it with your API key from your own client (see the code sample).

Response headers
X-RateLimit-Limit: <per-minute, set by your plan>
X-RateLimit-Remaining: <remaining this minute>
X-RateLimit-Reset: <seconds to reset>
X-Request-ID: req_xxxxxxxxxxxxxxxx

Usage & licensing

Access to the API and its data is governed by our Terms of Service. You may not resell or redistribute the data, use it to build a competing service, or exceed your plan’s rate limits, and you must attribute SkinPricer as the source wherever the Terms permit you to display it. Abuse may be throttled or suspended.