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

# Get card prices

> Daily price history for every printing of a card.

Every printing gets its own price history. On the cardmarket side that is one EUR history per
printing; on the tcgplayer side it is one USD history **per condition** — a holo Charizard
priced in `NM`, `LP`, `MP`, `HP` and `DMG` returns five tcgplayer histories for that one
printing, not one. See [the card object](/cards/object) for what separates a printing from a
condition.

The window defaults to the last 90 days. Pass `from` and `to` as `YYYY-MM-DD` for a different
one, up to 366 days wide — a range that is malformed, inverted, or wider than that is a `400`,
not an empty result. The full history stays reachable one bounded window at a time.

Days with no observation are absent from the history rather than present as `null`, so a chart
should plot against `observed_on` rather than assume one point per day.


## OpenAPI

````yaml openapi.json GET /v1/cards/{id}/prices
openapi: 3.0.0
info:
  title: Cromos API
  version: 1.0.0
servers:
  - url: https://api.cromos.so
security:
  - bearerAuth: []
paths:
  /v1/cards/{id}/prices:
    get:
      tags:
        - Cards
      summary: Get card prices
      description: >-
        Daily price history for every printing of one card, from both sources.
        Defaults to the last 90 days; pass `from` and `to` as `YYYY-MM-DD` for a
        different window, up to 366 days wide. Returns 404 if no card carries
        the id, and 400 if the range is malformed, inverted, or wider than the
        maximum.
      parameters:
        - schema:
            type: string
          required: true
          name: id
          in: path
        - schema:
            type: string
          required: false
          name: from
          in: query
        - schema:
            type: string
          required: false
          name: to
          in: query
      responses:
        '200':
          description: Card price history
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    $ref: '#/components/schemas/CardPriceHistory'
                  error:
                    type: object
                    nullable: true
                required:
                  - data
                  - error
              example:
                data:
                  from: '2026-05-06'
                  to: '2026-08-04'
                  variants:
                    - variant:
                        type: holo
                        subtype: null
                        size: standard
                        stamps: []
                        foil: null
                      tcgplayer:
                        - condition: HP
                          currency: USD
                          history:
                            - observed_on: '2026-07-22'
                              market: 26815
                              low: 19999
                              high: 37450
                            - observed_on: '2026-08-02'
                              market: 26815
                              low: 19999
                              high: 37450
                        - condition: LP
                          currency: USD
                          history:
                            - observed_on: '2026-07-22'
                              market: 34933
                              low: 26499
                              high: 39089
                            - observed_on: '2026-07-27'
                              market: 34618
                              low: 26499
                              high: 39089
                            - observed_on: '2026-07-31'
                              market: 34638
                              low: 26499
                              high: 39089
                            - observed_on: '2026-08-02'
                              market: 34486
                              low: 26499
                              high: 39089
                        - condition: DMG
                          currency: USD
                          history:
                            - observed_on: '2026-07-22'
                              market: 26266
                              low: 12497
                              high: 35000
                            - observed_on: '2026-07-27'
                              market: 26450
                              low: 12497
                              high: 35000
                            - observed_on: '2026-07-28'
                              market: 26580
                              low: 12497
                              high: 35000
                            - observed_on: '2026-07-29'
                              market: 26731
                              low: 12497
                              high: 35000
                            - observed_on: '2026-08-02'
                              market: 27844
                              low: 20123
                              high: 35000
                        - condition: MP
                          currency: USD
                          history:
                            - observed_on: '2026-07-22'
                              market: 31782
                              low: 23274
                              high: 36500
                            - observed_on: '2026-08-02'
                              market: 31782
                              low: 23274
                              high: 36500
                        - condition: NM
                          currency: USD
                          history:
                            - observed_on: '2026-07-22'
                              market: 38916
                              low: 37869
                              high: 40150
                            - observed_on: '2026-07-27'
                              market: 38416
                              low: 28000
                              high: 40150
                            - observed_on: '2026-07-28'
                              market: 38272
                              low: 28000
                              high: 40150
                            - observed_on: '2026-07-29'
                              market: 38169
                              low: 28000
                              high: 40150
                            - observed_on: '2026-07-31'
                              market: 37683
                              low: 28000
                              high: 39407
                            - observed_on: '2026-08-02'
                              market: 36640
                              low: 26307
                              high: 38399
                      cardmarket:
                        currency: EUR
                        price_kind: plain
                        history:
                          - observed_on: '2026-07-26'
                            avg: 41647
                            low: 21000
                            trend: 38462
                            avg_holo: null
                            low_holo: null
                            trend_holo: 0
                          - observed_on: '2026-07-27'
                            avg: 41647
                            low: 20000
                            trend: 37145
                            avg_holo: null
                            low_holo: null
                            trend_holo: 0
                          - observed_on: '2026-07-29'
                            avg: 41647
                            low: 23000
                            trend: 37110
                            avg_holo: null
                            low_holo: null
                            trend_holo: 0
                          - observed_on: '2026-07-31'
                            avg: 41647
                            low: 24000
                            trend: 36266
                            avg_holo: null
                            low_holo: null
                            trend_holo: 0
                          - observed_on: '2026-08-01'
                            avg: 39305
                            low: 25000
                            trend: 34881
                            avg_holo: null
                            low_holo: null
                            trend_holo: 0
                          - observed_on: '2026-08-02'
                            avg: 39305
                            low: 23000
                            trend: 33599
                            avg_holo: null
                            low_holo: null
                            trend_holo: 0
                          - observed_on: '2026-08-03'
                            avg: 39305
                            low: 20000
                            trend: 32655
                            avg_holo: null
                            low_holo: null
                            trend_holo: 0
                error: null
        '400':
          description: Bad range
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '404':
          description: Not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '500':
          description: Internal error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
