列出商品
回傳符合指定篩選條件的一頁商品。沒有任何一個篩選參數是必填的,但通常都應至少傳入 一個識別性參數(url、external_id+marketplace,或 seller_code)——否則 您取得的會是整個資料集的一個寬泛切片。
Authorization
bearerAuth Bearer 權杖——取得方式與使用方法請參閱 API 概覽。
In: header
Query Parameters
Value in
- "ozon"
- "wildberries"
- "yandex_market"
- "lamoda"
賣家在該電商平台上的 id。通常與 marketplace 一起使用——單獨使用時無法保證 跨電商平台唯一。
賣家或品牌為該商品設定的自有內部貨號(不是我們的 external_id)。刻意 不要求必須搭配 seller_id——品牌方實際的需求通常是「找出我這個貨號在哪裡 都有販售」,而不是「只查某一個特定轉售商」。
電商平台自身的 SKU(WB 的 nmId、Ozon 的 sku 等)。只有搭配 marketplace 才能唯一確定——請一併傳入兩者。
商品頁面連結。查詢參數與錨點(?utm_source=...、#reviews 等)會在比對前 自動移除——直接貼上從瀏覽器複製的原始連結即可。
uri與 category_path 做包含比對(層級中的任意一級,不只是葉節點)。可用值請 參閱 GET /categories。
精確比對品牌名稱,不區分大小寫——不像 q 那樣是子字串搜尋。品牌名稱在不同 電商平台/提交記錄中的大小寫差異只是採集噪訊,不具有實際意義,因此比對時會 忽略大小寫。可用值請參閱 GET /brands。
簡單的、不區分大小寫的名稱搜尋(不做詞幹提取或型態比對)。
length <= 200依可信度狀態篩選。省略此參數時會回傳所有狀態的商品——API 刻意不會隱藏 unverified/flagged 記錄;是否信任由呼叫方自行判斷。
Value in
- "unverified"
- "verified"
- "flagged"
無效或缺失的值會被靜默限制為預設值,而不會以 400 錯誤拒絕。
1 <= value1最大值為 500——相較於典型的面向 UI 的 API,這個值刻意設定得更寬鬆,專為批次拉取情境設計。
1 <= value <= 500100Response 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&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&q=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": { "total": 13663, "page": 1, "page_size": 100 }}取得商品價格歷史 GET
某項商品價格與庫存觀測記錄的完整時間序列——與目前價格不同(目前價格已包含在 `GET /products` 和 `GET /products/{id}` 中),這個端點僅在需要分析歷史趨勢時才用到。
取得某個擷取工作階段的狀態 GET
當工作階段中的每一筆提交記錄都不再處於 `pending`/`processing` 狀態時,`status` 就會變為 `completed`——這並不一定代表「每一項都成功合併了」,詳細明細請查看 `stats`。`stats.total` 為 0 的工作階段會一直是 `processing`,永遠不會變成 `completed`,無論是因為還沒有任何資料抵達,還是(很久之後)因為其提交記錄已經 超出保留期限而遭清除。