Marketplace pricing and availability monitoring
Wishエンドポイントを使えば、「Marketplace pricing and availability monitoring」をドキュメント化された入力とJSONレスポンスによる再現可能なAPIリクエストに変えられます。
Turn Wish's own internal marketplace data into structured JSON — keyword product search with real offset-based pagination, and per-product detail with pricing, sold-out state, aggregate rating, images, and every purchasable size/color/merchant variation, all as normalized JSON. Credential-free.
Search Wish's product catalog and get full product detail — pricing, availability, images, and every purchasable variation — as structured JSON.
エンドポイントファミリー
4
ドキュメント化されたパラメータ
15
サンプル数
6
ライブカタログスナップショット
稼働エンドポイント
6
メソッド
GET
必須パラメータ
11
スキーマ参照
6
{
"platform": "Wish",
"endpoint": "wish-search",
"method": "GET",
"path": "/wish/search",
"auth": "apiKey"
}ユースケース
Search Wish's product catalog and get full product detail — pricing, availability, images, and every purchasable variation — as structured JSON.
Wishエンドポイントを使えば、「Marketplace pricing and availability monitoring」をドキュメント化された入力とJSONレスポンスによる再現可能なAPIリクエストに変えられます。
Wishエンドポイントを使えば、「Product catalog research」をドキュメント化された入力とJSONレスポンスによる再現可能なAPIリクエストに変えられます。
Wishエンドポイントを使えば、「Merchant and variation tracking」をドキュメント化された入力とJSONレスポンスによる再現可能なAPIリクエストに変えられます。
マネージド実行
以下の数値はすべて、稼働中のWishエンドポイントカタログから取得しています(エンドポイント6件、ドキュメント化されたリクエストパラメータ15個、公開レスポンススキーマ6件)。DocsとPlaygroundが参照しているカタログと同じものです。
Wishのエンドポイントは6件、4つのリクエストファミリーに分類されています(Product、Categories、Searchほか1件)。
これらのWishエンドポイントには15個のリクエストパラメータがドキュメント化されており、うち11個が必須です。統合コードを書く前に入力仕様をすべて確認できます。
6件のWishエンドポイントのうち6件が実際のサンプルレスポンスを、6件がドキュメント化されたレスポンススキーマを備えています。最初のリクエストの前に実データの形に合わせて実装できます。
Wishのエンドポイントは成功時のスキーマに加えてエラーレスポンス(400、404、429、503)もドキュメント化しています。ブロック、レート制限、レコード欠損は空データではなく型付きのエラーとして返ります。
Wishのエンドポイントは6個のホスト型MCPツールとして提供されており、エージェントは同じパラメータと同じJSON契約のまま、追加の実装なしに同じルートを呼び出せます。
カバレッジマップ
これらのカードは稼働中のエンドポイントカタログから生成されるため、このページはDocsとPlaygroundが使うAPIサーフェスをそのまま反映します。
/wish/product/{id}
/wish/categories
/wish/search
/wish/suggest
エンドポイントカタログ
/wish/searchSearches Wish's product catalog by keyword, with real offset-based pagination. Returns normalized products with price, currency, rating, review count, and merchant id. A query with no matches returns a normal, empty result rather than an error.
レスポンスに関する注記
- Pagination is real, but Wish's own backend requires each subsequent page to be requested with the same `count` used on the first page of that sequence -- this endpoint replays that pattern internally, so a nonzero `offset` costs one extra upstream request per page walked. `next_offset` is the offset to request for the next page; `has_more` is `true` while more results remain. An `offset` that is not an exact multiple of `count`, or exceeds the reachable depth for the given `count`, returns `400` before any upstream request is made -- increase `count` to reach deeper pages in fewer steps. - A query with no matches returns a normal `200` with an empty `products` array and `has_more: false`, not an error. - `price` and `currency_code` reflect the requester's own localized pricing (e.g. a Hong Kong-geolocated request sees `HKD` prices); they are not always US dollars. - `rating` and `review_count` reflect the product's current aggregate rating; a brand-new product with no reviews yet returns `0` for both rather than an error. Example response: ```json {"code":200,"msg":"OK","data":{"query":"shoes","count":30,"offset":0,"result_count":3,"next_offset":30,"has_more":true,"products":[{"product_id":"68b46c0356ea5dba05e9f755","name":"Waterproof Leather Casual Sneakers for Men, Lightweight Breathable Walking Shoes, Fashion Athletic Running Shoes","price":129.74,"currency_code":"HKD","rating":5,"merchant_id":"68ad644a332a553b38e113ec","image_url":"https://canary.contestimg.wish.com/api/webimage/68b46c0356ea5dba05e9f755-medium.jpg","url":"https://www.wish.com/product/68b46c0356ea5dba05e9f755"}],"source_url":"https://www.wish.com/api/feed/get-search-universal-feed","fetched_at":"2026-08-10T10:00:00Z"}} ```
MCPツール wish_search
/wish/product/{id}Returns one Wish product's full detail: name, description, sold-out state, aggregate rating, image URLs, and every purchasable variation with its own price, currency, inventory, and merchant. id is taken from a search result's product_id field or a product page's URL. An unrecognized id returns 404.
レスポンスに関する注記
- `rating`/`rating_count` are the product's own aggregate rating. A brand-new product with no reviews yet returns `0` for both rather than an error. - `variations` lists every purchasable size/color/merchant combination of the product -- a single-SKU product still returns a one-element list. Each variation carries its own `price`, `currency_code`, `inventory`, and merchant fields. - `is_sold_out` reflects the product's current availability. - An unrecognized `id` returns `404`. A malformed `id` returns `400` before any upstream request is made. Example response: ```json {"code":200,"msg":"OK","data":{"product_id":"68b46c0356ea5dba05e9f755","name":"Waterproof Leather Casual Sneakers for Men, Lightweight Breathable Walking Shoes, Fashion Athletic Running Shoes","description":"Product Category: Casual Sports Shoes\nStyle: Sports\nFunction: Waterproof","is_sold_out":true,"images":["https://canary.contestimg.wish.com/api/webimage/68b46c0356ea5dba05e9f755-large.jpg"],"variations":[{"variation_id":"68b46c0356ea5dba05e9f750","price":129.74,"currency_code":"HKD","merchant_id":"68ad644a332a553b38e113ec","merchant_name":"urbandailyselect10"}],"url":"https://www.wish.com/product/68b46c0356ea5dba05e9f755","source_url":"https://www.wish.com/api/get-product-detail-page","fetched_at":"2026-08-10T10:00:00Z"}} ```
MCPツール wish_product
/wish/categoriesReturns Wish's own top navigation/category tree (e.g. "Popular", "Deals Hub", "Fashion", "Gadgets") plus each category's nested filter groups (e.g. Color, Rating) where present. This is a static, site-wide taxonomy -- it takes no input and its result does not vary by search term or category.
レスポンスに関する注記
- Each category's `filter_id` is Wish's own stable identifier for that nav tab. - `is_main_tab` marks the small set of primary tabs Wish's own header nav highlights (e.g. "Popular", "Deals Hub", "Recently Viewed") versus the longer tail of secondary category tags. - Most categories return an empty `filter_groups` list; only "Popular" (Wish's own default/landing tab) was observed carrying nested filter groups such as Color and Rating. Example response: ```json {"code":200,"msg":"OK","data":{"categories":[{"name":"Popular","filter_id":"tabbed_feed_latest","is_main_tab":true,"filter_groups":[{"id":"Color","name":"Color","icon_url":"https://main.cdn.wish.com/web/9a9befad15d4/img/filtered_feed/filter_feed_filter_color.png","filters":[{"name":"Blue","filter_id":"color_53dc217e21a8632b3c6e0735","is_quick_filter":false,"is_toggle":false,"default_selected":false}]}]},{"name":"Deals Hub","filter_id":"dealshub_flashsale","is_main_tab":true,"filter_groups":[]},{"name":"Fashion","filter_id":"tag_53dc186321a86318bdc87ef8","is_main_tab":false,"filter_groups":[]}],"source_url":"https://www.wish.com/api/feed/get-filtered-feed-categories","fetched_at":"2026-08-12T10:00:00Z"}} ```
MCPツール wish_categories
/wish/product/{id}/relatedReturns a Wish product's related-item rails: shelves of similar products, grouped by rail (e.g. general similar items, a faster-shipping-eligible subset). id is taken from a search result's product_id field or a product page's URL. A faster-shipping rail with no eligible items, or a nonexistent id, returns a normal, empty result rather than an error.
レスポンスに関する注記
- `shelves` always includes a `similar` rail (general related items) and, when eligible items exist, an `express` rail (a faster-shipping-eligible subset). `feed_mode` on each shelf identifies which rail it is; `title`/`subtitle` are Wish's own display text when available. - The `express` rail can be a well-formed, empty shelf (`items: []`, `has_more: false`) for a product with no faster-shipping-eligible similar items -- this is normal, not an error, and `shelves` may then contain only the `similar` rail. - A malformed `id` returns `400` before any upstream request is made. An unrecognized (but well-formed) `id` returns a normal `200` with an empty `similar` shelf rather than an error -- Wish's own related-items source does not distinguish an unknown product id from a known one. - `price` and `currency_code` reflect the requester's own localized pricing (e.g. a Hong Kong-geolocated request sees `HKD` prices); they are not always US dollars. Example response: ```json {"code":200,"msg":"OK","data":{"product_id":"68b46c0356ea5dba05e9f755","shelves":[{"feed_mode":"similar","title":"Similar Items","has_more":true,"items":[{"product_id":"5d795cac54553612b72abd6c","name":"New 2pcs Disc Detainer Locksmith Tools Lock Picks Set Padlock Tool","price":59.64,"currency_code":"HKD","rating":5,"merchant_id":"56cddd431e15ff78d61e0041","image_url":"https://canary.contestimg.wish.com/api/webimage/5d795cac54553612b72abd6c-normal.jpg","url":"https://www.wish.com/product/5d795cac54553612b72abd6c"}]},{"feed_mode":"express","title":"Faster Shipping","subtitle":"Similar Items with 5-7 Day Shipping","has_more":false,"items":[]}],"source_url":"https://www.wish.com/api/related-feed/get","fetched_at":"2026-08-11T13:56:00Z"}} ```
MCPツール wish_product_related
/wish/product/{id}/reviewsReturns a Wish product's normalized customer reviews. id is taken from a search result's product_id field or a product page's URL. A product with zero reviews returns a normal, empty result rather than an error. A caller wanting more reviews should re-request with a larger count -- this endpoint does not support an offset/cursor parameter, since the upstream source does not support one.
レスポンスに関する注記
- This endpoint does not support an offset/cursor parameter. A caller wanting more reviews should re-request with a larger `count` -- the upstream source does not support a working paging cursor, so exposing one here would promise pagination this endpoint cannot deliver. - `has_more` reflects the upstream's own signal for whether more reviews exist beyond the returned `count`. - A product with zero reviews returns a normal, empty result (`result_count: 0`) rather than an error. - An unrecognized `id` returns `404`. A malformed `id` returns `400` before any upstream request is made. Example response: ```json {"code":200,"msg":"OK","data":{"product_id":"5c204af997fd253055250a4d","count":10,"result_count":10,"has_more":true,"reviews":[{"id":"5f9010f5e7e021e9388e830c","rating":5,"comment":"Beautiful ","upvote_count":2,"image_ids":["5f91a50bffa216889a593953"],"created_at":"2020-10-21T10:44:05+00:00","user_name":"Cassandra Mae","user_country_code":"US"}],"source_url":"https://www.wish.com/api/mobile/get-product-ugc-ratings","fetched_at":"2026-08-11T10:00:00Z"}} ```
MCPツール wish_product_reviews
/wish/suggestReturns Wish's own search-suggestion (typeahead) result for a partial search term: a flat list of suggested search terms, no product data. A partial term with no matches returns a normal, empty result rather than an error.
レスポンスに関する注記
- There is no pagination -- `suggestions` is a single flat list. - A partial term with no matches returns a normal, empty result (`count: 0`, empty `suggestions`) rather than an error. Example response: ```json {"code":200,"msg":"OK","data":{"query":"shoe","count":10,"suggestions":["shoes for men","shoes for women","shoe storage organizer","shoe rack","shoe horn","shoe rack organizer","shoe laces","shoei x 14","shoe goo","shoe covers"],"source_url":"https://www.wish.com/api/search/autcomplete","fetched_at":"2026-08-11T10:00:00Z"}} ```
MCPツール wish_suggest
関連API
Marketplaces & Retail
Collect marketplace product signals from Amazon without building brittle storefront scrapers.
Marketplaces & Retail
Build resale, pricing, and marketplace workflows from structured eBay data.
Marketplaces & Retail
Turn public Shop.app product and merchant pages into structured JSON for e-commerce product intelligence, price research, shop monitoring, and marketplace discovery workflows.
Wishのスクレイピング方法
Wish's storefront categories split into four main tabs plus sixteen thematic tags such as Gadgets, Pet Accessories, and Automotive, each with its own Color and Rating filter groups. A 2026-09-24 pull of "wireless earbuds" returned six live listings from $7.57 to $17.27, five of them from the same merchant account, urbandailyselect7 — a clustering pattern worth watching if deduplicating sellers. Crawlora's six Wish endpoints turn that catalog, plus product detail, reviews, related shelves, and typeahead, into normalized JSON with one API key. Wish itself has run under Singapore's Qoo10 since it bought Wish's operating assets for roughly $161 million in April 2024.
Send a query to /wish/search for offset-based pages of normalized listings: price, currency, star rating, review count, and merchant id. A 2026-09-24 run of "wireless earbuds" returned six listings on the first page, with has_more set for further pages.
Call /wish/categories for Wish's four main tabs (Popular, Express, Deals Hub, Recently Viewed) and sixteen thematic tags like Fashion, Gadgets, and Wallets & Bags, plus Color and Rating filter groups nested under Popular.
Pass a 24-character hex id to /wish/product/{id} for every purchasable variation. A GT760 earbuds listing returned three color variations, all priced at $8.32, with per-variation inventory in the thousands.
/wish/product/{id}/reviews can return zero review bodies even when detail carries a nonzero rating and rating_count — the GT760 earbuds show a 5-star rating from one rater but an empty reviews array.
/wish/product/{id}/related returns similar-item rails; one pull surfaced a near-identical earbuds listing priced in Japanese yen, not USD.
/wish/suggest returns Wish's own typeahead completions for a partial query — ten phrase suggestions for "phone case," search terms only, no product data.
FAQ
count echoes the page size you asked for; result_count is how many listings actually came back on that page. A 2026-09-24 pull for "wireless earbuds" asked for ten and received six, with has_more true, so keep paging on has_more rather than on a full page.
Yes — /wish/product/{id} returns every purchasable variation with its own price, currency, inventory, and merchant. A GT760 earbuds listing carried three color variations, all $8.32, each with a different inventory count.
Not necessarily. /wish/product/{id}/reviews can return an empty array on a product that still shows a nonzero rating elsewhere — the rating aggregate and the review-text feed aren't guaranteed to stay in sync.
ContextLogic, Wish's operating company, sold substantially all of its assets to Qoo10, the Singapore-based ecommerce group, in a deal that closed April 19, 2024 for roughly $161 million.
Yes — a query with no matches returns a normal response with an empty products array, and /wish/suggest behaves the same way for an unmatched partial term.