Seerfar Ozon Keyword Back-Search
This skill reverse-looks-up Ozon search keywords
by a list of product SKU IDs in the Seerfar analytics database: pass up to 20 SKUs (your own listing or a competitor's) and it returns the search terms those products appear under — organic and/or ad — each enriched with a full market profile (search volume, 30-day growth, product/seller/competitor counts, average price, conversion concentration, top products, plus per-term organic/ad channel, natural rank, exposure, and conversion in the
object). It is the starting point for Ozon keyword reverse lookup, listing-title optimization, and competitor traffic-word discovery.
Core Concepts
SKU-driven, not keyword-driven: unlike keyword mining (expand
from a seed term) or market keyword search (browse the whole market), this endpoint takes
and returns the search terms
those specific products rank for. The direction is product → keywords (reverse).
is required: every request must declare whether to exclude variants —
keep variants,
exclude variants. Pick
when you want de-duplicated keyword coverage for a parent listing.
Natural vs ad terms:
filters the search-term channel —
organic (自然搜索词) only,
ad (广告搜索词) only; omit to get both. Combine with the
/
range filters to qualify positioning.
Back-search metrics live in : each returned term carries a
object with the reverse-lookup-specific metrics —
(
organic /
ad),
(the SKU's natural rank for that term),
(exposure share, 0–1),
(conversion rate, 0–1), and
(opaque position indicator). The input filters
/
/
/
/
filter on these same per-term values. Note:
is defined in the schema but is
not returned by this endpoint.
Platform coverage: each keyword record carries a
field (
= Ozon,
= Wildberries). The dataset is Ozon-centric; Wildberries rows appear where available. There is no input to restrict the platform — filter client-side if needed.
Match mode:
controls how
/
are matched —
exact,
fuzzy.
Parameters
| Parameter | Type | Required | Description |
|---|
| skuIds | array<integer> | yes | Reverse-lookup SKU list, max 20. |
| hasVariant | integer | yes | Variant exclusion: keep variants, exclude variants. |
| page | object | yes | Pagination {page, pageSize, orders[]}
. from 1 (default 1), default 20. = with /. |
| matchType | integer | no | Keyword match mode: exact, fuzzy. |
| type | array<string> | no | Search-term channel filter: organic, ad; omit for both. |
| historyDate | string | no | Historical month (e.g. ); omit for current period. |
| includeKeywords | array<string> | no | Terms that must appear (max 1000). |
| excludeKeywords | array<string> | no | Terms to exclude (max 1000). |
| searchVolume | {min,max} | no | Monthly search volume range. |
| searchChange30 | {min,max} | no | 30-day search change range. |
| wordCount | {min,max} | no | Keyword word/char count range. |
| productViews | {min,max} | no | Product view range. |
| products | {min,max} | no | Product count range. |
| sellers | {min,max} | no | Seller count range. |
| marketSpace | {min,max} | no | Market space range. |
| conversionSharing | {min,max} | no | Conversion concentration range. |
| uniqQueriesWCa | {min,max} | no | Cart-add count range. |
| ca | {min,max} | no | Cart-add conversion rate range. |
| conversion | {min,max} | no | Conversion rate range. |
| titleDensity | {min,max} | no | Title density range. |
| adRivalCount | {min,max} | no | Ad competitor count range. |
| adRank | {min,max} | no | Ad rank range. |
| naturalRank | {min,max} | no | Natural rank range. |
| exposure | {min,max} | no | Exposure range. |
| uId | string | no | User ID. |
| memberId | string | no | Member ID (data attribution). |
All range filters are
objects; supply either or both bounds.
,
, and
are all required.
调用方式
- API 端点:
POST /seerfar/ozon/keywordBackSearch
(完整参数/响应/错误码见 )
- Python 脚本:
python scripts/seerfar_ozon_keyword_back_search.py '<JSON 参数>' [--inline]
- 成本约束:本工具会消耗积分;同一会话同一参数组合默认只调用一次,脚本带 24h 本地缓存。失败/空结果不得自动换关键词、翻页或改邮编连续试探;需要继续检索时先向用户说明会产生额外消耗。
输出策略(脚本默认行为):
- 始终将完整响应写入
<cwd>/linkfox/<YYYY-MM-DD>/<session>/data/linkfox-seerfar-ozon-keyword-back-search-<timestamp>.json
( 为脚本执行时的工作目录,在 Claude Code 里即当前项目目录; 取自环境变量 ,按用户任务自动聚合;禁止写入 /tmp,当前目录不可写则报错)
- 响应体 ≤ 8 KB:落盘后把完整 JSON 打印到 stdout
- 响应体 > 8 KB:落盘后 stdout 只输出摘要(顶层字段、常见计数如 /、最大列表字段的长度 + 前 3 条样本)
- 加 强制全量打印到 stdout(同样落盘)
读数据建议:先看摘要判断是否足够;需要具体字段时优先用
或
从保存的 json 文件按需抽取,避免整份 JSON 进入上下文。
解决认证和积分问题
发生以下异常情况时,采用 references/onboarding.md 引导解决问题:
异常情况
- 未配置API Key:环境变量未配置 ,也未配置 。
- 响应401或402状态码
- 响应提示积分或余额不足:消息含"积分余额不足/计费不足/余额不足/quota exceeded/insufficient balance/套餐到期/需充值/请充值",或类似含义的内容。
Usage Examples
1. Reverse-lookup a single SKU's traffic keywords (sort by search volume)
json
{"skuIds": [4380710124], "hasVariant": 0, "page": {"page": 1, "pageSize": 10, "orders": [{"field": "searchVolume", "direction": "DESC"}]}}
2. Organic terms where the SKU ranks near the top
json
{"skuIds": [4380710124], "hasVariant": 1, "type": ["0"], "naturalRank": {"max": 10}, "page": {"page": 1, "pageSize": 20, "orders": [{"field": "searchVolume", "direction": "DESC"}]}}
3. Ad search words only, with an ad-rank floor
json
{"skuIds": [4380710124], "hasVariant": 0, "type": ["1"], "adRank": {"max": 50}, "page": {"page": 1, "pageSize": 20, "orders": [{"field": "searchVolume", "direction": "DESC"}]}}
4. Narrow with include / exclude lists
json
{"skuIds": [4380710124], "hasVariant": 0, "page": {"page": 1, "pageSize": 20}, "includeKeywords": ["платье"], "excludeKeywords": ["ремень"], "matchType": 1}
How to Build Queries
- Always lead with + : both are required and define the reverse-lookup target. Use real Ozon SKU IDs (the same IDs returned by Seerfar Ozon product / shop / category skills).
- Lead with : sort by the metric you care about ( DESC for traffic weight, ASC for low competition, DESC for rising terms).
- Split organic vs ad with : pass or to focus a listing-optimization pass (organic) or an ads pass (ad), then bound / to qualify positioning — these filter on the values surfaced in each row's .
- Use / to steer: force in must-have modifiers and strip noise without running a second query.
Display Rules
- Present data only: show reverse-looked-up keyword metrics in a clear table without subjective advice.
- Lead with keyword columns: / (Chinese translation), then , , , , ; show and (organic/ad) to convey how the SKU ranks for each term.
- Russian keywords: preserve the original ; the field provides a Chinese translation when available.
- Channel tag: when is omitted and both organic and ad rows are present, show ( organic / ad) and so the user can distinguish them.
- Large result sets: when is large, show the top rows and remind the user they can persist the full response via the large-response pattern below, or page further with .
- Error handling: when is not (or is not ), explain the reason from / and suggest adjusting the SKU list or filters.
Important Limitations
- + + required: a payload missing any of these is rejected.
- capped at 20: pass more than 20 and the request is rejected or truncated.
- No keyword seed: this endpoint has no parameter — it is reverse (SKU → keywords), not expansion (keyword → keywords). Use the keyword mining skill to expand from a seed.
- No / input: only (historical month) is accepted; there is no category filter. Use the market keyword search skill for month- or category-scoped browsing.
- Nested fields: (Top 商品) and (per-term back-search metrics: , , , , ) are structured and decision-useful — see for sub-fields. is defined in the schema/columns but is not returned in on this endpoint (same as the keyword-mining sibling; the market-keyword-search sibling does return it — don't assume parity). is likewise defined in the schema but not returned.
User Expression & Scenario Quick Reference
Applicable — SKU-driven Ozon keyword reverse lookup:
| User Says | Scenario |
|---|
| "反查这个 Ozon 商品 / SKU 的关键词" | Reverse keyword lookup for a SKU |
| "这个 Ozon 链接有哪些搜索词带来流量" | Traffic-word discovery for a listing |
| "Ozon 竞品 SKU 的出单词 / 流量词" | Competitor traffic-word mining |
| "Ozon 某商品的自然词 / 广告词" | Organic vs ad term breakdown |
| "Ozon 关键词反查、按 SKU 反查关键词" | Generic reverse keyword lookup |
Not applicable — Needs beyond SKU-driven reverse lookup:
- Browse/rank the whole market's hot keywords (no SKU) → use the Seerfar Ozon market keyword search skill.
- Expand outward from a seed keyword → use the Seerfar Ozon keyword mining skill.
- A specific SKU's price/sales/stock → use a product-level Seerfar Ozon data source.
- A specific seller's catalog → use the Seerfar Ozon shop search skill.
- Category-tree browsing → use the Seerfar Ozon category search skill.
Boundary judgment: if the user has a product/SKU (own or competitor) and wants the search terms it ranks for, start here. If they want to browse the market (no SKU) or expand from a seed keyword, route to the market keyword search or keyword mining skill respectively.
积分消耗规则
消耗 12 积分。
用户会因积分消耗而支付费用。请充分评估:当需要高频调用本技能,或用户对积分消耗量预期不足时,务必提醒用户,由用户决定是否继续。
Feedback:
Auto-detect and report feedback via the Feedback API when any of the following apply:
- The functionality or purpose described in this skill does not match actual behavior
- The skill's results do not match the user's intent
- The user expresses dissatisfaction or praise about this skill
- Anything you believe could be improved
Call the feedback API as specified in
. Do not interrupt the user's flow.
For more high-quality, professional cross-border e-commerce skills, set LinkFox Skills.