Endpoints by data type
Product detail API
2 endpoints on 2 platforms return product details as the same Product object. One product from a platform’s shop by its ID, or its link where the endpoint takes one: title, current and original price, units sold, rating, number of reviews, images and the shop that sells it. A call costs from $0.002 to $0.02, each endpoint at its own price; a failed call is free.
Product detail · on each platform
| Platform | Endpoint | Path | A page | Price |
|---|---|---|---|---|
| TikTok | TikTok Shop product detail | GET /v1/tiktok/shop/products/get | 1 | $0.002 per call |
| Xiaohongshu (RedNote) | Xiaohongshu shop product detail | GET /v1/xiaohongshu/shop/products/get | 1 | $0.02 per call |
from $0.002 to $0.02 a call, each endpoint at its own price. A call that fails costs nothing.
The object it returns: Product
Every endpoint above returns these fields with the same names and types. A field a platform does not show comes back null and is named in meta.unavailable.
| Field | Type | Meaning |
|---|---|---|
id | string | Product ID in the shop. |
url | string | Product page. |
title | string | Product title. |
price | number | null | Current price (the lowest variant), in the currency given. |
original_price | number | null | List price before discount, where shown. |
currency | string | null | ISO 4217 currency code. |
sold | integer | null | Units sold, as the shop shows it. |
rating | number | null | Average stars, 0 to 5. |
reviews | integer | null | Number of reviews. |
images | string[] | null | Product image URLs. |
shop | ShopRef | Who sells it. |
ext | object | Platform-specific extras. Only returned with view=full. |
The same call on two platforms
Same parameters, same paging, same response shape. Only the path changes.
# TikTok
curl -G "https://api.okdata.online/v1/tiktok/shop/products/get" \
-H "Authorization: Bearer $OKDATA_API_KEY" \
--data-urlencode 'id=1732296652516463425'
# Xiaohongshu (RedNote)
curl -G "https://api.okdata.online/v1/xiaohongshu/shop/products/get" \
-H "Authorization: Bearer $OKDATA_API_KEY" \
--data-urlencode 'id=6441fb9a6cd6140001acf7b4'What people use it for
- Track a competing product’s price and units sold every day.
- Turn a list of product links into one comparison table.
Questions
- Which currency is the price in?
- The shop’s own, given in currency as an ISO 4217 code. Convert before you compare products from shops in different countries.
- Are units sold exact?
- They are what the shop shows. Where a shop rounds them or shows none, you get its figure or null, and a null is named in meta.unavailable.
- Can I see the price history?
- Each call returns the price now. Call on a schedule and store the results to build your own history.