https://api.nexscope.ai/fm/productSearchRun this API
Send a JSON request to execute this API and receive the documented response payload.
Endpoint
| Method | POST |
| Path | https://api.nexscope.ai/fm/productSearch |
| Auth | Bearer API key |
| Content-Type | application/json |
Request parameters
| Name | Type | Required | Description |
|---|---|---|---|
keyword | string | optional | Search keywords (fuzzy matching of product titles). |
region | string | optional | Market area code. Optional values: `US` (United States), `GB` (UK), `MX` (Mexico), `ES` (Spain), `DE` (Germany), `IT` (Italy), `FR` (France), `ID` (Indonesia), `VN` (Vietnam), `MY` (Malaysia), `TH` (Thailand), `PH` (Philippines), `BR` (Brazil), `JP` (Japan), `SG` (Singapore). |
category | string | optional | For English category names, the system automatically matches the TikTok category ID; non-English names need to be translated into English first. |
shopType | integer | optional | Store type: `1`=local store, `2`=cross-border store. |
isTopSelling | boolean | optional | Filter only the best-selling items. |
isNewListed | boolean | optional | Only filter new listings. |
isSshop | boolean | optional | Filter only TikTok fully hosted (S-shop) items. |
isFreeShipping | boolean | optional | Filter only free shipping products. |
isLocalWarehouse | boolean | optional | Only filter products shipped from local warehouses. |
unitsSoldRange | object | optional | Sales range filtering, format: `{"min": 100, "max": 5000}`. |
commissionRateRange | object | optional | Commission rate range filtering, format: `{"min": 0.05, "max": 0.20}` (decimal, `0.10`=10%). |
creatorCountRange | object | optional | Filter the number of people carrying goods, format: `{"min": 10, "max": 500}`. |
orderField | string | optional | Sorting fields: `day7_units_sold` (7-day sales), `day7_gmv` (7-day GMV), `commission_rate` (commission rate), `total_units_sold` (total sales), `total_gmv` (total GMV), `creator_count` (number of customers). Default is descending order. |
page | integer | optional | Page number. Example: 1 |
pageSize | integer | optional | Number of items per page, maximum `10`. Example: 10 |
Code example
{
"keyword": "phone case",
"orderField": "day7_units_sold",
"pageSize": 10,
"region": "US"
}Response example
Platform response envelope. code 0 indicates success or acceptance; data contains the business result.
{
"code": 0,
"cost": "-1",
"data": {},
"msg": null,
"time": "2026-01-01 00:00:00",
"traceId": null,
"ts": "0"
}Response fields
Response field reference (38 fields)
| Name | Type | Required | Description |
|---|---|---|---|
total | integer | optional | The total number of records that meet the criteria. |
products | array | optional | Product information list, product object fields are shown in the table below. |
columns | array | optional | Render column definitions. |
type | string | optional | Rendering style type. |
costToken | integer | optional | The number of tokens consumed. |
title | string | optional | Product title. |
productId | string | optional | Product unique identification ID. |
region | string | optional | Market area code. |
price | number | optional | Product price. |
minPrice | number | optional | lowest price. |
maxPrice | number | optional | Highest price. |
currency | string | optional | Currency code. |
totalSaleCnt | integer | optional | Cumulative total sales. |
totalSale1dCnt | integer | optional | 1 day sales. |
totalSale7dCnt | integer | optional | 7 day sales. |
totalSale28dCnt | integer | optional | 28 days sales. |
totalSale90dCnt | integer | optional | 90 Day Sales. |
totalSaleGmvAmt | number | optional | Cumulative total GMV. |
totalSaleGmv7dAmt | number | optional | 7 days GMV. |
totalSaleGmv28dAmt | number | optional | 28 days GMV. |
totalVideoCnt | integer | optional | Number of videos with goods. |
totalLiveCnt | integer | optional | Number of goods delivered live. |
totalIflCnt | integer | optional | Bring the number of people with goods. |
productCommissionRate | number | optional | Product commission ratio (decimal, `0.10`=10%). |
productRating | number | optional | Product ratings. |
reviewCount | integer | optional | Number of comments. |
skuCount | integer | optional | SKU quantity. |
shopName | string | optional | Store name. |
shopSellerId | string | optional | Seller ID. |
shopTotalUnitsSold | integer | optional | The total sales volume of the store. |
isCrossBorder | integer | optional | Whether it is cross-border: `1`=cross-border, `0`=local. |
isSShopText | string | optional | Whether to fully host the store (yes/no). |
freeShippingText | string | optional | Whether shipping is free (yes/no). |
availableDate | string | optional | Shelf time. |
categoryName | string | optional | Product category name. |
salesTrendFlagText | string | optional | Sales trend tag. |
tiktokUrl | string | optional | TikTok merchandise link. |
imageUrl | string | optional | Product image URL. |
Responses
| Code | Description |
|---|---|
| 200 | HTTP request completed. Check JSON code; only 0 indicates business success or acceptance. |
| 400 | Request JSON or required API parameters are invalid. |
| 401 | API key is missing, invalid, or cannot be matched to a user. |
| 5xx | API execution or upstream service failed. |
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.