SuperAPI AI Directory

linkfox-seerfar-ozon-shop-search

Data & analytics

View repository

Updated 10-15 15:51

About this skill

Seerfar Ozon Shop Search

This skill lists the products of a specific Ozon shop (seller) from the Seerfar analytics database. Given a shop id, it returns each product's 30-day sales, price, rating, weight, fulfillment model (FBO/FBS), seller type (local / cross-border) and return/cancellation rate, plus the shop's total 30-day sales — the starting point for competitor-shop product analysis, best-seller mining, and seller catalog teardown.

Core Concepts

Unit of data is the product, scoped to one shop: pass a single shop id and receive that shop's product catalog with performance metrics. This is a shop-level view, not a keyword or category view.

Where the shop id comes from: id is the Seerfar seller/shop identifier — the same sellerId returned by other Seerfar Ozon tools (e.g. product report / product detail search). Negative ids (e.g. -2 Ozon Express, -4 Ozon Fresh) are Ozon's own platform sellers; positive ids are third-party sellers. If the user only has a shop name or product, first obtain the sellerId from a product-level Seerfar Ozon source, then call this skill.

Seller type: each product carries sellerType — 0 local (本土), 1 cross-border (跨境). A shop is typically all one type; use it to judge whether a competitor is a domestic or cross-border seller.

Sales & price currency: sales / monthlySalesUnits are 30-day units; price is in Russian rubles (₽), indicated by currency.

Parameters

Parameter Type Required Description
id integer yes Shop (seller) ID — the sellerId from other Seerfar Ozon tools. Negative = Ozon platform seller.
page object yes Pagination {page, pageSize, orders[]}.
page.page integer no Page number, from 1 (default 1).
page.pageSize integer no Page size, default 20. Max 20 — larger values are rejected (errcode 1002).
page.orders array no Sort rules, elements {field, direction}; direction DESC/ASC. Common fields: sales, price, reviewRating, upTime.
uId string no User ID.
memberId string no Member ID (data attribution).

Only id and page are required.

How to call

  • API endpoint:POST /seerfar/ozon/shopSearch(for full parameters/responses/error codes see references/api.md)
  • Python script:python scripts/seerfar_ozon_shop_search.py '<JSON 参数>' [--inline]
  • Cost constraints: This tool consumes compute; by default the same parameter combination is called only once per session, and the script has a 24h local cache. On failure/empty results, do not automatically switch keywords, paginate, or change the zip code to probe repeatedly; if further searching is needed, first explain to the user that it will incur additional consumption.

