Tokopedia API endpoint
Returns public product detail from a canonical Tokopedia shop domain and product key. This endpoint does not accept arbitrary URLs; numeric product IDs are returned when the product page exposes them but cannot be used as lookup input.
/tokopedia/productshop_domain (required): canonical Tokopedia shop domain, for example ismile-indonesia.product_key (required): canonical Tokopedia product key, for example apple-iphone-17-pro-max-garansi-resmi-256gb-512gb-1tb-2tb-1733012454966462347.The endpoint does not accept a raw URL. It returns a numeric product_id when the public page exposes one, but numeric IDs are not supported as lookup input.
| Field | In the sample | Value in the sample |
|---|---|---|
| product_id | Has a value | |
| shop_domain | Has a value | “ismile-indonesia” |
| product_key | Has a value | |
| name | Has a value | “[ SPESIAL PROMO ] Apple iPhone 17 Pro Max Garansi Resmi 256…” |
| price | Has a value | 25,092,000 |
| price_text | Has a value | “Rp25.092.000” |
| original_price | Has a value | “Rp31.999.000” |
| discount_percent | Has a value | “22%” |
| description | Has a value | 2,735 characters |
| images | Has a value | 5 entries |
| browser_rendered | Has a value | true |
| Parameter | Type | Required | Default | Description | Example |
|---|---|---|---|---|---|
| shop_domain | string | Yes | Canonical Tokopedia shop domain | ismile-indonesia | |
| product_key | string | Yes | Canonical Tokopedia product key | apple-iphone-17-pro-max-garansi-resmi-256gb-512gb-1tb-2tb-1733012454966462347 | |
| x-api-key (header) | string | Yes | API key required |
curl -X GET "https://api.crawlora.net/api/v1/tokopedia/product?shop_domain=ismile-indonesia&product_key=apple-iphone-17-pro-max-garansi-resmi-256gb-512gb-1tb-2tb-1733012454966462347" \ -H "x-api-key: $CRAWLORA_API_KEY"
{
"code": 200,
"msg": "OK",
"data": {
"product_id": "102491859263",
"shop_domain": "ismile-indonesia",
"product_key": "apple-iphone-17-pro-max-garansi-resmi-256gb-512gb-1tb-2tb-1733012454966462347",
"name": "Apple iPhone 17 Pro Max",
"price": 25000000,
"price_text": "Rp25.000.000",
"browser_rendered": true
}
}Request schema
No body schema
Response schema
#/definitions/tokopedia.productResponseDoc
| Field | Type | Required | Enum | Bounds | Example | Description |
|---|---|---|---|---|---|---|
| code | integer | No | 200 | |||
| data | tokopedia.ProductDetail | No | ||||
| data.browser_rendered | boolean | No | ||||
| data.description | string | No | ||||
| data.discount_percent | string | No | ||||
| data.fetched_at | string | No | ||||
| data.images | array | No | ||||
| data.name | string | No | ||||
| data.original_price | string | No | ||||
| data.price | integer | No | ||||
| data.price_text | string | No | ||||
| data.product_id | string | No | ||||
| data.product_key | string | No | ||||
| data.shop_domain | string | No | ||||
| data.source_url | string | No | ||||
| msg | string | No | OK |
| Status | Description | Schema |
|---|---|---|
| 400 | Bad Request | #/definitions/app.Response |
| 404 | Not Found | #/definitions/app.Response |
| 429 | Too Many Requests | #/definitions/app.Response |
| 503 | Service Unavailable | #/definitions/app.Response |
Use environment variables for secrets and keep Crawlora API keys server-side.
curl -X GET "https://api.crawlora.net/api/v1/tokopedia/product?shop_domain=ismile-indonesia&product_key=apple-iphone-17-pro-max-garansi-resmi-256gb-512gb-1tb-2tb-1733012454966462347" \
-H "x-api-key: $CRAWLORA_API_KEY"