TikTok Shop: get product details
Inspect one public product page for pricing, identity, images and other fields when available from the source.
5 credits per request. Public data only; GeckoAPI is independent of the marketplace.
Try this endpointRegion, pagination and limitations
Choose BR, MX, JP, ID, MY, PH, SG, TH, VN or FR. Search takes a keyword and pages 1–20; follow hasMore/nextPage. Product details take productId or a full URL. Keep the same region from search to product. Description, reference price and seller ratings may be absent. Invalid upstream products cause extraction errors rather than empty successful products.
HTTP request
curl -X POST https://api.geckoapi.com.br/v1/extract \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"target": "tiktok.com",
"type": "pdp",
"region": "BR",
"productId": "1737210528686179693"
}' Replace YOUR_API_KEY with your own server-side credential. Read the quickstart for authentication and error handling.
Supported inputs
| Field | Requirement | Meaning |
|---|---|---|
| url | conditional | Complete public search or product URL. Keep its country and query parameters. |
| region | optional | Source-specific country code. See the regional notes below. |
| target | required | Source identifier shown in the example. |
| type | required | plp for search; pdp for product details. |
| productId | conditional | Product ID returned by search. Keep it as a string. |
Conditional means an alternative input can satisfy the request, such as keyword or search URL. Fields absent from this table are unsupported for this endpoint.
Example response
One possible response, not a guarantee of current price or availability. Product text stays in the source language. Fields may be missing or null; preserve that distinction in your database.
{
"requestId": "example-request-id",
"executionId": "example-execution-id",
"data": {
"source": "tiktok.com",
"type": "pdp",
"region": "BR",
"currency": "BRL",
"extractedAt": "2026-10-21T14:54:49.596565+00:00",
"productId": "1737210528686179693",
"url": "https://www.tiktok.com/shop/br/pdp/1737210528686179693",
"name": "Jogo de Panelas Dona Chefa 10 Peças Antiaderente Tampa de Vidro Marrom Escuro Choccino Preto Colmeia Dourado Prata Vanilla",
"status": 1,
"priceType": "displayed_offer",
"price": 258.99,
"displayPrice": "R$ 258,99",
"regularPrice": null,
"displayRegularPrice": null,
"minPrice": 208.9,
"maxPrice": 428.99,
"images": [
{
"url": "https://p16-oec-sg.ibyteimg.com/tos-alisg-i-aphluv4xwc-sg/4ed17f20e85441f0b61bddc551dbd246~tplv-aphluv4xwc-resize-webp:800:800.webp?dr=15582&t=555f072d&ps=933b5bde&shp=7745054a&shcp=9b759fb9&idc=my2&from=2001012042",
"width": 800,
"height": 800
},
{
"url": "https://p16-oec-sg.ibyteimg.com/tos-alisg-i-aphluv4xwc-sg/98808090c59e404a97d9ae06e6397f9b~tplv-aphluv4xwc-resize-webp:800:800.webp?dr=15582&t=555f072d&ps=933b5bde&shp=7745054a&shcp=9b759fb9&idc=my2&from=2001012042",
"width": 800,
"height": 800
}
],
"description": null,
"specifications": [
{
"name": "Material",
"value": "Alumínio"
},
{
"name": "Recurso",
"value": "Antiaderente,Antitérmico,Anatômico,Ergonômico,Resistente,Durável,Prático,Leve,Versátil,Lavável,Colorido,Uniforme,Com alça,Com tampa"
}
],
"category": {
"id": "600024",
"name": "Kitchenware"
},
"seller": {
"id": "7494512797373728109",
"name": "99Store Shop",
"location": "Brazil",
"rating": null,
"productCount": 29
},
"soldCount": 28,
"rating": 4.9,
"reviewCount": 8,
"variants": [
{
"skuId": "1737210471965230445",
"status": 1,
"price": 258.99,
"displayPrice": "R$ 258,99",
"regularPrice": null,
"displayRegularPrice": null,
"currency": "BRL",
"stock": 113,
"purchaseLimit": 200,
"minimumBuyQuantity": 0,
"attributes": [
{
"name": "Cor",
"value": "Marrom Escuro"
}
]
},
{
"skuId": "1737210471965295981",
"status": 0,
"price": 379.99,
"displayPrice": "R$ 379,99",
"regularPrice": null,
"displayRegularPrice": null,
"currency": "BRL",
"stock": 188,
"purchaseLimit": 200,
"minimumBuyQuantity": 0,
"attributes": [
{
"name": "Cor",
"value": "Marrom Escuro c/ Grill (11 pçs)"
}
]
}
]
}
} Response fields
{
"requestId": "string",
"executionId": "string",
"data.source": "\"tiktok.com\"",
"data.type": "\"pdp\"",
"data.region": "string",
"data.currency": "string",
"data.extractedAt": "string (ISO 8601)",
"data.productId": "string",
"data.url": "string (URL)",
"data.name": "string",
"data.status": "number | null",
"data.priceType": "\"displayed_offer\"",
"data.price": "number | null",
"data.displayPrice": "string | null",
"data.regularPrice": "number | null",
"data.displayRegularPrice": "string | null",
"data.minPrice": "number | null",
"data.maxPrice": "number | null",
"data.images": "array<object>",
"data.images[].url": "string (URL)",
"data.images[].width": "number | null",
"data.images[].height": "number | null",
"data.description": "object | null",
"data.description.text": "string | null (optional)",
"data.description.images": "array<object> (optional)",
"data.description.images[].url": "string (URL) (optional)",
"data.description.images[].width": "number | null (optional)",
"data.description.images[].height": "number | null (optional)",
"data.specifications": "array<object>",
"data.specifications[].name": "string | null (optional)",
"data.specifications[].value": "string | null (optional)",
"data.category.id": "string | null",
"data.category.name": "string | null",
"data.seller.id": "string | null",
"data.seller.name": "string | null",
"data.seller.location": "string | null",
"data.seller.rating": "number | null",
"data.seller.productCount": "number | null",
"data.soldCount": "number | null",
"data.rating": "number | null",
"data.reviewCount": "number | null",
"data.variants": "array<object>",
"data.variants[].skuId": "string",
"data.variants[].status": "number | null",
"data.variants[].price": "number | null",
"data.variants[].displayPrice": "string | null",
"data.variants[].regularPrice": "number | null",
"data.variants[].displayRegularPrice": "string | null",
"data.variants[].currency": "string | null",
"data.variants[].stock": "number | null",
"data.variants[].purchaseLimit": "number | null",
"data.variants[].minimumBuyQuantity": "number | null",
"data.variants[].attributes": "array<object>",
"data.variants[].attributes[].name": "string | null (optional)",
"data.variants[].attributes[].value": "string | null (optional)"
}