Nexscope

Ozon Keyword Mining API

REST API and MCP service documentation generated from server-side API definitions. Responses use the shared code, msg, and data envelope.

API selector
Keyword & Search Demand

API overview

Expand Ozon and Wildberries seed keywords using search volume, growth, competition, price, relevance, density, and conversion metrics.

Try this API
Endpoint
https://api.nexscope.ai/api/skill-api/v1/skills/ozon-keyword-mining/run
MCP method
nexscope_ozon_keyword_mining

Authentication

All run endpoints require a user API key. Send it as a bearer token in the Authorization header.

Authorization: Bearer nk-xxxxxxxxxxxxxxxxx
Missing or invalid API keys return an authentication error. Manage keys from .
POSThttps://api.nexscope.ai/api/skill-api/v1/skills/ozon-keyword-mining/run

Run an API

Request parameters documented by ecommerce.ozon-keyword-mining.

Slugozon-keyword-mining
HeadersAuthorization: Bearer nk-...
Content-Type: application/json
Request bodyAPI-specific JSON object.
Response bodyPlatform envelope: code, msg, data, ts, time, cost, traceId. Inspect data.status for asynchronous completion.

Status codes

CodeDescription
200HTTP request completed. Check JSON code; only 0 indicates business success or acceptance.
400Request JSON or required API parameters are invalid.
401API key is missing, invalid, or cannot be matched to a user.
5xxAPI execution or upstream service failed.

Example request

curl -X POST https://api.nexscope.ai/api/skill-api/v1/skills/ozon-keyword-mining/run \
  -H "Authorization: Bearer nk-xxxxxxxxxxxxxxxxx" \
  -H "Content-Type: application/json" \
  -d '{   "page": {     "pageSize": 10,     "page": 1   },   "uId": "example-id",   "matchType": 1,   "excludeKeywords": [],   "keyword": "phone case",   "includeKeywords": [] }'
All categories/ Keyword & Search Demand
POSThttps://api.nexscope.ai/api/skill-api/v1/skills/ozon-keyword-mining/run

Run this API

Send a JSON request to execute this API and receive the documented response payload.

Endpoint

MethodPOST
Pathhttps://api.nexscope.ai/api/skill-api/v1/skills/ozon-keyword-mining/run
AuthBearer API key
Content-Typeapplication/json

Request body

NameTypeRequiredDescription
keywordstringrequired
Seed keyword, mining expands around this term (maxLength 1000)
Example: phone case
pageobjectrequired
Pagination & sorting: {page, pageSize, orders[]}
Example: { "pageSize": 10, "page": 1 }
page.pageintegeroptional
Page number, starting from 1, default 1
Example: 1
page.pageSizeintegeroptional
Items per page, default 20
Example: 1
page.ordersarrayoptional
Sort rules, elements {field, direction}; direction takes DESC (descending) / ASC (ascending)
Example: []
matchTypeintegeroptional
Keyword match mode: 0 exact, 1 fuzzy
Example: 1
includeKeywordsarrayoptional
Include keyword array (max 1000), used to further narrow down / specify required words on top of the seed term
Example: []
excludeKeywordsarrayoptional
Exclude keyword array (max 1000), used to remove irrelevant terms
Example: []
wordCountstringoptional
Keyword word count range
searchVolumestringoptional
Search volume range
searchChange30stringoptional
30-day search change range
productViewsstringoptional
Product views range
productsstringoptional
Product count range
sellersstringoptional
Seller count range
pricestringoptional
Price range
marketSpacestringoptional
Market space range
conversionSharingstringoptional
Conversion concentration range
relevancystringoptional
Relevance range (degree of relevance to the seed keyword)
uniqQueriesWCastringoptional
Add-to-cart count range
castringoptional
Add-to-cart conversion rate range
titleDensitystringoptional
Title density range
adRivalCountstringoptional
Ad competitor count range
uIdstringoptional
User ID
Example: example-id
memberIdstringoptional
Member ID (a unique member identifier; data is attributed to memberId)
Example: example-id

Request example

{
  "page": {
    "pageSize": 10,
    "page": 1
  },
  "uId": "example-id",
  "matchType": 1,
  "excludeKeywords": [],
  "keyword": "phone case",
  "includeKeywords": []
}

Response body

NameTypeRequiredDescription
dataanyrequired
Data value used by this API operation.
codeintegerrequired
0 means accepted or successful; nonzero is a platform error.
msgstring | nullrequired
Msg value used by this API operation.
tsstringrequired
Epoch milliseconds.
timestringrequired
Server local time: yyyy-MM-dd HH:mm:ss.
coststringrequired
Elapsed milliseconds, never credits; -1 outside web requests.
traceIdstring | nullrequired
Trace id value used by this API operation.

Any of option 1

