---
title: "Get product details"
method: GET
path: "/products/{id_or_slug}"
tags: ["Products"]
---

# Get product details

`GET /products/{id_or_slug}`

## Request

- Base URL: `https://api.crevio.co/v1`
- URL: `https://api.crevio.co/v1/products/{id_or_slug}`
- Auth: API key in header `Authorization`

Returns detailed information about a specific product

## Path parameters

- `id_or_slug` string, required

## Query parameters

- `expand` string

## Response `200`

Product details

- Product
  - `id` string, required
  - `object` string, required
  - `name` string, required
  - `slug` string, required
  - `status` 'draft' | 'active' | 'archived', required
  - `description` string, required
  - `created_at` string, date-time, required
  - `updated_at` string, date-time, required
  - `metadata` object, required
  - `body_html` string, required
  - `button_cta` string, nullable, required
  - `url` string, required
  - `available_from` string, date-time, nullable, required
  - `available_until` string, date-time, nullable, required
  - `published_at` string, date-time, nullable, required
  - `reviews_count` integer, required
  - `average_rating` number, nullable, required
  - `seo` union: ID by default, full object when expanded
    - string
    - Seo
      - `title` string, nullable, required
      - `description` string, nullable, required
  - `media_gallery` MediaGalleryItem[], required
    - `id` string, required
    - `type` string, required
    - `category` 'image' | 'video' | 'external', required
    - `url` string, required
  - `price_variants` PriceVariant[], required
    - `id` string, required
    - `object` string, required
    - `name` string, required
    - `amount` integer, nullable, required
    - `amount_type` 'free' | 'fixed' | 'custom', required
    - `billing_type` 'subscription' | 'one_time' | 'payment_plan', required
    - `recurring_interval` 'day' | 'week' | 'month' | 'year' | 'null', nullable, required
    - `interval_count` integer, required
    - `installment_count` integer, nullable, required
    - `setup_fee_amount` integer, nullable, required
    - `trial_period_days` integer, nullable, required
    - `revoke_after_days` integer, nullable, required
    - `quantity_available` integer, nullable, required
    - `archived` boolean, nullable, required
    - `position` integer, required
    - `hidden` boolean, nullable, required
    - `created_at` string, date-time, required
    - `updated_at` string, date-time, required
    - `currency` string, nullable, required
    - `discounted_from_amount` integer, nullable, required
    - `minimum_amount` integer, nullable, required
    - `maximum_amount` integer, nullable, required
    - `preset_amount` integer, nullable, required
    - `waitlist` boolean, required
    - `benefits` string[]
    - `purchase_url` string, required
    - `product` string, required
  - `reviews` Review[]
    - `id` string, required
    - `object` string, required
    - `rating` integer, required
    - `customer_name` string, nullable, required
    - `content` string, nullable, required
    - `created_at` string, date-time, required
    - `customer_image_url` string, nullable, required

## Other responses

- `400`: Bad request
- `401`: Authentication required
- `403`: Forbidden
- `404`: Resource not found
- `429`: Rate limit exceeded — 600 requests per minute per credential. Retry after the number of seconds in `Retry-After`.
- `500`: Internal server error

---

[API](https://skmtc.dev/crevio/apis/crevio-api-v1.md) · [All operations](https://skmtc.dev/crevio/apis/crevio-api-v1/llms.txt) · [OpenAPI document](https://skmtc.dev/crevio/apis/crevio-api-v1/revisions/2219f18ad651?raw)
