---
title: "Buff163 Float Buyorder"
method: GET
path: "/v1/prices/buff163/float-buyorder"
tags: ["Buyorder Prices"]
---

# Buff163 Float Buyorder

`GET /v1/prices/buff163/float-buyorder`

## Request

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

Highest **Buff163 buy order per float range** (and per Fade % range,
Doppler phase or pattern tier) for every tracked skin, with the number
of buy orders in that range. Buff publishes these as aggregates, so
unlike the YouPin endpoint there is one entry per range, not one per
order.

Ranges are Buff's fixed buckets (e.g. `0.15-0.18`), closed on both ends.
Fade skins come as a matrix: float ranges, Fade ranges and every
float × Fade combination (`"any"` marks the axis that is not limited).

Use the filters to price a specific item:
- `float=0.153` keeps the ranges containing 0.153; `best_price_rmb` is
  then the highest buy order for that float.
- `fade=97.5` keeps the Fade ranges containing 97.5 (combined with
  `float` when both are given).
- `phase` (Doppler / Gamma Doppler) or `tier` (`T1`–`T4` for Case
  Hardened / Heat Treated, `T1`–`T10` Marble Fade, `T1`–`T6` Crimson
  Kimono) selects that variant. Items without such variants fall back
  to their plain ranges.

Without `phase`/`tier`, every variant is returned and `best_price_rmb`
covers only the plain (variant-less) ranges. Data refreshes about every
10 minutes.

## Query parameters

- `market_hash_name` string
- `float` number
- `phase` 'Phase 1' | 'Phase 2' | 'Phase 3' | 'Phase 4' | 'Ruby' | 'Sapphire' | 'Black Pearl' | 'Emerald'
- `fade` number
- `tier` 'T1' | 'T2' | 'T3' | 'T4' | 'T5' | 'T6' | 'T7' | 'T8' | 'T9' | 'T10'

## Response `200`

Buy-order ranges per skin.

- BuffFloatBuyorderResponse: Envelope fields returned by every `GET /v1/prices/*` response.
  - `source` 'Buff163', required: Human-readable marketplace identifier.
  - `requestor` string, email: Email address associated with the API key making the call.
  - `plan` string: Plan of the API key (e.g. `free`, `pro`, `enterprise`).
  - `timestamp` string, date-time, required: ISO-8601 UTC timestamp (millisecond precision).
  - `data` BuffFloatBuyorderItem[], required
    - `goods_id` integer
    - `market_hash_name` string
    - `best_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.
    - `best_order_count` integer
    - `updated_at` string, date-time, nullable
    - `ranges` BuffFloatBuyorderRange[]
      - `float_range` string: Float bucket or "any".
      - `min_float` number, nullable
      - `max_float` number, nullable
      - `fade_range` string: Fade % bucket or "any".
      - `min_fade` number, nullable
      - `max_fade` number, nullable
      - `phase` string, nullable
      - `tier` string, nullable
      - `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.
      - `order_count` integer: Buy orders in this range.
      - `updated_at` string, date-time, nullable
  - `meta` object, required
    - `count` integer
    - `ranges` integer
    - `currency` 'CNY'
    - `filters` object
    - `updated_at` string, date-time, nullable

## Other responses

- `400`: Invalid filter (e.g. float outside 0–1, unknown phase/tier, phase and tier together).
- `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)
