---
title: "TikTok Shop product detail"
method: GET
path: "/api/v1/tiktok/shop/product"
tags: ["TikTok Shop"]
---

# TikTok Shop product detail

`GET /api/v1/tiktok/shop/product`

## Request

- Base URL: `https://scrapewhale.dev`
- URL: `https://scrapewhale.dev/api/v1/tiktok/shop/product`
- Auth: one of:
  - HTTP bearer
  - API key in header `x-api-key`

Product detail with **exact** figures: units sold, per-SKU stock and pricing, rating with the full 1–5 star histogram, categories, images, and a small review sample. Snapshot stock over time and diff it to estimate sales velocity. Region (prices/currency) follows the scraper exit IP.

**Credits: 1** (refunded on failure).

## Query parameters

- `product_id` string, required
- `format` 'json' | 'markdown' | 'both'

## Response `200`

Success.

- ExtractionResult: A completed extraction. `data` is omitted when format=markdown; `markdown` is omitted when format=json.
  - `id` string, required
  - `status` 'completed', required
  - `extractor` string, required: Extractor name, e.g. "traffic", "meta-ads", "instagram-profile".
  - `title` string, nullable
  - `sourceUrl` string, nullable: Canonical public URL of the extracted source.
  - `creditsCharged` integer, required: 0 when served from the shared cache.
  - `cached` boolean: True when served from the shared extraction cache (free).
  - `createdAt` integer, required: Unix epoch milliseconds.
  - `data` object, nullable: Raw structured payload from the source.
  - `markdown` string: Clean markdown rendering of the payload.

## Other responses

- `400`: Invalid parameters.
- `401`: Missing or invalid API key.
- `402`: Insufficient credits.
- `422`: Extraction/conversion failed — credits refunded. `code` carries the failure category.
- `429`: Rate limit exceeded (60 requests/min per key).

---

[API](https://skmtc.dev/scrapewhale/apis/scrapewhale-api.md) · [All operations](https://skmtc.dev/scrapewhale/apis/scrapewhale-api/llms.txt) · [OpenAPI document](https://skmtc.dev/scrapewhale/apis/scrapewhale-api/revisions/3a19ec0be862?raw)