components:
  schemas:
    CardPriceHistory:
      type: object
      properties:
        from:
          type: string
        to:
          type: string
        variants:
          type: array
          items:
            type: object
            properties:
              variant:
                type: object
                properties:
                  type:
                    type: string
                    description: >-
                      The printing — `normal`, `holo`, `reverse` and so on. A
                      printing, not a physical dimension: see `size`.
                  subtype:
                    type: string
                    nullable: true
                    description: A narrower printing within `type`, where one exists.
                  size:
                    type: string
                    nullable: true
                    description: >-
                      The physical card size, such as `standard` or `jumbo`. A
                      different axis from `type`: a jumbo card and a holo card
                      are not alternatives.
                  stamps:
                    type: array
                    items:
                      type: string
                    description: >-
                      Promotional stamps printed on this variant, such as a
                      prerelease or staff stamp.
                  foil:
                    type: string
                    nullable: true
                    description: The foil treatment, where the printing carries one.
                required:
                  - type
                  - subtype
                  - size
                  - stamps
                  - foil
              tcgplayer:
                type: array
                items:
                  type: object
                  properties:
                    condition:
                      type: string
                    currency:
                      type: string
                      enum:
                        - USD
                    history:
                      type: array
                      items:
                        type: object
                        properties:
                          observed_on:
                            type: string
                            description: The date this price was observed, as YYYY-MM-DD.
                          market:
                            type: integer
                            nullable: true
                            description: An integer amount in cents (minor units).
                          low:
                            type: integer
                            nullable: true
                            description: An integer amount in cents (minor units).
                          high:
                            type: integer
                            nullable: true
                            description: An integer amount in cents (minor units).
                        required:
                          - observed_on
                          - market
                          - low
                          - high
                  required:
                    - condition
                    - currency
                    - history
              cardmarket:
                type: object
                properties:
                  currency:
                    type: string
                    enum:
                      - EUR
                  history:
                    type: array
                    items:
                      type: object
                      properties:
                        observed_on:
                          type: string
                          description: The date this price was observed, as YYYY-MM-DD.
                        avg:
                          type: integer
                          nullable: true
                          description: An integer amount in cents (minor units).
                        low:
                          type: integer
                          nullable: true
                          description: An integer amount in cents (minor units).
                        trend:
                          type: integer
                          nullable: true
                          description: An integer amount in cents (minor units).
                        avg_holo:
                          type: integer
                          nullable: true
                          description: An integer amount in cents (minor units).
                        low_holo:
                          type: integer
                          nullable: true
                          description: An integer amount in cents (minor units).
                        trend_holo:
                          type: integer
                          nullable: true
                          description: An integer amount in cents (minor units).
                      required:
                        - observed_on
                        - avg
                        - low
                        - trend
                        - avg_holo
                        - low_holo
                        - trend_holo
                  price_kind:
                    type: string
                    nullable: true
                    enum:
                      - plain
                      - holo
                      - null
                required:
                  - currency
                  - history
                  - price_kind
            required:
              - variant
              - tcgplayer
              - cardmarket
      required:
        - from
        - to
        - variants
    ErrorResponse:
      type: object
      properties:
        data:
          type: object
          nullable: true
        error:
          $ref: '#/components/schemas/ApiError'
      required:
        - data
        - error
    ApiError:
      type: object
      properties:
        code:
          type: string
          description: A stable machine-readable token. Switch on this, not on `message`.
        message:
          type: string
          description: A human-readable sentence. Always present, never empty.
      required:
        - code
        - message
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer

````