Skip to main content
GET/v1/attribute-prices/latestDEVELOPER+

Float Aggregates

Per-attribute bucket prices across supported markets (buff163, steamcommunity, marketcsgo, csfloat, dmarket). Each bucket is a float/fade/pattern/paint-seed/variant band with its own ask, bid, and listing counts, plus stable bucketIds. Bucket widths differ per market. See how buckets are built. Scope by marketHashName or canonicalItemId, or omit both for a paginated all-items snapshot. Defaults to float buckets only (add attributes=float,fade,tag for the rest); page with limit + cursor. For the time series, see attribute price history; for buff163 alone, see buff163 buckets. Prices are integer USD cents.

Prices bucketed by *attribute* rather than by listing. Each bucket is a band (a float range like 0 to 0.01, a fade percentage, a pattern / paint-seed, or a variant such as a Doppler phase) with its own askCents / bidCents and listing counts. Stable bucketIds let you track one band over time.

Coverage is per market (currently buff163, steamcommunity, marketcsgo, csfloat, dmarket); the dimensions object spells out each bucket's exact bounds. Bucket widths differ per market. Buff uses its own non-uniform native ranges, while the others use uniform 0.01-wide bins. So normalize on dimensions.float.min / max, not on labels. See How attribute & float buckets are built for the full scheme.

By default the response includes float buckets only. Add attributes=float,fade,tag to also get fade and pattern/variant (tag) buckets. Otherwise they're silently omitted. Page with limit (1 to 1000, default 500) + the opaque cursor, and read nextCursor to continue. History lives at /v1/attribute-prices/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, so fade and pattern/variant (tag) buckets are silently omitted unless you ask for them, 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.
marketsstringoptional
Query. CSV of market ids to restrict the response; unsupported requested markets are reported in sourceGaps.

Response fields

AttributePricesResponsePer-attribute bucket prices across supported markets.
bucketSchemaVersioninteger
Schema version for the bucket shape.
marketsstring[]
Markets covered in this response.
currencystring
Always USD.
asOfstring (date-time)
Snapshot time.
One entry per item × market.
nextCursorstringnullable
Opaque cursor for the next page (pass back as cursor); null on the last page.
sourceGapsstring[]
Requested markets with no coverage in this response.

Nested and shared shapes link to the API Objects reference.

Response 200

{
  "bucketSchemaVersion": 1,
  "markets": ["buff163", "steamcommunity", "marketcsgo", "csfloat", "dmarket"],
  "currency": "USD",
  "asOf": "2026-06-23T09:18:45.864Z",
  "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
          },
          "sourceItemId": "44102",
          "sourceBucketId": "buff163:44102:tag446954:f0-0.01",
          "askCents": 197795,
          "avgAskCents": 201340,
          "medianAskCents": 199500,
          "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
          },
          "sourceItemId": "44102",
          "sourceBucketId": "buff163:44102:tag446954:f0.01-0.02",
          "askCents": 189676,
          "avgAskCents": 191220,
          "medianAskCents": 190100,
          "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/attribute-prices/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.