Made-in-China product search
Products on Made-in-China.com matching a keyword, with the site's filters: supplier business type, R&D capacity, audited suppliers, secured trading, leading factories, samples available, price range (US$), maximum minimum order, product category and product properties (codes from facets). Each product has id, name, link, image, price text with min and max (USD), price type (FOB), minimum order, key properties, certifications, secured-trading flag and supplier (name, site, id, membership level, audited flag, location, business type, capability stars). facets lists every filter value the site offers for the query. Pass next_page back as page (null on the last page).
Every response includes credits_used: the credits this call cost.
Parameters
| name | type | description |
|---|---|---|
qrequired | string | Product keyword. Example: ball valve |
business_type | manufacturer | trading_company | group_corporation | other | Supplier business type. |
rd_capacity | odm | oem | own_brand | others | Supplier R&D capacity. |
audited | boolean | true = audited suppliers only. |
secured_trading | boolean | true = products with secured trading only. |
leading_factory | boolean | true = industry-leading audited factories only. |
sample | boolean | true = products offering a sample. |
min_price | number | Lowest unit price in US$ (products whose price range reaches it). |
max_price | number | Highest unit price in US$ (products whose price range reaches it). |
moq_max | integer | Products whose minimum order is at most this many units. |
category | string | A category code from facets.catCode. |
property | string | Property codes from facets.propertyValues, comma separated (e.g. 254_40254). |
page | integer | Page number (1 by default). |
Every endpoint also takes fresh, raw, fields (see lean responses and caching).
Example
curl "https://api.api.sh/made-in-china/v1/search?q=ball+valve" \
-H "x-api-key: $APISH_KEY" import os, requests
res = requests.get(
"https://api.api.sh/made-in-china/v1/search",
params={"q": "ball valve"},
headers={"x-api-key": os.environ["APISH_KEY"]},
timeout=120,
)
res.raise_for_status()
data = res.json() const url = new URL("https://api.api.sh/made-in-china/v1/search");
url.searchParams.set("q", "ball valve");
const res = await fetch(url, { headers: { "x-api-key": process.env.APISH_KEY } });
if (!res.ok) throw new Error(`${res.status} ${await res.text()}`);
const data = await res.json(); Response
A JSON object with the fields described above, plus raw (the source's own data), cached, fetched_at and credits_used. Errors return {"success": false, "error": "…"} with the HTTP status (see errors). A lookup that ran but found nothing (404) costs the price above; refused calls and errors on our side are free (what's charged).