---
title: "Look up a specific skin across all marketplaces (Basic)"
method: GET
path: "/v1/prices/search"
tags: ["Listing Prices"]
---

# Look up a specific skin across all marketplaces (Basic)

`GET /v1/prices/search`

## Request

- Base URL: `https://api.cspriceapi.com`
- URL: `https://api.cspriceapi.com/v1/prices/search`
- Auth: API key in header `x-api-key`

Fetches the current price of a single `market_hash_name` from every
supported marketplace in one request.


If the query looks like a Doppler or Gamma Doppler skin (case-insensitive
substring `doppler`), the server strips any existing phase annotation
from the input and queries **all** phase variants in parallel:

- Regular Doppler: `(Ruby)`, `(Sapphire)`, `(Black Pearl)`,
  `(Phase 1)`..`(Phase 4)`
- Gamma Doppler: `(Emerald)`, `(Phase 1)`..`(Phase 4)`

The phase suffix is appended **after** the exterior, e.g.
`Glock-18 | Gamma Doppler (Factory New) (Phase 2)`.

The response schema therefore differs between the two cases:

- `is_doppler: false` → per marketplace either a single item object or `null`.
- `is_doppler: true`  → per marketplace an **array** of matched phase variants (possibly empty).

Clients should branch on the top-level `is_doppler` flag to select the
correct variant.

## Query parameters

- `market_hash_name` string, required

## Response `200`

Successful response. Payload shape depends on `is_doppler`.

