https://api.nexscope.ai/api/skill-api/v1/skills/ozon-market-keyword-search/runRun this API
Send a JSON request to execute this API and receive the documented response payload.
Endpoint
| Method | POST |
| Path | https://api.nexscope.ai/api/skill-api/v1/skills/ozon-market-keyword-search/run |
| Auth | Bearer API key |
| Content-Type | application/json |
Request body
| Name | Type | Required | Description |
|---|---|---|---|
page | object | required | Pagination & sorting: {page, pageSize, orders[]} Example: {
"pageSize": 10,
"page": 1
} |
page.page | integer | optional | Page number, starting from 1, default 1 Example: 1 |
page.pageSize | integer | optional | Items per page, default 20 Example: 20 |
page.orders | array | optional | Sort rules, elements {field, direction}; direction takes DESC (descending) / ASC (ascending) Example: [
{
"field": "searchVolume",
"direction": "DESC"
}
] |
keywords | array | optional | Keyword array (max 1000), used with matchType Example: [] |
matchType | integer | optional | Keyword match mode: 0 exact, 1 fuzzy Example: 1 |
searchDate | string | optional | Query date yyyy-MM-dd (e.g., 2026-04-01); defaults to last 30 days if omitted; passing 2026-04-01 queries March 2026 data Example: 2026-01-01 |
categories | array | optional | Category ID array (max 1000) Example: [] |
searchVolume | object | optional | Search volume range {min,max} Example: {
"min": 1
} |
searchChange30 | object | optional | 30-day search change range {min,max} Example: {
"min": 1
} |
monthlySales | object | optional | Monthly sales range {min,max} Example: {
"min": 1
} |
monthlyRevenue | object | optional | Monthly revenue range {min,max} Example: {
"min": 1
} |
price | object | optional | Price range {min,max} Example: {
"min": 1
} |
productViews | object | optional | Product views range {min,max} Example: {
"min": 1
} |
products | object | optional | Product count range {min,max} Example: {
"min": 1
} |
volume | object | optional | Volume range {min,max} Example: {
"min": 1
} |
marketSpace | object | optional | Market space range {min,max} Example: {
"min": 1
} |
conversionSharing | object | optional | Conversion concentration range {min,max} Example: {
"min": 1
} |
reviews | object | optional | Review count range {min,max} Example: {
"min": 1
} |
ratings | object | optional | Rating range {min,max} Example: {
"min": 1
} |
sellers | object | optional | Seller count range {min,max} Example: {
"min": 1
} |
weight | object | optional | Weight range {min,max} Example: {
"min": 1
} |
uId | string | optional | User ID Example: example-id |
memberId | string | optional | Member ID (a unique member identifier; data is attributed to memberId) Example: example-id |
Request example
{
"page": {
"pageSize": 10,
"orders": [
{
"field": "searchVolume",
"direction": "DESC"
}
],
"page": 1
}
}Response body
| Name | Type | Required | Description |
|---|---|---|---|
data | any | required | Data value used by this API operation. |
code | integer | required | 0 means accepted or successful; nonzero is a platform error. |
msg | string | null | required | Msg value used by this API operation. |
ts | string | required | Epoch milliseconds. |
time | string | required | Server local time: yyyy-MM-dd HH:mm:ss. |
cost | string | required | Elapsed milliseconds, never credits; -1 outside web requests. |
traceId | string | null | required | Trace id value used by this API operation. |
Any of option 1
| Name | Type | Required | Description |
|---|---|---|---|
data | object | required | Data value used by this API operation. |
data.total | integer | optional | Total record count Example: 1 |
data.data | array | optional | Market hot keyword data (see details below) Example: [] |
data.columns | array | optional | Column definitions, elements contain {field, title, cellType, sortable, filterable} Example: [] |
data.costTime | integer | optional | API latency (milliseconds) Example: 1 |
data.costToken | integer | optional | Tokens consumed Example: 1 |
data.type | string | optional | Response display type, e.g., tableListWorkbenches Example: null |
data.data[].query | string | optional | Keyword (original Russian) Example: phone case |
data.data[].queryCn | string | optional | Keyword Chinese translation Example: phone case |
data.data[].platform | integer | optional | Platform: 0 Ozon, 1 Wildberries Example: 1 |
data.data[].searchVolume | integer | optional | Monthly search volume Example: 1 |
data.data[].count30GrowthRate | number | optional | Monthly search growth (%, can be negative) Example: 1 |
data.data[].productCount | integer | optional | Product count (may be missing in some rows) Example: 1 |
data.data[].competingProducts | integer | optional | Competing product count Example: 1 |
data.data[].sellers | integer | optional | Seller count Example: 1 |
data.data[].avgPrice | number | optional | Average price Example: 1 |
data.data[].itemsViews | number | optional | Product visibility Example: 1 |
data.data[].viewSharing | number | optional | View concentration (%) Example: 1 |
data.data[].conversionSharing | number | optional | Conversion concentration (%) Example: 1 |
data.data[].marketSpace | integer | optional | Market space Example: 1 |
data.data[].returnCancellationRate | number | optional | Return/cancellation rate (%) Example: 1 |
data.data[].uniqQueriesWCa | integer | optional | Add-to-cart count Example: 1 |
data.data[].ca | number | optional | Add-to-cart conversion rate (%) Example: 1 |
data.data[].categories | array | optional | Category ID array Example: [] |
data.data[].categoryInfos | array | optional | Category information (see below) Example: [] |
data.data[].products | array | optional | Top product data (see below) Example: [] |
data.data[].id | string | optional | Record ID Example: example-id |
data.data[].products[].ozonId | integer | optional | Ozon product ID Example: 1 |
data.data[].products[].sku | integer | optional | SKU ID Example: 1 |
data.data[].products[].title | string | optional | Product title (Russian) Example: null |
data.data[].products[].imageUrl | string | optional | Main image URL Example: https://example.com/image.jpg |
data.data[].products[].advert | integer | optional | Ad indicator (0/1) Example: 1 |
data.data[].categoryInfos[].titleCn | string | optional | Category Chinese name Example: null |
data.data[].categoryInfos[].titleEn | string | optional | Category English name Example: null |
data.data[].categoryInfos[].titleRu | string | optional | Category Russian name Example: null |
data.data[].categoryInfos[].cnTitlePath | string | optional | Chinese category path Example: null |
data.data[].categoryInfos[].enTitlePath | string | optional | English category path Example: null |
data.data[].categoryInfos[].titlePath | string | optional | Russian category path Example: null |
data.data[].categoryInfos[].id | string | optional | Category ID Example: example-id |
data.data[].categoryInfos[].crossBorderSellable | boolean | optional | Whether cross-border sales are allowed Example: false |
data.title | string | optional | Provider-specific response title. Example: null |
data.sourceType | string | optional | Provider-specific source platform type. Example: null |
data.sourceTool | string | optional | Provider-specific source tool name. Example: null |
data.page | integer | optional | Current page returned by the upstream provider. Example: null |
data.pageSize | integer | optional | Page size returned by the upstream provider. Example: null |
data.pageItemCount | integer | optional | Item count on the current page returned by the upstream provider. Example: null |
data.totalPage | integer | optional | Total page count returned by the upstream provider. Example: null |
data.dataSnapshotMonth | string | optional | Data snapshot month returned by the upstream provider. Example: null |
Any of option 2
| Name | Type | Required | Description |
|---|---|---|---|
data | null | required | Data value used by this API operation. |
Response example
Platform response envelope. code 0 indicates success or acceptance; data contains the business result.
{
"data": {
"total": 1,
"data": [
{
"query": "phone case",
"queryCn": "phone case",
"platform": 1,
"searchVolume": 1,
"count30GrowthRate": 1,
"productCount": 1,
"competingProducts": 1,
"sellers": 1,
"avgPrice": 1,
"itemsViews": 1,
"viewSharing": 1,
"conversionSharing": 1,
"marketSpace": 1,
"returnCancellationRate": 1,
"uniqQueriesWCa": 1,
"ca": 1,
"categories": [],
"categoryInfos": [
{
"id": "example-id",
"crossBorderSellable": false
}
],
"products": [
{
"ozonId": 1,
"sku": 1,
"imageUrl": "https://example.com/image.jpg",
"advert": 1
}
],
"id": "example-id"
}
],
"columns": [],
"costTime": 1,
"costToken": 1
},
"code": 0,
"msg": null,
"ts": "0",
"time": "2026-01-01 00:00:00",
"cost": "-1",
"traceId": null
}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.