> ## 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 a card

> One card, with every printing and its current prices.

Ids are `<expansion>-<number>` — `base1-4` is Charizard from Base Set. If you have a name and
not an id, pass it as `q` to [List cards](/cards/list) first.

The response is [the card object](/cards/object), including every printing and the current
price of each. For price history rather than the latest figure, use
[Get card prices](/cards/prices).


## OpenAPI

````yaml openapi.json GET /v1/cards/{id}
openapi: 3.0.0
info:
  title: Cromos API
  version: 1.0.0
servers:
  - url: https://api.cromos.so
security:
  - bearerAuth: []
paths:
  /v1/cards/{id}:
    get:
      tags:
        - Cards
      summary: Get a card
      description: >-
        One card with its full metadata and every printing it exists in, each
        carrying its own current prices. Returns 404 if no card carries the id.
      parameters:
        - schema:
            type: string
          required: true
          name: id
          in: path
      responses:
        '200':
          description: Card detail with current prices
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    $ref: '#/components/schemas/Card'
                  error:
                    type: object
                    nullable: true
                required:
                  - data
                  - error
              example:
                data:
                  id: base1-4
                  expansion_id: base1
                  number: '4'
                  name: Charizard
                  rarity: Rare
                  illustrator: Mitsuhiro Arita
                  image:
                    low: https://assets.cromos.so/cards/base1-4/low.webp
                    high: https://assets.cromos.so/cards/base1-4/high.webp
                  category: Pokemon
                  metadata:
                    hp: 120
                    types:
                      - Fire
                    pokedex_numbers:
                      - 6
                    stage: Stage2
                    evolve_from: Charmeleon
                    description: >-
                      Spits fire that is hot enough to melt boulders. Known to
                      unintentionally cause forest fires.
                    effect: null
                    trainer_type: null
                    energy_type: null
                    retreat: 3
                    abilities:
                      - kind: pokemon-power
                        name: Energy Burn
                        text: >-
                          As often as you like during your turn (before your
                          attack), you may turn all Energy attached to Charizard
                          into Fire Energy for the rest of the turn. This power
                          can't be used if Charizard is Asleep, Confused, or
                          Paralyzed.
                    attacks:
                      - cost:
                          - Fire
                          - Fire
                          - Fire
                          - Fire
                        name: Fire Spin
                        text: >-
                          Discard 2 Energy cards attached to Charizard in order
                          to use this attack.
                        damage: '100'
                    weaknesses:
                      - type: Water
                        modifier: x2
                    resistances:
                      - type: Fighting
                        modifier: '-30'
                    legality:
                      expanded: false
                      standard: false
                  variants:
                    - type: holo
                      subtype: unlimited
                      size: standard
                      stamps: []
                      foil: null
                      tcgplayer:
                        - condition: NM
                          currency: USD
                          market: 81865
                          low: 42650
                          high: 149965
                          observed_on: '2026-08-02'
                        - condition: LP
                          currency: USD
                          market: 51007
                          low: 35593
                          high: 67838
                          observed_on: '2026-08-02'
                        - condition: MP
                          currency: USD
                          market: 39188
                          low: 34500
                          high: 46472
                          observed_on: '2026-08-02'
                        - condition: HP
                          currency: USD
                          market: 28103
                          low: 25500
                          high: 32342
                          observed_on: '2026-08-02'
                        - condition: DMG
                          currency: USD
                          market: 20006
                          low: 11877
                          high: 24800
                          observed_on: '2026-08-02'
                      cardmarket:
                        price_kind: plain
                        currency: EUR
                        observed_on: '2026-08-03'
                        avg: 44670
                        low: 9995
                        trend: 33683
                        avg_holo: null
                        low_holo: null
                        trend_holo: 12363
                    - type: holo
                      subtype: shadowless
                      size: standard
                      stamps:
                        - 1st-edition
                      foil: null
                      tcgplayer: []
                      cardmarket: null
                    - type: holo
                      subtype: shadowless
                      size: standard
                      stamps: []
                      foil: null
                      tcgplayer: []
                      cardmarket: null
                    - type: holo
                      subtype: 1999-2000-copyright
                      size: standard
                      stamps: []
                      foil: null
                      tcgplayer: []
                      cardmarket: null
                error: null
        '400':
          description: Bad request
          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:
    Card:
      type: object
      properties:
        id:
          type: string
        expansion_id:
          type: string
        number:
          type: string
          nullable: true
          description: The printed collector number, e.g. `TG01`.
        name:
          type: string
        rarity:
          type: string
          nullable: true
        illustrator:
          type: string
          nullable: true
        image:
          $ref: '#/components/schemas/ImageUrls'
        category:
          type: string
          nullable: true
        metadata:
          $ref: '#/components/schemas/CardMetadata'
        variants:
          type: array
          items:
            $ref: '#/components/schemas/CardVariant'
      required:
        - id
        - expansion_id
        - number
        - name
        - rarity
        - illustrator
        - image
        - category
        - metadata
        - variants
    ErrorResponse:
      type: object
      properties:
        data:
          type: object
          nullable: true
        error:
          $ref: '#/components/schemas/ApiError'
      required:
        - data
        - error
    ImageUrls:
      type: object
      nullable: true
      properties:
        low:
          type: string
          format: uri
          description: Thumbnail-sized rendition. May be the same URL as `high`.
        high:
          type: string
          format: uri
          description: Full-sized rendition. May be the same URL as `low`.
      required:
        - low
        - high
    CardMetadata:
      type: object
      nullable: true
      properties:
        hp:
          type: number
          nullable: true
        types:
          type: array
          nullable: true
          items:
            type: string
        pokedex_numbers:
          type: array
          nullable: true
          items:
            type: number
        stage:
          type: string
          nullable: true
        evolve_from:
          type: string
          nullable: true
        description:
          type: string
          nullable: true
        effect:
          type: string
          nullable: true
        trainer_type:
          type: string
          nullable: true
        energy_type:
          type: string
          nullable: true
        retreat:
          type: number
          nullable: true
        abilities:
          type: array
          nullable: true
          items:
            type: object
            properties:
              kind:
                type: string
                description: >-
                  Our kebab-case token for the rule box: `ability`,
                  `pokemon-power`, `poke-body`, …
              name:
                type: string
              text:
                type: string
                nullable: true
            required:
              - kind
              - name
              - text
        attacks:
          type: array
          nullable: true
          items:
            type: object
            properties:
              name:
                type: string
              cost:
                type: array
                nullable: true
                items:
                  type: string
                description: Energy symbols in printed order.
              damage:
                type: string
                nullable: true
                description: 'As printed: `80`, `80+`, `30x`.'
              text:
                type: string
                nullable: true
            required:
              - name
              - cost
              - damage
              - text
        weaknesses:
          type: array
          nullable: true
          items:
            type: object
            properties:
              type:
                type: string
              modifier:
                type: string
                nullable: true
                description: 'As printed, ascii: `x2`, `-30`, `+10`.'
            required:
              - type
              - modifier
        resistances:
          type: array
          nullable: true
          items:
            type: object
            properties:
              type:
                type: string
              modifier:
                type: string
                nullable: true
                description: 'As printed, ascii: `x2`, `-30`, `+10`.'
            required:
              - type
              - modifier
        legality:
          type: object
          nullable: true
          properties:
            standard:
              type: boolean
            expanded:
              type: boolean
          required:
            - standard
            - expanded
      required:
        - hp
        - types
        - pokedex_numbers
        - stage
        - evolve_from
        - description
        - effect
        - trainer_type
        - energy_type
        - retreat
        - abilities
        - attacks
        - weaknesses
        - resistances
        - legality
    CardVariant:
      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.
        tcgplayer:
          type: array
          items:
            $ref: '#/components/schemas/TcgplayerPrice'
        cardmarket:
          allOf:
            - $ref: '#/components/schemas/CardmarketPrice'
            - type: object
              nullable: true
              properties:
                price_kind:
                  type: string
                  nullable: true
                  enum:
                    - plain
                    - holo
                    - null
                  description: >-
                    Which cardmarket column set belongs to this printing. Null
                    where no link exists or the set could not be determined.
              required:
                - price_kind
      required:
        - type
        - subtype
        - size
        - stamps
        - foil
        - tcgplayer
        - cardmarket
    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
    TcgplayerPrice:
      type: object
      properties:
        condition:
          type: string
        currency:
          type: string
          enum:
            - USD
        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).
        observed_on:
          type: string
          description: The date this price was observed, as YYYY-MM-DD.
      required:
        - condition
        - currency
        - market
        - low
        - high
        - observed_on
    CardmarketPrice:
      type: object
      properties:
        currency:
          type: string
          enum:
            - EUR
        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:
        - currency
        - observed_on
        - avg
        - low
        - trend
        - avg_holo
        - low_holo
        - trend_holo
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer

````