---
title: "Scrape 1688.com wholesale search results"
method: POST
path: "/marketplace/1688-search"
tags: ["Plugins"]
---

# Scrape 1688.com wholesale search results

`POST /marketplace/1688-search`

## Request

- Base URL: `https://api.scrapeunblocker.com`
- URL: `https://api.scrapeunblocker.com/marketplace/1688-search`
- Auth: API key in header `x-scrapeunblocker-key`

Searches 1688.com (China's B2B wholesale marketplace) for `q` and returns the offers as JSON: `offerId`, `title`, `url`, `image`/`images`, `price` in yuan (`currency` CNY), `priceTiers` (price per quantity range with `minQuantity`/`maxQuantity`), `soldText` + `sold` (lower bound of units sold), `repurchaseRatePercent`, `serviceTags`, `promotionTags`, `tags`, `sponsored`, and the `supplier` (`name`, `loginId`, `memberId`, `shopUrl`, `yearsOnPlatform`, `province`, `city`, `factoryInspected`, `businessInspected`, `superFactory`, `tradeScores`). Sort by relevance, sales or price, filter with `price_min`/`price_max` (yuan) and `province`, and collect up to `max_results` across pages (60 per page, each page billed as one request, see `pagesFetched`). Paging: `nextPage` is the next 1688 page not yet returned (pass it as `page` to continue) and `hasMore` says whether there is one; when `max_results` ends inside a page, the rest of that page is not returned (`droppedFromLastPage`), so use multiples of 60 to get every offer. Text is returned in Chinese as 1688 publishes it. Companion to `/marketplace/1688-product`.

## Query parameters

- `q` string, nullable: What to search, in Chinese or English, e.g. '手机壳', '连衣裙', 'bluetooth earphones'. Chinese keywords match the most offers.
- `page` integer: 1-based results page to start from (1-34). Use `nextPage` of a previous response to continue.
- `max_results` integer: Offers to collect across pages (1-300); 1688 serves 60 per page and each page fetched is billed as one request.
- `sort` string: Order: relevance, sales, price_asc, price_desc (sales = most sold in the last 30 days first; price in yuan).
- `price_min` number, nullable: Only offers priced at or above this many yuan (CNY).
- `price_max` number, nullable: Only offers priced at or below this many yuan (CNY).
- `province` string, nullable: Only suppliers in this Chinese province, by its Chinese name, e.g. 广东 (Guangdong), 浙江 (Zhejiang), 江苏 (Jiangsu).
- `proxy_country` string, nullable: Proxy country the request is sent from (ISO-2, e.g. 'DE', 'SG'). Leave blank to let the API pick.

## Response `200`

JSON with a `products` array plus paging totals. A query 1688 has no offers for answers 200 with an empty array.

- unknown

## Other responses

- `400`: Invalid parameters.
- `422`: Validation Error
- `502`: 1688 refused every exit (slider page), no results page returned, or the call did not finish in time.

---

[API](https://skmtc.dev/scrapeunblocker/apis/scrapeunblocker-api.md) · [All operations](https://skmtc.dev/scrapeunblocker/apis/scrapeunblocker-api/llms.txt) · [OpenAPI document](https://skmtc.dev/scrapeunblocker/apis/scrapeunblocker-api/revisions/c02f1254cc47?raw)