Output strategy (script default behavior):

  • Alwayswrite the full response to <cwd>/linkfox/<YYYY-MM-DD>/<session>/data/linkfox-seerfar-ozon-shop-search-<timestamp>.json(<cwd> is the working directory when the script runs, which in Claude Code is the current project directory;<session> is taken from the environment variable SESSION_ID, aggregated automatically according to the user's task;writing to /tmp is prohibited, and if the current directory is not writable, report an error)
  • Response body ≤ 8 KB: after saving to disk, print the full JSON to stdout
  • Response body > 8 KB: after saving to disk, stdout outputs only a summary (top-level fields, common counts such as total/costToken, the length of the largest list field + the first 3 samples)
  • Add --inline to force full printing to stdout (also saved to disk)

Data reading suggestions: first look at the summary to judge whether it is sufficient; when specific fields are needed, prefer to use jqorConvertFrom-Json to extract on demand from the saved json file, avoiding bringing the entire JSON into context.

Resolve authentication and compute issues

When the following abnormal situations occur, use references/onboarding.md to guide resolving the issue:

Abnormal situations

  • API Key not configured: the environment variable is not configured LINKFOX_AGENT_API_KEY, and LINKFOXAGENT_API_KEY。
  • is also not configured
  • Response 401 or 402 status code: the message contains "算力余额不足/计费不足/余额不足/quota exceeded/insufficient balance/套餐到期/需充值/请充值", or content with a similar meaning.

Usage Examples

1. A shop's best-sellers (sort by 30-day sales)

{"id": 1362816, "page": {"page": 1, "pageSize": 20, "orders": [{"field": "sales", "direction": "DESC"}]}}

2. A shop's newest listings (sort by upload time)

{"id": 1362816, "page": {"page": 1, "pageSize": 20, "orders": [{"field": "upTime", "direction": "DESC"}]}}

3. A shop's highest-priced products

{"id": 1362816, "page": {"page": 1, "pageSize": 20, "orders": [{"field": "price", "direction": "DESC"}]}}

4. Page deeper into a shop's catalog

{"id": 1362816, "page": {"page": 2, "pageSize": 20, "orders": [{"field": "sales", "direction": "DESC"}]}}

How to Build Queries

  1. Always pass page.orders: the catalog can be large — sort by the metric you care about (sales DESC for best-sellers, upTime DESC for new arrivals, price DESC for premium SKUs).
  2. Keep pageSize ≤ 20: the gateway caps page size at 20. Use page.page to paginate; check hasNextPage to know whether more pages exist.
  3. Resolve the shop id first: if the user gives a shop/product name rather than an id, obtain the sellerId from a product-level Seerfar Ozon source before calling this skill.
  4. Use shop-level aggregates for context: totalSales / totalRevenue / dailySales are shop-wide totals (independent of the page), productCount is the full catalog size, rating is the shop rating, and top-level fulfillment shows the FBO/FBS split — all quick health indicators for the whole shop.

Display Rules

  1. Present data only: show the shop's product metrics in a clear table without subjective advice.
  2. Lead with shop context, then product columns: state shop-level aggregates first — totalSales (30-day total), totalRevenue (total revenue, ₽), productCount (catalog size), dailySales, rating, and fulfillment distribution (e.g. FBO 72 / FBS 4) — then a table of sku, price, sales, reviewRating, weight, sellerType, fulfillment, returnCancellationRate.
  3. Seller type label: render sellerType as 本土/跨境 (0/1) so the user reads it at a glance.
  4. Fulfillment: fulfillment is an array (e.g. ["FBO"]); join multiple values with /.
  5. Missing returnCancellationRate: for Ozon platform sellers (negative id) this field is often absent — show - rather than failing.
  6. Pagination guidance: when hasNextPage is true, tell the user more pages are available via page.page; remind them pageSize is capped at 20.
  7. Empty shop: a non-existent id returns success with total=0 and no data — tell the user the id may be wrong rather than reporting a system error.
  8. Error handling: when code is not "200" (or errcode is not 200), explain the reason from msg / errmsg and suggest fixes (add page, lower pageSize, retry on rate-limit).

Important Limitations

  • id and page are both required; omitting either returns errcode 400.
  • pageSize max 20: exceeding it returns errcode 1002.
  • total is the page row count, not the shop's full catalog size — use hasNextPage to decide whether to fetch more pages.
  • No text/keyword filter: this endpoint filters by shop only; to find a shop by name, use another Seerfar Ozon source first.
  • Field variance by seller type: returnCancellationRate is populated for third-party sellers but frequently absent for Ozon platform sellers (negative id). Schema-defined productPageUrl, monthlySalesRevenue, brand are not returned (upstream has no source, omitted rather than null).

User Expression & Scenario Quick Reference

Applicable — analyzing one Ozon shop/seller's catalog:

User Says Scenario
"Analyze this Ozon shop's products" / "What is this seller selling" Shop product catalog
"What are this shop's best-selling products" Best-seller mining (sort by sales)
"What new products has this shop recently listed" New arrivals (sort by upTime)
"This competitor shop's price range/average order value" Price-band analysis (sort by price)
"Is this shop a local or cross-border seller" Seller type check (sellerType)
"What is this shop's total sales" Shop health (totalSales)

Not applicable — Needs beyond one shop's catalog:

  • Discovering Ozon keywords by market metrics → use the Seerfar Ozon market keyword search skill.
  • A single product's full detail → use a product-level Seerfar Ozon source (this skill returns catalog-level fields only).
  • Browsing the category tree → use a category-level Seerfar Ozon source.
  • Finding which shop sells a given product → use a product-level Seerfar Ozon source to get the sellerId first.

Boundary judgment: if the user already has a shop/seller ID (or a sellerId obtained from a product lookup) and wants to enumerate or rank that shop's products by sales/price/rating, start here. If they want market-level keyword discovery or a single product's deep detail, route to the corresponding Seerfar Ozon skill.

Compute consumption rules

Consumes 15 compute.

Users pay fees due to compute consumption. Please fully assess: when this skill needs to be called frequently, or the user has insufficient expectation of the compute consumption, be sure to remind the user and let the user decide whether to continue.

Feedback:

Auto-detect and report feedback via the Feedback API when any of the following apply:

  1. The functionality or purpose described in this skill does not match actual behavior
  2. The skill's results do not match the user's intent
  3. The user expresses dissatisfaction or praise about this skill
  4. Anything you believe could be improved

Call the feedback API as specified in references/api.md. Do not interrupt the user's flow.


For more high-quality, professional cross-border e-commerce skills, set LinkFox Skills.