> ## Documentation Index
> Fetch the complete documentation index at: https://api.csboard.com/llms.txt
> Use this file to discover all available pages before exploring further.

# GET /v1/stats — Your Delivery and Refund Record

> Your own order outcomes: delivered, refunded, refund rate, and measured delivery times — computed from your rows, not quoted from a slide.

"What is your refund rate?" is worth nothing as a number we tell you — you cannot check it, and it describes our traffic rather than yours. This returns **your** outcomes over a window you choose: orders placed, delivered, refunded, and how long delivery actually took.

Two things about what the numbers mean:

* **Held orders you cancelled yourself are not failures.** Buying a held item and changing your mind before the hold clears is the feature working. They are reported separately as `cancelled_by_you` and excluded from `refund_rate_pct`.
* **The denominator is settled orders only.** An order still in flight has no outcome yet; counting it would make your rate drift down simply because you ordered recently. `refund_rate_pct` is `null` until you have at least one settled order.

Delivery timing is median and p90 over completed orders, never a mean — one order that sat in a week-long Steam hold would otherwise swamp a thousand one-minute ones.

**Authentication required.** Send your key as `Authorization: Bearer csb_pub_...`.


## OpenAPI

````yaml GET /stats
openapi: 3.1.0
info:
  title: CSBoard API
  version: 1.0.0
  description: >-
    Market data over the CSBoard marketplace — live listings, floats, stickers,
    minAsk prices, FX rates — plus opt-in buying straight from your balance.
    Free to read, key-gated, built for automation.
  contact:
    name: CSBoard
    url: https://csboard.com/docs
servers:
  - url: https://csboard.com/v1
    description: Production
security:
  - bearerAuth: []
tags:
  - name: Status
    description: Liveness and freshness probes.
  - name: Market data
    description: Read the live catalog, prices, and FX rates.
  - name: Trading
    description: Buy listings from your CSBoard balance. Opt-in, key-gated.
  - name: Account
    description: Your balance, settled funds, and trading status.
  - name: Webhooks
    description: Register an endpoint and receive signed order updates instead of polling.
paths:
  /stats:
    get:
      tags:
        - Account
      summary: Your own delivery and refund record
      description: >-
        Orders you placed, how many were delivered, how many were refunded, and
        how long delivery actually took — computed from your rows at request
        time. Held orders you cancelled yourself are excluded from the refund
        rate: changing your mind before a hold clears is the feature working,
        not a failure. The rate is null until you have a settled order; we do
        not invent one from zero samples.
      operationId: getStats
      parameters:
        - name: days
          in: query
          description: Window in days, 1-365 (default 30).
          schema:
            type: integer
            default: 30
            minimum: 1
            maximum: 365
      responses:
        '200':
          description: Your record over the window.
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: object
                    properties:
                      window_days:
                        type: integer
                      since:
                        type: string
                        format: date-time
                      orders_total:
                        type: integer
                      delivered:
                        type: integer
                      refunded:
                        type: integer
                      cancelled_by_you:
                        type: integer
                        description: Held orders you cancelled. Excluded from the rate.
                      in_flight:
                        type: integer
                      refund_rate_pct:
                        type: number
                        nullable: true
                        description: >-
                          refunded / (delivered + refunded). Null with no
                          settled orders.
                      delivery_minutes:
                        type: object
                        properties:
                          median:
                            type: number
                            nullable: true
                          p90:
                            type: number
                            nullable: true
                          samples:
                            type: integer
        '422':
          description: '`invalid_request` — days out of range.'
components:
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: >-
        Send your key as a Bearer token on every request: `Authorization: Bearer
        csb_pub_...`. Generate keys in your CSBoard profile.

````