Skip to main content
GET/v1/items/allDEVELOPER+

All Items

The full tracked catalog in one unpaginated call: a bare JSON array of every item with its latest per-market prices and aggregates (capped at 50,000 rows). Heavy; for interactive use prefer the paginated item search. Prices are integer USD cents.

A one-shot dump of the entire tracked catalog as a bare JSON array (no pagination envelope), capped at 50,000 rows. Each entry carries latestPrices per market and a priceAggregates block. It is large, so cache it and prefer item search for interactive, filtered reads.

Bulk consumers on Enterprise plans: GET /v2/prices/latest serves every item's latest per-market asks and bids as one gzip-compressed snapshot, rebuilt every 10 minutes, with ETag support so a repeat poll before the next rebuild is a 304.

Parameters

No query parameters.

Response fields

AllItemsItemOne item in the full-catalog array. The response is a bare array of these (no envelope).
idstring
Canonical item id.
namestring
Market hash name.
latestPricesAllItemsPrice[]
Latest price per market.
priceAggregatesAllItemsAggregatenullable
Cross-market aggregates, or null.

Nested and shared shapes link to the API Objects reference.

Errors

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.

Guides using this endpoint

export SKINPRICER_API_KEY="sp_live_•••"

curl "https://pricing.skinpricer.com/v1/items/all" \
  -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 all = await client.items.all();
console.log(all.length, "items");
import os
import requests

res = requests.get(
    "https://pricing.skinpricer.com/v1/items/all",
    headers={"Authorization": f"ApiKey {os.environ['SKINPRICER_API_KEY']}"},
    timeout=10,
)
res.raise_for_status()
print(res.json())

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

Response 200
[
  {
    "id": "cmlofca920lka01yozajhixt3",
    "name": "Glock-18 | Water Elemental (Factory New)",
    "latestPrices": [
      {
        "market": "tradeit-store",
        "effectiveUsdCents": 6894,
        "fetchedAt": "2026-06-16T05:35:20.086Z",
        "originalCurrency": "USD"
      }
    ],
    "priceAggregates": {
      "minPrice": 6240,
      "maxPrice": 11891,
      "avgPrice": 7999.88,
      "medianPrice": 7130,
      "stdDev": 1891.24,
      "updatedAt": "2026-06-23T22:05:25.547Z"
    }
  }
]
Response headers
X-RateLimit-Limit: <per-minute, set by your plan>
X-RateLimit-Remaining: <remaining this minute>
X-RateLimit-Reset: <seconds to reset>
X-RateLimit-Remaining-Month: <left this month, capped plans>
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.