NameTypeRequiredDescription
dataobjectrequired
Data value used by this API operation.
data.totalintegeroptional
Total record count
Example: 1
data.dataarrayoptional
Keyword mining data (see details below)
Example: []
data.columnsarrayoptional
Column definitions, elements contain {field, title, cellType, sortable, filterable}
Example: []
data.costTimeintegeroptional
API latency (milliseconds)
Example: 1
data.costTokenintegeroptional
Tokens consumed
Example: 1
data.typestringoptional
Response display type, e.g., tableListWorkbenches
Example: null
data.data[].querystringoptional
Keyword (original Russian)
Example: phone case
data.data[].queryCnstringoptional
Keyword Chinese translation
Example: phone case
data.data[].platformintegeroptional
Platform: 0 Ozon, 1 Wildberries
Example: 1
data.data[].searchVolumeintegeroptional
Monthly search volume
Example: 1
data.data[].count30GrowthRatenumberoptional
Monthly search growth (%, can be negative)
Example: 1
data.data[].productCountintegeroptional
Product count (may be missing in some rows)
Example: 1
data.data[].competingProductsintegeroptional
Competing product count
Example: 1
data.data[].sellersintegeroptional
Seller count
Example: 1
data.data[].avgPricenumberoptional
Average price
Example: 1
data.data[].itemsViewsnumberoptional
Product visibility
Example: 1
data.data[].viewSharingnumberoptional
View concentration (%)
Example: 1
data.data[].conversionSharingnumberoptional
Conversion concentration (%)
Example: 1
data.data[].marketSpacenumberoptional
Market space
Example: 1
data.data[].returnCancellationRatenumberoptional
Return/cancellation rate (%)
Example: 1
data.data[].uniqQueriesWCaintegeroptional
Add-to-cart count
Example: 1
data.data[].canumberoptional
Add-to-cart conversion rate (%)
Example: 1
data.data[].relevancynumberoptional
Relevance (degree of relevance to the seed keyword)
Example: 1
data.data[].titleDensitynumberoptional
Title density
Example: 1
data.data[].wordCountintegeroptional
Word count
Example: 1
data.data[].categoriesarrayoptional
Category ID array
Example: []
data.data[].categoryInfosarrayoptional
Category information (see below)
Example: []
data.data[].productsarrayoptional
Top product data (see below)
Example: []
data.data[].idstringoptional
Record ID
Example: example-id
data.products[].ozonIdintegeroptional
Ozon product ID
Example: 1
data.products[].skuintegeroptional
SKU ID
Example: 1
data.products[].titlestringoptional
Product title (Russian)
Example: null
data.products[].imageUrlstringoptional
Main image URL
Example: https://example.com/image.jpg
data.products[].advertintegeroptional
Ad indicator (0/1)
Example: 1
data.categoryinfos[].titleCnstringoptional
Category Chinese name
Example: null
data.categoryinfos[].titleEnstringoptional
Category English name
Example: null
data.categoryinfos[].titleRustringoptional
Category Russian name
Example: null
data.categoryinfos[].cnTitlePathstringoptional
Chinese category path
Example: null
data.categoryinfos[].enTitlePathstringoptional
English category path
Example: null
data.categoryinfos[].titlePathstringoptional
Russian category path
Example: null
data.categoryinfos[].idstringoptional
Category ID
Example: example-id
data.categoryinfos[].crossBorderSellablebooleanoptional
Whether cross-border sales are allowed
Example: false
data.titlestringoptional
Provider-specific response title.
Example: null
data.sourceTypestringoptional
Provider-specific source platform type.
Example: null
data.sourceToolstringoptional
Provider-specific source tool name.
Example: null
data.pageintegeroptional
Current page returned by the upstream provider.
Example: null
data.pageSizeintegeroptional
Page size returned by the upstream provider.
Example: null
data.pageItemCountintegeroptional
Item count on the current page returned by the upstream provider.
Example: null
data.totalPageintegeroptional
Total page count returned by the upstream provider.
Example: null
data.dataSnapshotMonthstringoptional
Data snapshot month returned by the upstream provider.
Example: null

Any of option 2

NameTypeRequiredDescription
datanullrequired
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,
        "relevancy": 1,
        "titleDensity": 1,
        "wordCount": 1,
        "categories": [],
        "categoryInfos": [],
        "products": [],
        "id": "example-id"
      }
    ],
    "columns": [],
    "costTime": 1,
    "costToken": 1,
    "products": [
      {
        "ozonId": 1,
        "sku": 1,
        "imageUrl": "https://example.com/image.jpg",
        "advert": 1
      }
    ],
    "categoryinfos": [
      {
        "id": "example-id",
        "crossBorderSellable": false
      }
    ]
  },
  "code": 0,
  "msg": null,
  "ts": "0",
  "time": "2026-01-01 00:00:00",
  "cost": "-1",
  "traceId": null
}

Responses

CodeDescription
200HTTP request completed. Check JSON code; only 0 indicates business success or acceptance.
400Request JSON or required API parameters are invalid.
401API key is missing, invalid, or cannot be matched to a user.
5xxAPI 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.

Related APIs

MCP

Use the MCP endpoint when an agent needs to discover and call API tools with JSON-RPC.

GET /api/skill-api/v1/mcp
POST /api/skill-api/v1/mcp
Authorization: Bearer nk-xxxxxxxxxxxxxxxxx
Content-Type: application/json

Call a tool

{
  "jsonrpc": "2.0",
  "id": "tool-call-1",
  "method": "tools/call",
  "params": {
    "name": "nexscope_ozon_keyword_mining",
    "arguments": {
      "page": {
        "pageSize": 10,
        "page": 1
      },
      "uId": "example-id",
      "matchType": 1,
      "excludeKeywords": [],
      "keyword": "phone case",
      "includeKeywords": []
    }
  }
}

Online test

Execute the current API with your API key and JSON payload.

17 credits / callAPI usage records

Try it

Send a real request with the same contract shown in the reference.

Endpoint
https://api.nexscope.ai/api/skill-api/v1/skills/ozon-keyword-mining/run
MCP method
nexscope_ozon_keyword_mining
cURL
curl -X POST \
  https://api.nexscope.ai/api/skill-api/v1/skills/ozon-keyword-mining/run \
  -H "Authorization: Bearer nk-..." \
  -H "Content-Type: application/json" \
  -d '{ "page": { "pageSize": 10, "page": 1 }, "uId": "example-id", "matchType": 1, "excludeKeywords": [], "keyword": "phone case", "includeKeywords": [] }'
Response
No response yet. Run the request to see the response here.