https://api.nexscope.ai/et/batchProductDetailRun this API
Send a JSON request to execute this API and receive the documented response payload.
Endpoint
| Method | POST |
| Path | https://api.nexscope.ai/et/batchProductDetail |
| Auth | Bearer API key |
| Content-Type | application/json |
Request parameters
| Name | Type | Required | Description |
|---|---|---|---|
productIds | string[] | optional | List of product IDs (up to 1000). Example: `["1729382310407603945", "1729382310407603946"]` |
productUrls | string[] | optional | Product URL list (up to 1000), in the shape of `https://shop.tiktok.com/us/pdp/<slug>/<productId>?...`; the backend will extract the `productId` at the end from each URL and merge it into `productIds`, which is not mutually exclusive with `productIds` |
Response example
Platform response envelope. code 0 indicates success or acceptance; data contains the business result.
No response example is published for this API. Refer to the response fields below.
Response fields
Response field reference (88 fields)
| Name | Type | Required | Description |
|---|---|---|---|
total | integer | optional | Number of records |
products | array | optional | List of product details (see product object below for details) |
columns | array | optional | Rendered columns |
type | string | optional | Rendering style |
costToken | integer | optional | Consume token |
productId | string | optional | Product ID |
productName | string | optional | Product name |
imageUrl | string | optional | Product pictures |
productImageUrls | array | optional | Product picture list |
region | string | optional | area code |
sellerId | string | optional | Seller ID |
categoryId | string | optional | First level classification ID |
categoryL2Id | string | optional | Secondary classification ID |
categoryL3Id | string | optional | Third level classification ID |
minPrice | number | optional | Minimum SKU price (USD) |
maxPrice | number | optional | Maximum SKU price (USD) |
spuAvgPrice | number | optional | SPU average price (USD) |
productRating | number | optional | product rating |
reviewCount | integer | optional | Number of comments |
productCommissionRate | number | optional | Product commission ratio |
totalSaleCnt | integer | optional | total sales |
totalSale1dCnt | integer | optional | Sales volume in the past day |
totalSale7dCnt | integer | optional | Sales volume in the past 7 days |
totalSale15dCnt | integer | optional | Sales volume in the past 15 days |
totalSale30dCnt | integer | optional | Sales volume in the past 30 days |
totalSale60dCnt | integer | optional | Sales volume in the past 60 days |
totalSale90dCnt | integer | optional | Sales volume in the past 90 days |
totalSaleGmvAmt | number | optional | total sales |
totalSaleGmv1dAmt | number | optional | Sales in the past day |
totalSaleGmv7dAmt | number | optional | Sales in the past 7 days |
totalSaleGmv15dAmt | number | optional | Sales in the past 15 days |
totalSaleGmv30dAmt | number | optional | Sales in the past 30 days |
totalSaleGmv60dAmt | number | optional | Sales in the past 60 days |
totalSaleGmv90dAmt | number | optional | Sales in the past 90 days |
totalLiveCnt | integer | optional | Total number of live broadcasts |
totalLive1dCnt | integer | optional | Number of live broadcasts in the past day |
totalLive7dCnt | integer | optional | Number of live broadcasts in the past 7 days |
totalLive15dCnt | integer | optional | Number of live broadcasts in the past 15 days |
totalLive30dCnt | integer | optional | Number of live broadcasts in the past 30 days |
totalLive60dCnt | integer | optional | Number of live broadcasts in the past 60 days |
totalLive90dCnt | integer | optional | Number of live broadcasts in the past 90 days |
totalLiveSale1dCnt | integer | optional | Live streaming sales in the past day |
totalLiveSale7dCnt | integer | optional | Live streaming sales in the past 7 days |
totalLiveSale15dCnt | integer | optional | Live streaming sales in the past 15 days |
totalLiveSale30dCnt | integer | optional | Live streaming sales in the past 30 days |
totalLiveSale60dCnt | integer | optional | Live broadcast sales in the past 60 days |
totalLiveSale90dCnt | integer | optional | Live broadcast sales in the past 90 days |
totalLiveSaleGmv1dAmt | integer | optional | Live broadcast sales in the past day |
totalLiveSaleGmv7dAmt | integer | optional | Live broadcast sales in the past 7 days |
totalLiveSaleGmv15dAmt | integer | optional | Live broadcast sales in the past 15 days |
totalLiveSaleGmv30dAmt | integer | optional | Live streaming sales in the past 30 days |
totalLiveSaleGmv60dAmt | integer | optional | Live streaming sales in the past 60 days |
totalLiveSaleGmv90dAmt | integer | optional | Live broadcast sales in the past 90 days |
totalVideoCnt | integer | optional | Total number of videos |
totalVideo1dCnt | integer | optional | Number of videos in the past day |
totalVideo7dCnt | integer | optional | Number of videos in the past 7 days |
totalVideo15dCnt | integer | optional | Number of videos in the past 15 days |
totalVideo30dCnt | integer | optional | Number of videos in the past 30 days |
totalVideo60dCnt | integer | optional | Number of videos in the past 60 days |
totalVideo90dCnt | integer | optional | Number of videos in the past 90 days |
totalIflCnt | integer | optional | Total number of experts |
totalIflVideo1dCnt | integer | optional | The number of videos of experts in the past day |
totalIflVideo7dCnt | integer | optional | The number of videos of experts in the past 7 days |
totalIflVideo15dCnt | integer | optional | The number of videos of experts in the past 15 days |
totalIflVideo30dCnt | integer | optional | The number of videos of experts in the past 30 days |
totalIflVideo60dCnt | integer | optional | The number of videos of experts in the past 60 days |
totalIflVideo90dCnt | integer | optional | Number of expert videos in the past 90 days |
totalIflLive1dCnt | integer | optional | Number of live broadcasts by experts in the past day |
totalIflLive7dCnt | integer | optional | Number of live broadcasts by experts in the past 7 days |
totalIflLive15dCnt | integer | optional | Number of live broadcasts by experts in the past 15 days |
totalIflLive30dCnt | integer | optional | Number of live broadcasts by experts in the past 30 days |
totalIflLive60dCnt | integer | optional | Number of live broadcasts by experts in the past 60 days |
totalIflLive90dCnt | integer | optional | Number of live broadcasts by experts in the past 90 days |
totalViewsCnt | integer | optional | total views |
totalViews1dCnt | integer | optional | Number of views in the past day |
totalViews7dCnt | integer | optional | Number of views in the last 7 days |
totalViews15dCnt | integer | optional | Number of views in the past 15 days |
totalViews30dCnt | integer | optional | Number of views in the past 30 days |
totalViews60dCnt | integer | optional | Number of views in the past 60 days |
totalViews90dCnt | integer | optional | Number of views in the past 90 days |
discount | string | optional | discount information |
freeShipping | integer | optional | Is shipping free? |
salesFlag | integer | optional | Main delivery methods |
salesTrendFlag | integer | optional | Sales trend identification: 0=stable, 1=increasing, 2=declining |
isSShop | integer | optional | Whether the store is fully managed |
offMark | integer | optional | Product removal mark |
firstCrawlDt | string | optional | First crawl date |
descDetail | string | optional | Product details description |
Responses
| Code | Description |
|---|---|
| 200 | Default HTTP response for both success and many business errors. Only outer JSON code 0 indicates success or asynchronous acceptance; inspect data for the result. |
| 429 | Execution admission rate limit; honor Retry-After when present. |
| 503 | Execution admission is temporarily unavailable; honor Retry-After when present. |
| Opt-in | X-Nexscope-Http-Status: semantic maps controller-handled business errors to HTTP status on run and task routes. Pre-authentication failures, such as a missing API key (code 11209), may still return HTTP 200 before this mapping. Always check the outer JSON code; malformed requests and infrastructure failures may also return non-200 HTTP responses. |
Data source, freshness, and limitations
Source, freshness, coverage, rate limits, and estimation notes are not specified in this API definition unless they appear in the request or response field documentation above. Do not assume official marketplace data or real-time freshness when it is not explicitly documented.