- union: Discriminate on the top-level boolean `is_doppler` to select the correct variant: - `is_doppler: false` → `SearchResponseNonDoppler` (each marketplace key is either an item object or `null`). - `is_doppler: true` → `SearchResponseDoppler` (each marketplace key is an array of phase variants).
  - SearchResponseNonDoppler: Search response when the queried skin is **not** a Doppler.
    - `market_hash_name` string, required
    - `is_doppler` false, required
    - `search_variants` string[], required: Always contains exactly the input `market_hash_name`.
    - `data` SearchDataNonDoppler, required: Per-marketplace lookup results. Each key is either a single item object (the skin was found on that marketplace) or `null` (not found).
      - `youpin` YoupinItem, required: Current YouPin listing price row, including liquidity when available.
        - `id` integer, required
        - `market_hash_name` string, required
        - `stattrak` 0 | 1, nullable: Boolean stored as `tinyint(1)`; `0` = false, `1` = true.
        - `souvenir` 0 | 1, nullable: Boolean stored as `tinyint(1)`; `0` = false, `1` = true.
        - `price_rmb` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_24h` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_7d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_30d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_90d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `avg_7d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `avg_30d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `avg_90d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `count` integer, nullable: Number of active listings.
        - `phase` string, nullable: Doppler phase, normalised to English. Empty string or `null` for non-phase items.
        - `updated_at` string, date-time, required: ISO-8601 UTC timestamp (millisecond precision).
        - `youpin_template_id` integer, nullable: YouPin internal template id.
        - `liquidity` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
      - `buff163` Buff163Item, required: Current Buff163 listing price row, including liquidity when available.
        - `id` integer, required
        - `market_hash_name` string, required
        - `stattrak` 0 | 1, nullable: Boolean stored as `tinyint(1)`; `0` = false, `1` = true.
        - `souvenir` 0 | 1, nullable: Boolean stored as `tinyint(1)`; `0` = false, `1` = true.
        - `exterior` string, nullable: Exterior (wear) of the skin. Typical values: `Factory New`, `Minimal Wear`, `Field-Tested`, `Well-Worn`, `Battle-Scarred`. Casing may vary between sources (e.g. Buff163 uses `"Factory new"`).
        - `price` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_24h` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_7d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_30d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_90d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `avg_7d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `avg_30d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `avg_90d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `count` integer, nullable
        - `updated_at` string, date-time, required: ISO-8601 UTC timestamp (millisecond precision).
        - `item_page_url` string, uri, nullable
        - `liquidity` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
      - `c5game` C5GameItem, required: Current C5Game listing price row, including liquidity when available.
        - `id` integer, required
        - `market_hash_name` string, required
        - `item_page_url` string, uri, nullable
        - `stattrak` 0 | 1, nullable: Boolean stored as `tinyint(1)`; `0` = false, `1` = true.
        - `souvenir` 0 | 1, nullable: Boolean stored as `tinyint(1)`; `0` = false, `1` = true.
        - `exterior` string, nullable: Exterior (wear) of the skin. Typical values: `Factory New`, `Minimal Wear`, `Field-Tested`, `Well-Worn`, `Battle-Scarred`. Casing may vary between sources (e.g. Buff163 uses `"Factory new"`).
        - `price` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_24h` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_7d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_30d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_90d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `avg_7d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `avg_30d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `avg_90d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `count` integer, nullable
        - `updated_at` string, date-time, required: ISO-8601 UTC timestamp (millisecond precision).
        - `liquidity` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
      - `ecosteam` EcoSteamItem, required: Current EcoSteam listing price row, including liquidity when available.
        - `id` integer, required
        - `market_hash_name` string, required
        - `item_page_url` string, uri, nullable
        - `stattrak` 0 | 1, nullable: Boolean stored as `tinyint(1)`; `0` = false, `1` = true.
        - `souvenir` 0 | 1, nullable: Boolean stored as `tinyint(1)`; `0` = false, `1` = true.
        - `exterior` string, nullable: Exterior (wear) of the skin. Typical values: `Factory New`, `Minimal Wear`, `Field-Tested`, `Well-Worn`, `Battle-Scarred`. Casing may vary between sources (e.g. Buff163 uses `"Factory new"`).
        - `price` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_24h` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_7d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_30d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_90d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `avg_7d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `avg_30d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `avg_90d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `count` integer, nullable
        - `updated_at` string, date-time, required: ISO-8601 UTC timestamp (millisecond precision).
        - `liquidity` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
      - `skinbaron` SkinBaronItem, required: Current SkinBaron listing price row, including liquidity when available.
        - `id` integer, required
        - `market_hash_name` string, required
        - `stattrak` 0 | 1, nullable: Boolean stored as `tinyint(1)`; `0` = false, `1` = true.
        - `souvenir` 0 | 1, nullable: Boolean stored as `tinyint(1)`; `0` = false, `1` = true.
        - `exterior` string, nullable: Exterior (wear) of the skin. Typical values: `Factory New`, `Minimal Wear`, `Field-Tested`, `Well-Worn`, `Battle-Scarred`. Casing may vary between sources (e.g. Buff163 uses `"Factory new"`).
        - `price` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_24h` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_7d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_30d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_90d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `avg_7d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `avg_30d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `avg_90d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `count` integer, nullable
        - `updated_at` string, date-time, required: ISO-8601 UTC timestamp (millisecond precision).
        - `item_page_url` string, uri, nullable
        - `liquidity` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
      - `skinport` SkinportItem, required: Current Skinport listing price row, including liquidity when available.
        - `id` integer, required
        - `market_hash_name` string, required
        - `item_page_url` string, uri, nullable
        - `stattrak` 0 | 1, nullable: Boolean stored as `tinyint(1)`; `0` = false, `1` = true.
        - `souvenir` 0 | 1, nullable: Boolean stored as `tinyint(1)`; `0` = false, `1` = true.
        - `exterior` string, nullable: Exterior (wear) of the skin. Typical values: `Factory New`, `Minimal Wear`, `Field-Tested`, `Well-Worn`, `Battle-Scarred`. Casing may vary between sources (e.g. Buff163 uses `"Factory new"`).
        - `price` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_24h` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_7d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_30d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_90d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `avg_7d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `avg_30d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `avg_90d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `count` integer, nullable
        - `updated_at` string, date-time, required: ISO-8601 UTC timestamp (millisecond precision).
        - `liquidity` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
      - `market_csgo` MarketCsgoItem, required: Current Market.CSGO listing price row, including liquidity when available.
        - `id` integer, required
        - `market_hash_name` string, required
        - `item_page_url` string, uri, nullable
        - `stattrak` 0 | 1, nullable: Boolean stored as `tinyint(1)`; `0` = false, `1` = true.
        - `souvenir` 0 | 1, nullable: Boolean stored as `tinyint(1)`; `0` = false, `1` = true.
        - `exterior` string, nullable: Exterior (wear) of the skin. Typical values: `Factory New`, `Minimal Wear`, `Field-Tested`, `Well-Worn`, `Battle-Scarred`. Casing may vary between sources (e.g. Buff163 uses `"Factory new"`).
        - `price` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_24h` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_7d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_30d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_90d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `avg_7d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `avg_30d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `avg_90d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `count` integer, nullable
        - `sales7` integer, nullable: Number of sales over the last 7 days.
        - `updated_at` string, date-time, required: ISO-8601 UTC timestamp (millisecond precision).
        - `liquidity` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
      - `csfloat` CsfloatItem, required: Current CSFloat listing price row, including liquidity when available.
        - `id` integer, required
        - `market_hash_name` string, required
        - `stattrak` 0 | 1, nullable: Boolean stored as `tinyint(1)`; `0` = false, `1` = true.
        - `souvenir` 0 | 1, nullable: Boolean stored as `tinyint(1)`; `0` = false, `1` = true.
        - `exterior` string, nullable: Exterior (wear) of the skin. Typical values: `Factory New`, `Minimal Wear`, `Field-Tested`, `Well-Worn`, `Battle-Scarred`. Casing may vary between sources (e.g. Buff163 uses `"Factory new"`).
        - `price` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_24h` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_7d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_30d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_90d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `avg_7d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `avg_30d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `avg_90d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `count` integer, nullable
        - `updated_at` string, date-time, required: ISO-8601 UTC timestamp (millisecond precision).
        - `item_page_url` string, uri, nullable
        - `buff_template_id` integer, nullable
        - `liquidity` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
      - `lisskins` LisskinsItem, required: Current Lisskins listing price row, including liquidity when available.
        - `id` integer, required
        - `market_hash_name` string, required
        - `stattrak` 0 | 1, nullable: Boolean stored as `tinyint(1)`; `0` = false, `1` = true.
        - `souvenir` 0 | 1, nullable: Boolean stored as `tinyint(1)`; `0` = false, `1` = true.
        - `exterior` string, nullable: Exterior (wear) of the skin. Typical values: `Factory New`, `Minimal Wear`, `Field-Tested`, `Well-Worn`, `Battle-Scarred`. Casing may vary between sources (e.g. Buff163 uses `"Factory new"`).
        - `price` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_24h` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_7d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_30d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_90d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `avg_7d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `avg_30d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `avg_90d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `count` integer, nullable
        - `updated_at` string, date-time, required: ISO-8601 UTC timestamp (millisecond precision).
        - `item_page_url` string, uri, nullable
        - `buff_template_id` integer, nullable
        - `liquidity` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
      - `dmarket` DmarketItem, required: Current DMarket listing price row, including liquidity when available.
        - `id` integer, required
        - `market_hash_name` string, required
        - `stattrak` 0 | 1, nullable: Boolean stored as `tinyint(1)`; `0` = false, `1` = true.
        - `souvenir` 0 | 1, nullable: Boolean stored as `tinyint(1)`; `0` = false, `1` = true.
        - `exterior` string, nullable: Exterior (wear) of the skin. Typical values: `Factory New`, `Minimal Wear`, `Field-Tested`, `Well-Worn`, `Battle-Scarred`. Casing may vary between sources (e.g. Buff163 uses `"Factory new"`).
        - `price` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_24h` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_7d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_30d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_90d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `avg_7d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `avg_30d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `avg_90d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `count` integer, nullable
        - `updated_at` string, date-time, required: ISO-8601 UTC timestamp (millisecond precision).
        - `item_page_url` string, uri, nullable
        - `buff_template_id` integer, nullable
        - `liquidity` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
      - `shadowpay` ShadowpayItem, required: Current ShadowPay listing price row, including liquidity when available.
        - `id` integer, required
        - `market_hash_name` string, required
        - `stattrak` 0 | 1, nullable: Boolean stored as `tinyint(1)`; `0` = false, `1` = true.
        - `souvenir` 0 | 1, nullable: Boolean stored as `tinyint(1)`; `0` = false, `1` = true.
        - `exterior` string, nullable: Exterior (wear) of the skin. Typical values: `Factory New`, `Minimal Wear`, `Field-Tested`, `Well-Worn`, `Battle-Scarred`. Casing may vary between sources (e.g. Buff163 uses `"Factory new"`).
        - `price` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_24h` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_7d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_30d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_90d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `avg_7d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `avg_30d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `avg_90d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `count` integer, nullable
        - `updated_at` string, date-time, required: ISO-8601 UTC timestamp (millisecond precision).
        - `item_page_url` string, uri, nullable
        - `liquidity` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
      - `waxpeer` WaxpeerItem, required: Current Waxpeer listing price row, including liquidity when available.
        - `id` integer, required
        - `market_hash_name` string, required
        - `stattrak` 0 | 1, nullable: Boolean stored as `tinyint(1)`; `0` = false, `1` = true.
        - `souvenir` 0 | 1, nullable: Boolean stored as `tinyint(1)`; `0` = false, `1` = true.
        - `exterior` string, nullable: Exterior (wear) of the skin. Typical values: `Factory New`, `Minimal Wear`, `Field-Tested`, `Well-Worn`, `Battle-Scarred`. Casing may vary between sources (e.g. Buff163 uses `"Factory new"`).
        - `price` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_24h` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_7d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_30d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_90d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `avg_7d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `avg_30d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `avg_90d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `count` integer, nullable
        - `updated_at` string, date-time, required: ISO-8601 UTC timestamp (millisecond precision).
        - `item_page_url` string, uri, nullable
        - `liquidity` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
    - `requestor` string, email
    - `plan` string
    - `timestamp` string, date-time, required: ISO-8601 UTC timestamp (millisecond precision).
  - SearchResponseDoppler: Search response when the queried skin is a Doppler or Gamma Doppler. The server queried all phase variants listed in `search_variants`.
    - `market_hash_name` string, required
    - `is_doppler` true, required
    - `search_variants` string[], required: Every phase variant the server queried for this skin. For Gamma Dopplers: `(Emerald)` + `(Phase 1..4)`. For regular Dopplers: `(Ruby)`, `(Sapphire)`, `(Black Pearl)` + `(Phase 1..4)`.
    - `data` SearchDataDoppler, required: Per-marketplace lookup results for Doppler skins. Each key is an **array** containing every phase variant found (possibly empty).
      - `youpin` YoupinItem[], required
        - `id` integer, required
        - `market_hash_name` string, required
        - `stattrak` 0 | 1, nullable: Boolean stored as `tinyint(1)`; `0` = false, `1` = true.
        - `souvenir` 0 | 1, nullable: Boolean stored as `tinyint(1)`; `0` = false, `1` = true.
        - `price_rmb` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_24h` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_7d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_30d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_90d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `avg_7d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `avg_30d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `avg_90d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `count` integer, nullable: Number of active listings.
        - `phase` string, nullable: Doppler phase, normalised to English. Empty string or `null` for non-phase items.
        - `updated_at` string, date-time, required: ISO-8601 UTC timestamp (millisecond precision).
        - `youpin_template_id` integer, nullable: YouPin internal template id.
        - `liquidity` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
      - `buff163` Buff163Item[], required
        - `id` integer, required
        - `market_hash_name` string, required
        - `stattrak` 0 | 1, nullable: Boolean stored as `tinyint(1)`; `0` = false, `1` = true.
        - `souvenir` 0 | 1, nullable: Boolean stored as `tinyint(1)`; `0` = false, `1` = true.
        - `exterior` string, nullable: Exterior (wear) of the skin. Typical values: `Factory New`, `Minimal Wear`, `Field-Tested`, `Well-Worn`, `Battle-Scarred`. Casing may vary between sources (e.g. Buff163 uses `"Factory new"`).
        - `price` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_24h` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_7d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_30d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_90d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `avg_7d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `avg_30d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `avg_90d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `count` integer, nullable
        - `updated_at` string, date-time, required: ISO-8601 UTC timestamp (millisecond precision).
        - `item_page_url` string, uri, nullable
        - `liquidity` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
      - `c5game` C5GameItem[], required
        - `id` integer, required
        - `market_hash_name` string, required
        - `item_page_url` string, uri, nullable
        - `stattrak` 0 | 1, nullable: Boolean stored as `tinyint(1)`; `0` = false, `1` = true.
        - `souvenir` 0 | 1, nullable: Boolean stored as `tinyint(1)`; `0` = false, `1` = true.
        - `exterior` string, nullable: Exterior (wear) of the skin. Typical values: `Factory New`, `Minimal Wear`, `Field-Tested`, `Well-Worn`, `Battle-Scarred`. Casing may vary between sources (e.g. Buff163 uses `"Factory new"`).
        - `price` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_24h` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_7d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_30d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_90d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `avg_7d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `avg_30d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `avg_90d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `count` integer, nullable
        - `updated_at` string, date-time, required: ISO-8601 UTC timestamp (millisecond precision).
        - `liquidity` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
      - `ecosteam` EcoSteamItem[], required
        - `id` integer, required
        - `market_hash_name` string, required
        - `item_page_url` string, uri, nullable
        - `stattrak` 0 | 1, nullable: Boolean stored as `tinyint(1)`; `0` = false, `1` = true.
        - `souvenir` 0 | 1, nullable: Boolean stored as `tinyint(1)`; `0` = false, `1` = true.
        - `exterior` string, nullable: Exterior (wear) of the skin. Typical values: `Factory New`, `Minimal Wear`, `Field-Tested`, `Well-Worn`, `Battle-Scarred`. Casing may vary between sources (e.g. Buff163 uses `"Factory new"`).
        - `price` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_24h` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_7d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_30d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_90d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `avg_7d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `avg_30d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `avg_90d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `count` integer, nullable
        - `updated_at` string, date-time, required: ISO-8601 UTC timestamp (millisecond precision).
        - `liquidity` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
      - `skinbaron` SkinBaronItem[], required
        - `id` integer, required
        - `market_hash_name` string, required
        - `stattrak` 0 | 1, nullable: Boolean stored as `tinyint(1)`; `0` = false, `1` = true.
        - `souvenir` 0 | 1, nullable: Boolean stored as `tinyint(1)`; `0` = false, `1` = true.
        - `exterior` string, nullable: Exterior (wear) of the skin. Typical values: `Factory New`, `Minimal Wear`, `Field-Tested`, `Well-Worn`, `Battle-Scarred`. Casing may vary between sources (e.g. Buff163 uses `"Factory new"`).
        - `price` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_24h` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_7d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_30d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_90d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `avg_7d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `avg_30d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `avg_90d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `count` integer, nullable
        - `updated_at` string, date-time, required: ISO-8601 UTC timestamp (millisecond precision).
        - `item_page_url` string, uri, nullable
        - `liquidity` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
      - `skinport` SkinportItem[], required
        - `id` integer, required
        - `market_hash_name` string, required
        - `item_page_url` string, uri, nullable
        - `stattrak` 0 | 1, nullable: Boolean stored as `tinyint(1)`; `0` = false, `1` = true.
        - `souvenir` 0 | 1, nullable: Boolean stored as `tinyint(1)`; `0` = false, `1` = true.
        - `exterior` string, nullable: Exterior (wear) of the skin. Typical values: `Factory New`, `Minimal Wear`, `Field-Tested`, `Well-Worn`, `Battle-Scarred`. Casing may vary between sources (e.g. Buff163 uses `"Factory new"`).
        - `price` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_24h` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_7d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_30d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_90d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `avg_7d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `avg_30d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `avg_90d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `count` integer, nullable
        - `updated_at` string, date-time, required: ISO-8601 UTC timestamp (millisecond precision).
        - `liquidity` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
      - `market_csgo` MarketCsgoItem[], required
        - `id` integer, required
        - `market_hash_name` string, required
        - `item_page_url` string, uri, nullable
        - `stattrak` 0 | 1, nullable: Boolean stored as `tinyint(1)`; `0` = false, `1` = true.
        - `souvenir` 0 | 1, nullable: Boolean stored as `tinyint(1)`; `0` = false, `1` = true.
        - `exterior` string, nullable: Exterior (wear) of the skin. Typical values: `Factory New`, `Minimal Wear`, `Field-Tested`, `Well-Worn`, `Battle-Scarred`. Casing may vary between sources (e.g. Buff163 uses `"Factory new"`).
        - `price` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_24h` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_7d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_30d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_90d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `avg_7d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `avg_30d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `avg_90d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `count` integer, nullable
        - `sales7` integer, nullable: Number of sales over the last 7 days.
        - `updated_at` string, date-time, required: ISO-8601 UTC timestamp (millisecond precision).
        - `liquidity` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
      - `csfloat` CsfloatItem[], required
        - `id` integer, required
        - `market_hash_name` string, required
        - `stattrak` 0 | 1, nullable: Boolean stored as `tinyint(1)`; `0` = false, `1` = true.
        - `souvenir` 0 | 1, nullable: Boolean stored as `tinyint(1)`; `0` = false, `1` = true.
        - `exterior` string, nullable: Exterior (wear) of the skin. Typical values: `Factory New`, `Minimal Wear`, `Field-Tested`, `Well-Worn`, `Battle-Scarred`. Casing may vary between sources (e.g. Buff163 uses `"Factory new"`).
        - `price` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_24h` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_7d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_30d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_90d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `avg_7d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `avg_30d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `avg_90d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `count` integer, nullable
        - `updated_at` string, date-time, required: ISO-8601 UTC timestamp (millisecond precision).
        - `item_page_url` string, uri, nullable
        - `buff_template_id` integer, nullable
        - `liquidity` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
      - `lisskins` LisskinsItem[], required
        - `id` integer, required
        - `market_hash_name` string, required
        - `stattrak` 0 | 1, nullable: Boolean stored as `tinyint(1)`; `0` = false, `1` = true.
        - `souvenir` 0 | 1, nullable: Boolean stored as `tinyint(1)`; `0` = false, `1` = true.
        - `exterior` string, nullable: Exterior (wear) of the skin. Typical values: `Factory New`, `Minimal Wear`, `Field-Tested`, `Well-Worn`, `Battle-Scarred`. Casing may vary between sources (e.g. Buff163 uses `"Factory new"`).
        - `price` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_24h` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_7d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_30d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_90d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `avg_7d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `avg_30d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `avg_90d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `count` integer, nullable
        - `updated_at` string, date-time, required: ISO-8601 UTC timestamp (millisecond precision).
        - `item_page_url` string, uri, nullable
        - `buff_template_id` integer, nullable
        - `liquidity` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
      - `dmarket` DmarketItem[], required
        - `id` integer, required
        - `market_hash_name` string, required
        - `stattrak` 0 | 1, nullable: Boolean stored as `tinyint(1)`; `0` = false, `1` = true.
        - `souvenir` 0 | 1, nullable: Boolean stored as `tinyint(1)`; `0` = false, `1` = true.
        - `exterior` string, nullable: Exterior (wear) of the skin. Typical values: `Factory New`, `Minimal Wear`, `Field-Tested`, `Well-Worn`, `Battle-Scarred`. Casing may vary between sources (e.g. Buff163 uses `"Factory new"`).
        - `price` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_24h` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_7d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_30d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_90d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `avg_7d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `avg_30d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `avg_90d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `count` integer, nullable
        - `updated_at` string, date-time, required: ISO-8601 UTC timestamp (millisecond precision).
        - `item_page_url` string, uri, nullable
        - `buff_template_id` integer, nullable
        - `liquidity` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
      - `shadowpay` ShadowpayItem[], required
        - `id` integer, required
        - `market_hash_name` string, required
        - `stattrak` 0 | 1, nullable: Boolean stored as `tinyint(1)`; `0` = false, `1` = true.
        - `souvenir` 0 | 1, nullable: Boolean stored as `tinyint(1)`; `0` = false, `1` = true.
        - `exterior` string, nullable: Exterior (wear) of the skin. Typical values: `Factory New`, `Minimal Wear`, `Field-Tested`, `Well-Worn`, `Battle-Scarred`. Casing may vary between sources (e.g. Buff163 uses `"Factory new"`).
        - `price` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_24h` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_7d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_30d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_90d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `avg_7d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `avg_30d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `avg_90d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `count` integer, nullable
        - `updated_at` string, date-time, required: ISO-8601 UTC timestamp (millisecond precision).
        - `item_page_url` string, uri, nullable
        - `liquidity` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
      - `waxpeer` WaxpeerItem[], required
        - `id` integer, required
        - `market_hash_name` string, required
        - `stattrak` 0 | 1, nullable: Boolean stored as `tinyint(1)`; `0` = false, `1` = true.
        - `souvenir` 0 | 1, nullable: Boolean stored as `tinyint(1)`; `0` = false, `1` = true.
        - `exterior` string, nullable: Exterior (wear) of the skin. Typical values: `Factory New`, `Minimal Wear`, `Field-Tested`, `Well-Worn`, `Battle-Scarred`. Casing may vary between sources (e.g. Buff163 uses `"Factory new"`).
        - `price` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_24h` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_7d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_30d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `change_90d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `avg_7d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `avg_30d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `avg_90d` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
        - `count` integer, nullable
        - `updated_at` string, date-time, required: ISO-8601 UTC timestamp (millisecond precision).
        - `item_page_url` string, uri, nullable
        - `liquidity` string: Fixed-point decimal value serialized as a string (preserves precision across languages). Parse with an arbitrary-precision decimal library; do **not** parse as a native float.
    - `requestor` string, email
    - `plan` string
    - `timestamp` string, date-time, required: ISO-8601 UTC timestamp (millisecond precision).

## Other responses

- `400`: Missing or invalid query parameter.
- `401`: Missing, invalid, disabled or expired API key.
- `403`: The API key is valid but is not allowed to call this endpoint (endpoint ACL).
- `429`: Rate limit exceeded (10 requests per second per key). Retry after 1 second.
- `500`: Internal server error – temporary upstream failure, etc.

---

[API](https://skmtc.dev/cspriceapi/apis/cs-price-api.md) · [All operations](https://skmtc.dev/cspriceapi/apis/cs-price-api/llms.txt) · [OpenAPI document](https://skmtc.dev/cspriceapi/apis/cs-price-api/revisions/4a18a7641dad?raw)
