Market NinjaMarket Ninja
方法

列出商品

GET
/products

返回符合给定筛选条件的一页商品。没有任何一个筛选参数是必填的,但通常都应至少传入 一个识别性参数(urlexternal_id+marketplace,或 seller_code)——否则 您得到的会是整个数据集的一个宽泛切片。

**2026-09-05 变更:**此端点不再返回精确的 meta.total——改为返回 meta.has_more。如果您的集成仍在读取这里的 meta.total,请改为检查 meta.has_more

Authorization

bearerAuth
AuthorizationBearer <token>

Bearer 令牌——获取和使用方法请参阅文档中的「API 概览」页面。

In: header

Query Parameters

marketplace?string

Value in

  • "ozon"
  • "wildberries"
  • "yandex_market"
  • "lamoda"
seller_id?string

卖家在该市场平台上的 id。通常与 marketplace 一起使用——单独使用时无法保证 跨市场平台唯一。

seller_code?string

卖家或品牌为该商品设置的自有内部货号(不是我们的 external_id)。特意 不要求必须搭配 seller_id——品牌方真实的需求通常是「找出我这个货号在哪里 都有销售」,而不是「只查某一个特定转售商」。

seller_code_contains?string

seller_code 做子字符串匹配——适用于卖家在您的内部货号前后加了自己的 前缀/后缀的情况(例如厂商货号为 34100001,卖家挂出的是 34100001/0958)——只需传入您已知的那部分即可。与 seller_code 不同, 这不是精确匹配:较短的值可能会匹配到多个不相关的货号,因此建议尽量搭配 seller_id/marketplace 一起使用。

Lengthlength <= 200
external_id?string

市场平台自身的 SKU(WB 的 nmId、Ozon 的 sku 等)。只有搭配 marketplace 才能唯一确定——请同时传入两者。

url?string

商品页面链接。查询参数和锚点(?utm_source=...#reviews 等)会在匹配前 自动去除——直接粘贴从浏览器复制的原始链接即可。

Formaturi
category?string

category_path 做包含匹配(层级中的任意一级,不只是叶子节点)。可用值请 参阅 GET /categories。匹配会检查该商品所有已知语言的翻译,而不仅仅是 响应中作为默认值返回的那个 category_path

brand?string

精确匹配品牌名称,不区分大小写——不像 name_contains 那样是子字符串搜索。 品牌名称在不同市场平台/提交记录中的大小写差异只是采集噪声,不具有实际含义, 因此匹配时会忽略大小写。可用值请参阅 GET /brands

name_contains?string

对商品名称做不区分大小写的子字符串匹配(不做词干提取或形态匹配)。匹配会 检查该商品所有已知语言的翻译,而不仅仅是响应中作为默认值返回的那个 name——即使搜索词并未出现在结果的 name 字段中,商品也可能因此匹配成功。

Lengthlength <= 200
trust_status?string

按可信度状态筛选。省略此参数时会返回所有状态的商品——API 特意不会隐藏 unverified/flagged 记录;是否信任由调用方自行决定。

Value in

  • "unverified"
  • "verified"
  • "flagged"
page?integer

无效或缺失的值会被静默限制为默认值,而不会以 400 错误拒绝。

Range1 <= value
Default1
page_size?integer

最大值为 500——相比典型的面向 UI 的 API,这个值刻意设置得更宽松,专为批量拉取场景设计。

Range1 <= value <= 500
Default100

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/products?marketplace=wildberries&seller_id=2557&seller_code=BV2648-010&seller_code_contains=34100001&external_id=231151629&url=https%3A%2F%2Fwww.wildberries.ru%2Fcatalog%2F231151629%2Fdetail.aspx&category=%D0%97%D0%BE%D0%BE%D1%82%D0%BE%D0%B2%D0%B0%D1%80%D1%8B&brand=Nike&name_contains=Nike"
{  "data": [    {      "id": "e86bee19-9cc9-4a83-b9cc-6b61f1209d90",      "marketplace": "wildberries",      "external_id": "231151629",      "url": "https://www.wildberries.ru/catalog/231151629/detail.aspx",      "name": "Air Rift Breathe White Pure Platinum Women's",      "brand": "Nike",      "category_path": [        "Обувь",        "Женская",        "Туфли и лоферы"      ],      "attributes": {        "color": "желтый",        "season": "демисезон",        "is_authentic": true      },      "image_cover": "https://basket-15.wbbasket.ru/vol2311/part231151/231151629/images/big/1.webp",      "image_gallery": [        "https://basket-15.wbbasket.ru/vol2311/part231151/231151629/images/big/1.webp"      ],      "video_cover": null,      "video_gallery": [],      "seller": {        "id": "3994154",        "name": "POIZON(ДЭВУ)",        "code": "2604540"      },      "trust_status": "unverified",      "price_flagged": false,      "prices": [        {          "country_code": "ru",          "region_code": null,          "user_auth_status": "anonymous",          "price": 7093,          "old_price": 8651,          "currency": "RUB",          "stock_status": null,          "stock_quantity": null,          "recorded_at": "2026-08-02T23:21:53.185302+00:00"        }      ],      "special_price": [        {          "country_code": "ru",          "region_code": "",          "user_auth_status": "anonymous",          "min": 6783,          "max": 6880        }      ],      "stats": null,      "first_seen_language": "ru",      "default_language": "ru",      "translations": [        {          "language": "ru",          "name": "Air Rift Breathe White Pure Platinum Women's",          "category_path": [            "Обувь",            "Женская",            "Туфли и лоферы"          ],          "attributes": {            "color": "желтый",            "season": "демисезон",            "is_authentic": true          },          "updated_at": "2026-08-02T23:21:53.081+00:00"        }      ],      "first_seen_at": "2026-08-01T01:03:17.913664+00:00",      "last_seen_at": "2026-08-02T23:21:53.081+00:00"    }  ],  "meta": {    "has_more": true,    "page": 1,    "page_size": 100  }}