---
title: "List product variants"
method: GET
path: "/products/{product_id}/variants"
tags: ["Products"]
---

# List product variants

`GET /products/{product_id}/variants`

## Request

- Base URL: `https://api.whatnot.com/seller-api/rest/v2`
- URL: `https://api.whatnot.com/seller-api/rest/v2/products/{product_id}/variants`
- Auth: OAuth 2
  - Authorization code: `https://api.whatnot.com/seller-api/rest/oauth/authorize`
  - Token URL: `https://api.whatnot.com/seller-api/rest/oauth/token`

List variants newest first by default; set reverse=false for oldest first.

## Path parameters

- `product_id` string, required

## Query parameters

- `limit` integer: Maximum results per page.
- `cursor` string, nullable: Cursor from the previous page.
- `reverse` boolean: Return descending order when true; ascending when false.

## Response `200`

Successful Response

- PageResponseProductVariant
  - `data` ProductVariant[], required: Results in the requested order.
    - `id` string, required: The variant's id.
    - `product_id` string, required: Parent product identifier.
    - `sku` string, nullable, required: Seller SKU, if set.
    - `external_id` string, nullable, required: Seller external identifier, if set.
    - `selected_options` SelectedOption[], required: Selected product option values.
      - `id` string, required: Stable product option identifier.
      - `name` string, required: Product option display name.
      - `value_id` string, required: Stable option value identifier.
      - `value` string, required: Selected option value.
    - `pricing` VariantPricing, required
      - `buy_it_now` VariantBuyItNow, required
        - `price` Money, required
          - `amount` string, required: Decimal amount in major currency units, e.g. 42.00.
          - `currency` string, required: ISO 4217 currency code.
      - `auction` VariantAuction, required
        - `start_price` Money, required
          - `amount` string, required: Decimal amount in major currency units, e.g. 42.00.
          - `currency` string, required: ISO 4217 currency code.
    - `country_of_origin` string, nullable, required: Seller-declared country of origin.
    - `inventory` VariantInventory, required
      - `available_quantity` integer, required: Available inventory quantity.
    - `media` Media[], required: Resolved variant images.
      - `id` string, nullable: The image's id.
      - `url` string, required: On create, the image URL to ingest. On read, the CDN URL of the ingested image.
      - `alt` string, nullable: The image's alt text / label, if set.
  - `next_cursor` string, nullable, required: Continuation cursor; null when there are no more results.

## Other responses

- `404`: Product not found.
- `422`: Invalid limit, cursor, or reverse flag.

---

[API](https://skmtc.dev/whatnot/apis/whatnot-seller-api.md) - [All operations](https://skmtc.dev/whatnot/apis/whatnot-seller-api/llms.txt) - [OpenAPI document](https://skmtc.dev/whatnot/apis/whatnot-seller-api/revisions/e619f15f7ce0?raw)
