Alibaba API: Search wholesale products
Finds wholesale Alibaba offers for a product, with prices, minimum orders and supplier details. Reads up to 20 public listing pages; minimum-order filtering compares the displayed number without converting packaging units.
Unofficial. Not affiliated with or endorsed by Alibaba.
Inputs
Values from the run on Oct 31, 2026, shown under Output.
- Query, required
query Product to source, for example bamboo toothbrush.
bamboo toothbrush
- Max Results optional
max_results Maximum offers to return, for example 20.
12
Whole number from 1 to 60. Default
20.- Max Min Order optional
max_min_order Maximum displayed minimum-order number, for example 500. Packaging units are not converted.
Not set
Number 0 or more.
- Verified Only optional
verified_only Only show Verified Suppliers, for example true.
false (default)
True or false.
- Supplier Country optional
supplier_country Supplier country name or code, for example China or CN.
(default)
Input as JSON
{ "query": "bamboo toothbrush", "max_results": 12}Output
{ "offers": [ { "currency": "USD", "price_low": 0.09, "photo_link": "https://s.alicdn.com/@sc04/kf/H0123f750b59c43c28f310c3f798c3299g.jpg_300x300.jpg" , "price_high": 0.13, "product_link": "https://www.alibaba.com/product-detail/Natural-bamboo-toothbrush-black-eco-friendly_1600368066870.html" , "product_name": "Natural Bamboo Toothbrush Black Eco Friendly Soft Bristle Bamboo Toothbrush", "minimum_order": "500 pieces", "supplier_name": "Hebei Meixu Trade Co., Ltd.", "supplier_rating": 4.5, "supplier_country": "China", "years_on_alibaba": 7, "verified_supplier": true }, { "currency": "USD", "price_low": 0.06, "photo_link": "https://s.alicdn.com/@sc04/kf/Hec0ee2acc520430dbf7fa64466642b33V.jpg_300x300.jpg" , "price_high": 0.08, "product_link": "https://www.alibaba.com/product-detail/Wholesale-Customized-Logo-Wood-Bamboo-Toothbrush_1601214092701.html" , "product_name": "Wholesale Customized Logo Wood Bamboo Toothbrush with Soft Bristle for Home Travel Hotel Amenities Set", "minimum_order": "1000 boxes", "supplier_name": "Yangzhou Ranbay Hotel Supplies Co., Ltd.", "supplier_rating": 4.8, "supplier_country": "China", "years_on_alibaba": 4, "verified_supplier": true }, { "currency": "USD", "price_low": 0.15, "photo_link": "https://s.alicdn.com/@sc04/kf/Hdeb325b0e888431490fd18cd9bec1a67U.jpg_300x300.jpg" , "price_high": 0.35, "product_link": "https://www.alibaba.com/product-detail/Bamboo-tooth-brush-biodegradable-toothbrush-kids_1600902674211.html" , "product_name": "Bamboo Tooth Brush Biodegradable Toothbrush Kids Adult Toothbrush Manufacturers China Eco Wood Toothbrush Factory", "minimum_order": "100 pieces", "supplier_name": "Yangzhou Dexing Import And Export Co., Ltd.", "supplier_rating": 4.4, "supplier_country": "China", "years_on_alibaba": 16, "verified_supplier": true } ]}Code
curl https://api.fous.com/v1/runs \ -H "Authorization: Bearer $FOUS_API_KEY" \ -H "Content-Type: application/json" \ -d '{"method":"alibaba.com/search_products","input":{"query":"bamboo toothbrush","max_results":12}}' # Save as fous.py, then run: python3 fous.pyimport json, os, timefrom urllib.error import HTTPErrorfrom urllib.request import Request, urlopenAPI = "https://api.fous.com/v1/runs" KEY = os.environ["FOUS_API_KEY"]HEADERS = { "Authorization": f"Bearer {KEY}", "Content-Type": "application/json" ,}def call(url, body=None): data = json.dumps(body).encode() if body else None request = Request(url, data, HEADERS) try: with urlopen(request, timeout=120) as r: return r.status, json.load(r) except HTTPError as error: message = json.load(error)["error"]["message"] raise RuntimeError(message) from errorstatus, run = call(API, { "method": "alibaba.com/search_products" , "input": { "query": "bamboo toothbrush", "max_results": 12 }})# 202: still going after 30 s. Ask again until it ends.while status == 202: time.sleep(2) status, run = call(f"{API}/{run['id']}")print(json.dumps(run["data"], indent=2))// Save as fous.mjs, then run: node fous.mjsconst api = "https://api.fous.com/v1/runs" ;const headers = { Authorization: `Bearer ${process.env.FOUS_API_KEY}`, "Content-Type": "application/json" ,};let response = await fetch(api, { method: "POST", headers, body: JSON.stringify({ "method": "alibaba.com/search_products" , "input": { "query": "bamboo toothbrush", "max_results": 12 } }), signal: AbortSignal.timeout(120_000),});let run = await response.json();// 202: still going after 30 s. Ask again until it ends.while (response.status === 202) { await new Promise((done) => setTimeout(done, 2_000)); response = await fetch(`${api}/${run.id}`, { headers }); run = await response.json();}if (!response.ok) throw new Error(run.error.message);console.log(run.data);# Connect your agent to Fous once, over MCP (Streamable HTTP):# https://api.fous.com/mcp# Set FOUS_API_KEY first: create a key at https://app.fous.com/keys.# Claude Codeclaude mcp add \ --scope user \ --transport http fous https://api.fous.com/mcp \ --header "Authorization: Bearer ${FOUS_API_KEY:?Set FOUS_API_KEY to your Fous API key}"# Codexcodex mcp add fous \ --url https://api.fous.com/mcp \ --bearer-token-env-var FOUS_API_KEY# Cursor, VS Code, Windsurf, Cline and morenpx -y add-mcp https://api.fous.com/mcp -g -n fous \ --header "Authorization: Bearer ${FOUS_API_KEY:?Set FOUS_API_KEY to your Fous API key}"# Then ask your agent:# "Use Fous to run alibaba.com/search_products# with {"query":"bamboo toothbrush","max_results":12}"Over HTTP, the answer’s data holds the output. A run still going after 30 seconds answers 202 with its id: ask GET /v1/runs/{id} until it ends.
Schema
Input schema
{ "type": "object", "required": [ "query" ], "properties": { "query": { "type": "string", "description": "Product to source, for example bamboo toothbrush." }, "max_results": { "type": "integer", "default": 20, "maximum": 60, "minimum": 1, "description": "Maximum offers to return, for example 20." }, "max_min_order": { "type": "number", "minimum": 0, "description": "Maximum displayed minimum-order number, for example 500. Packaging units are not converted." }, "verified_only": { "type": "boolean", "default": false, "description": "Only show Verified Suppliers, for example true." }, "supplier_country": { "type": "string", "default": "", "description": "Supplier country name or code, for example China or CN." } }}Output schema
{ "type": "object", "required": [ "offers" ], "properties": { "offers": { "type": "array", "items": { "type": "object", "required": [ "product_name", "price_low", "price_high", "currency", "minimum_order", "supplier_name", "supplier_country", "years_on_alibaba", "verified_supplier", "supplier_rating", "photo_link", "product_link" ], "properties": { "currency": { "type": [ "string", "null" ] }, "price_low": { "type": [ "number", "null" ] }, "photo_link": { "type": [ "string", "null" ] }, "price_high": { "type": [ "number", "null" ] }, "product_link": { "type": [ "string", "null" ] }, "product_name": { "type": [ "string", "null" ] }, "minimum_order": { "type": [ "string", "null" ] }, "supplier_name": { "type": [ "string", "null" ] }, "supplier_rating": { "type": [ "number", "null" ] }, "supplier_country": { "type": [ "string", "null" ] }, "years_on_alibaba": { "type": [ "integer", "null" ] }, "verified_supplier": { "type": "boolean" } }, "additionalProperties": false } } }, "additionalProperties": false}- Price
- 1 credit per completed run (1¢ with pay as you go); failed runs are free.
- Method
alibaba.com/search_products- Returns
- product name, price range, currency, minimum order, supplier name, country, years, verified flag, rating, photo and product links
Use it from your agent
Give your agent this line. It reads SKILL.md, gets a Fous API key and connects the Fous MCP server. Its run then takes the method alibaba.com/search_products with the inputs above.
Ask your agent
- Find wholesale suppliers for silicone phone cases with a minimum order under 300 pieces, verified suppliers only
- Search Alibaba for stainless steel water bottles from Vietnam suppliers and show prices, MOQ, and supplier ratings
- I need about 40 wholesale offers for custom printed tote bags — list price ranges, minimum orders, and how many years each supplier has been in business
- Looking to source LED strip lights in bulk from China; only include verified sellers and cap the MOQ at 1000
- Pull up to 15 Alibaba listings for organic cotton baby onesies with supplier country, verified status, and product links
See more
All Alibaba methodsGets one Alibaba wholesale offer from a product link, or from a product name plus supplier name.
alibaba.com/get_productLooks up a supplier's public company profile on Alibaba by company name or store link. Response-rate percentages are not consistently published, so that field is null.
alibaba.com/get_supplierSearches AliExpress listings by product words, shipping destination, price range and sort order. Unpriced promotional cards are omitted; free shipping is marked only when the listing explicitly says so.
aliexpress.com/search_productsGet one AliExpress product’s prices, variants, reviews, shipping to a chosen country, seller and specifications from its link or the best-selling name match. Sold counts may be rounded, and shipping options are those shown for the displayed variant.
aliexpress.com/get_productSearch ALDI US groceries in site order with prices for the selected store. Prices and availability vary by store; related search results may follow direct matches.
aldi.us/search_productsSearches Amazon products in a chosen country store, with price range, sort, Prime and page options. Returns the listings and prices shown to an anonymous shopper in the store's currency.
amazon.com/search_productsSearches IKEA products in a chosen country and returns current prices, details, photos and reviews in IKEA's result order.
ikea.com/search_productsSearches Walmart products by keywords with optional sort and price range, returning prices, ratings, sellers and availability in Walmart's order. Uses Walmart's default location (no ZIP-based pricing).
walmart.com/search_products