# A product

```http
GET /v1/products/{product}
```

Source: https://docs.tryyoursize.com/api/reference/operations/getcatalogproduct/

**Key scopes:** `products:read`. A secret key (`sk_`) has every scope; a restricted key (`rk_`) needs the scopes listed.

By ID or SKU.

## Authentication

Secret key (`sk_…`) or restricted key (`rk_…`) from your server: `Authorization: Bearer sk_…`.

## Parameters

- `product` (path, `string`, required): The product: its TryYourSize ID (UUID) or the brand's SKU / style ID (`external_id`). An ID is looked up first.

## Responses

### 200

OK (`Product`)

- `id` (`string (uuid)`, required)
- `external_id` (`string`, required): The brand's SKU or style ID (unique per brand).
- `name` (`string`, required)
- `category` (`"tshirt" | "shirt" | "sweater" | "jacket" | "dress" | "skirt" | "jeans" | "trousers" | "shorts" | "leggings" | "polo" | "hoodie"`, required): The garment type; it sets which POMs are needed.
- `published_version` (`integer`, optional): Garment version shoppers are fitted against, if any.
- `draft_version` (`integer`, optional): Garment version being edited, if any.
- `created_at` (`string (date-time)`, required)
- `updated_at` (`string (date-time)`, required)
- `fit_group_id` (`string (uuid)`, optional): The fit group whose garment this product uses (absent until grouped).
- `brand_id` (`string (uuid)`, optional): The brand the product belongs to; every store of the brand sees it.
- `home_store_id` (`string (uuid)`, optional): The store the product was created in.
- `retired_at` (`string (date-time)`, optional): Set when the product is retired; shoppers no longer get a size for it.
- `available` (`boolean`, optional): Whether the store it was read through offers it (false in the brand list, see `stores`).

### 401

Missing or invalid credentials (`Error`)

### 403

Not allowed (`Error`)

### 404

Not found (`Error`)

## Example

```bash
curl -X GET https://api.tryyoursize.com/v1/products/<product> \
  -H "Authorization: Bearer $TRYYOURSIZE_SECRET_KEY" \
  -H "TYS-Version: 2026-10-25"
```

## In the SDKs

- Node.js: [`tys.products.retrieve()`](https://docs.tryyoursize.com/reference/node/products-retrieve.md)
- Python: [`tys.products.retrieve()`](https://docs.tryyoursize.com/reference/python/products-retrieve.md)
