# Shopify product: `POST /v1/retail/shopify/products/detail`

Cost: 2 credits (2 (an unknown handle and failed requests are free)). Docs: https://scrapercompany.com/docs/reference/shopify-product

One product, with every variant and image, plus barcodes and selling
plans when the store publishes them. List pages cap variants at 100 and
images at 25 and report `variants_omitted` and `images_omitted`; this
route does not. An unknown handle is 404 and is not billed. Repeated
lookups of the same product are served from a 15-minute cache.

Request body (JSON):

- `store` (string; required; min length 1, max length 300): Public store address, a domain or an https URL (allbirds.com).
- `market` (string | null; optional): Market code echoed on the answer. It does not change the currency the store publishes.
- `locale` (string | null; optional): Locale path prefix the store publishes, such as en or en-ca.
- `handle` (string; required; min length 1, max length 300): Product handle, or a product URL on this store.

Base URL: `https://api.scrapercompany.com`. Auth: send your key in the `x-api-key` header. A failed request (4xx or 5xx) or an empty result costs 0 credits.

- [Full API reference as one Markdown file](https://scrapercompany.com/llms-full.txt)
- [OpenAPI spec](https://scrapercompany.com/openapi.json)
