POST /v1/archive/csfloat

Returns CSFloat daily average sale price and sale volume. Data begins in 2022 and updates ~1-2x per day.

Max 100 items per request.

Access#

Requires a Scale or Enterprise API key.

Request#

POSTapi.cs2.sh/v1/archive/csfloat
curl -X POST https://api.cs2.sh/v1/archive/csfloat \
  -H "Authorization: Bearer <<YOUR_API_KEY>>" \
  -H "Accept-Encoding: gzip" --compressed \
  -H "Content-Type: application/json" \
  -d '{
  "items": [
    "USP-S | Printstream (Factory New)"
  ],
  "start": "2024-01-01",
  "end": "2026-07-26"
}'

Parameters#

FieldTypeRequiredDescription
itemsstring[]YesList of market_hash_name values (max 100)
startstringNoStart date (YYYY-MM-DD or RFC3339). Default 2020-01-01.
endstringNoEnd date (YYYY-MM-DD or RFC3339). Default now.

Response#

{
  "response_time": "2026-07-26T18:54:19.632716841Z",
  "currency": "USD",
  "start": "2026-04-27T00:00:00Z",
  "end": "2026-07-25T00:00:00Z",
  "items": {
    "USP-S | Printstream (Factory New)": {
      "market_hash_name": "USP-S | Printstream (Factory New)",
      "count": 89,
      "data": [
        {
          "date": "2026-04-27",
          "price": 149.76,
          "volume": 8
        },
        {
          "date": "2026-04-28",
          "price": 189.81,
          "volume": 10
        }
      ]
    }
  }
}

Response fields#

ArchiveCSFloatResponse fields:

FieldTypeRequiredDescription
response_timestring (date-time)YesWhen the response was generated.
currencystringYesCurrency code (always USD).
startstring (date-time)YesEffective start of the queried range, floored to the day boundary.
endstring (date-time)YesEffective end of the queried range, ceiled to the day boundary. Exclusive.
itemsRecord<string, ArchiveCSFloatItem>YesMap of market_hash_name to CSFloat sale time-series.
errorsItemError[]NoPer-item failures alongside successful results (partial success).

Daily data#

FieldDescription
items.<name>.countNumber of daily aggregates.
items.<name>.data[]Daily aggregates.
data[].dateDay, YYYY-MM-DD, UTC.
data[].priceArithmetic average of all sale prices that day, USD.
data[].volumeNumber of sales that day.
items.<name>.variantsThe same shape per variant.
  • date, price, and volume are present on returned daily aggregates. price can be null when the stored day has volume but no usable price.
  • Variants appear under variants when CSFloat archive data exists for that variant.
  • Valid requested items with no CSFloat archive data return not_in_archive.

Full schemas: ArchiveCSFloatItem, ArchiveCSFloatBucket.

Errors#

404 not_found means none of the requested valid items have CSFloat archive data. Partial results return 200 with errors[]; possible item codes are unknown_item, invalid_format, and not_in_archive. See Partial success and Request errors.