Alibaba Products Scraper
Pricing
from $2.99 / 1,000 products
Go to Apify Store
Alibaba Products Scraper
Extract public Alibaba wholesale product listings, pricing, MOQ, and supplier signals for sourcing research.
Alibaba Products Scraper
Pricing
from $2.99 / 1,000 products
Extract public Alibaba wholesale product listings, pricing, MOQ, and supplier signals for sourcing research.
You can access the Alibaba Products Scraper programmatically from your own applications by using the Apify API. You can also choose the language preference from below. To use the Apify API, you’ll need an Apify account and your API token, found in API & Integrations in Apify Console.
{ "openapi": "3.0.1", "info": { "version": "1.2", "x-build-id": "nE98ImMUKznTGHtNL" }, "servers": [ { "url": "https://api.apify.com/v2" } ], "paths": { "/acts/w3crawler~alibaba-products-scraper/run-sync-get-dataset-items": { "post": { "operationId": "run-sync-get-dataset-items-w3crawler-alibaba-products-scraper", "x-openai-isConsequential": false, "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.", "tags": [ "Run Actor" ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/inputSchema" } } } }, "parameters": [ { "name": "token", "in": "query", "required": true, "schema": { "type": "string" }, "description": "Enter your Apify token here" } ], "responses": { "200": { "description": "OK" } } } }, "/acts/w3crawler~alibaba-products-scraper/runs": { "post": { "operationId": "runs-sync-w3crawler-alibaba-products-scraper", "x-openai-isConsequential": false, "summary": "Executes an Actor and returns information about the initiated run in response.", "tags": [ "Run Actor" ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/inputSchema" } } } }, "parameters": [ { "name": "token", "in": "query", "required": true, "schema": { "type": "string" }, "description": "Enter your Apify token here" } ], "responses": { "200": { "description": "OK", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/runsResponseSchema" } } } } } } }, "/acts/w3crawler~alibaba-products-scraper/run-sync": { "post": { "operationId": "run-sync-w3crawler-alibaba-products-scraper", "x-openai-isConsequential": false, "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.", "tags": [ "Run Actor" ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/inputSchema" } } } }, "parameters": [ { "name": "token", "in": "query", "required": true, "schema": { "type": "string" }, "description": "Enter your Apify token here" } ], "responses": { "200": { "description": "OK" } } } } }, "components": { "schemas": { "inputSchema": { "type": "object", "properties": { "queries": { "title": "Search queries", "maxItems": 25, "type": "array", "description": "Product keywords. Each query becomes an independent public Alibaba product-search source when source URLs are not supplied.", "items": { "type": "string", "minLength": 1, "maxLength": 200 }, "default": [ "wireless earbuds" ] }, "searchQuery": { "title": "Primary search query", "maxLength": 200, "type": "string", "description": "Compatibility alias used as the first generated search query." }, "sourceUrls": { "title": "Alibaba public source URLs", "maxItems": 50, "type": "array", "description": "One or more public Alibaba product-search, category, showroom, or product-detail URLs. These take precedence over generated queries.", "items": { "type": "object", "additionalProperties": false, "required": [ "url" ], "properties": { "url": { "title": "Alibaba URL", "description": "Public Alibaba result or product-detail URL.", "type": "string", "minLength": 1 } } } }, "startUrls": { "title": "Start URLs (compatibility alias)", "maxItems": 50, "type": "array", "description": "Compatibility alias for sourceUrls.", "items": { "type": "string", "minLength": 1 } }, "searchUrls": { "title": "Search URLs (compatibility alias)", "maxItems": 50, "type": "array", "description": "Compatibility alias for sourceUrls.", "items": { "type": "string", "minLength": 1 } }, "urls": { "title": "URLs (compatibility alias)", "maxItems": 50, "type": "array", "description": "Compatibility alias for sourceUrls.", "items": { "type": "string", "minLength": 1 } }, "url": { "title": "Single source URL (compatibility alias)", "type": "string", "description": "Compatibility alias for one public Alibaba source URL." }, "startPage": { "title": "Start page", "minimum": 1, "maximum": 1000, "type": "integer", "description": "One-based page at which each source starts.", "default": 1 }, "start_page": { "title": "Start page (compatibility alias)", "minimum": 1, "maximum": 1000, "type": "integer", "description": "Compatibility alias for startPage." }, "maxPages": { "title": "Maximum pages per source", "minimum": 1, "maximum": 100, "type": "integer", "description": "Maximum ordered public result pages to request for each source. Observed next-page links and safe page-number fallbacks are supported.", "default": 2 }, "max_pages": { "title": "Maximum pages (compatibility alias)", "minimum": 1, "maximum": 100, "type": "integer", "description": "Compatibility alias for maxPages." }, "maxProducts": { "title": "Maximum products", "minimum": 1, "maximum": 5000, "type": "integer", "description": "Maximum unique product observations emitted after aggregation, filters, and sorting.", "default": 300 }, "max_products": { "title": "Maximum products (compatibility alias)", "minimum": 1, "maximum": 5000, "type": "integer", "description": "Compatibility alias for maxProducts." }, "maxItems": { "title": "Maximum products (compatibility alias)", "minimum": 1, "maximum": 5000, "type": "integer", "description": "Compatibility alias for maxProducts." }, "max_items": { "title": "Maximum products (compatibility alias)", "minimum": 1, "maximum": 5000, "type": "integer", "description": "Compatibility alias for maxProducts." }, "sortBy": { "title": "Sort results", "enum": [ "relevance", "price_asc", "price_desc", "moq_asc", "moq_desc", "rating_desc", "reviews_desc", "sold_desc", "supplier_years_desc", "supplier_name_asc", "title_asc" ], "type": "string", "description": "Stable ordering applied after all sources and pages are aggregated.", "default": "relevance" }, "textQuery": { "title": "Text filter", "maxLength": 200, "type": "string", "description": "Keep products whose title, supplier, country, category, badge, promotion, or description contains this text." }, "supplierCountries": { "title": "Supplier countries or regions", "maxItems": 100, "type": "array", "description": "Keep products whose observed supplier country/location contains one of these values, for example CN, IN, or China.", "items": { "type": "string", "minLength": 1, "maxLength": 80 } }, "countries": { "title": "Supplier countries (compatibility alias)", "maxItems": 100, "type": "array", "description": "Compatibility alias for supplierCountries.", "items": { "type": "string", "minLength": 1, "maxLength": 80 } }, "currency": { "title": "Currency filter", "pattern": "^[A-Za-z]{3}$", "type": "string", "description": "Keep products whose observed price is in this three-letter currency code." }, "minPrice": { "title": "Minimum price", "minimum": 0, "type": "number", "description": "Keep products whose observed price range reaches this value." }, "price_min": { "title": "Minimum price (compatibility alias)", "minimum": 0, "type": "number", "description": "Compatibility alias for minPrice." }, "maxPrice": { "title": "Maximum price", "minimum": 0, "type": "number", "description": "Keep products whose observed price range starts at or below this value." }, "price_max": { "title": "Maximum price (compatibility alias)", "minimum": 0, "type": "number", "description": "Compatibility alias for maxPrice." }, "minMoq": { "title": "Minimum MOQ", "minimum": 0, "type": "number", "description": "Keep products with a minimum order quantity at or above this value." }, "moqMin": { "title": "Minimum MOQ (compatibility alias)", "minimum": 0, "type": "number", "description": "Compatibility alias for minMoq." }, "moq_min": { "title": "Minimum MOQ (compatibility alias)", "minimum": 0, "type": "number", "description": "Compatibility alias for minMoq." }, "maxMoq": { "title": "Maximum MOQ", "minimum": 0, "type": "number", "description": "Keep products with a minimum order quantity at or below this value." }, "moqMax": { "title": "Maximum MOQ (compatibility alias)", "minimum": 0, "type": "number", "description": "Compatibility alias for maxMoq." }, "moq_max": { "title": "Maximum MOQ (compatibility alias)", "minimum": 0, "type": "number", "description": "Compatibility alias for maxMoq." }, "minSupplierRating": { "title": "Minimum supplier rating", "minimum": 0, "maximum": 5, "type": "number", "description": "Keep products whose observed supplier rating meets this threshold." }, "minProductRating": { "title": "Minimum product rating", "minimum": 0, "maximum": 5, "type": "number", "description": "Keep products whose observed product rating meets this threshold." }, "minReviewCount": { "title": "Minimum review count", "minimum": 0, "type": "number", "description": "Keep products with at least this many public reviews." }, "minSoldCount": { "title": "Minimum sold count", "minimum": 0, "type": "number", "description": "Keep products with at least this many public sold/order signals." }, "minSupplierYears": { "title": "Minimum supplier years", "minimum": 0, "maximum": 200, "type": "number", "description": "Keep products from suppliers with at least this many observed years." }, "minReorderRatePercent": { "title": "Minimum reorder rate (%)", "minimum": 0, "maximum": 100, "type": "number", "description": "Keep products whose public reorder-rate badge meets this threshold." }, "requiredBadges": { "title": "Required product badges", "maxItems": 20, "type": "array", "description": "Keep products containing every requested public badge or selling point.", "items": { "type": "string", "minLength": 1, "maxLength": 100 } }, "requiredCertifications": { "title": "Required certifications", "maxItems": 20, "type": "array", "description": "Keep products containing every requested certification text.", "items": { "type": "string", "minLength": 1, "maxLength": 100 } }, "tradeAssurance": { "title": "Trade Assurance only", "type": "boolean", "description": "Keep only product cards marked with public Trade Assurance evidence.", "default": false }, "trade_assurance": { "title": "Trade Assurance (compatibility alias)", "type": "boolean", "description": "Compatibility alias for tradeAssurance." }, "verifiedSupplier": { "title": "Verified supplier only", "type": "boolean", "description": "Keep only cards with public verified-supplier evidence.", "default": false }, "verified_supplier": { "title": "Verified supplier (compatibility alias)", "type": "boolean", "description": "Compatibility alias for verifiedSupplier." }, "alibabaGuaranteed": { "title": "Alibaba Guaranteed only", "type": "boolean", "description": "Keep only cards with public Alibaba Guaranteed evidence.", "default": false }, "alibaba_guaranteed": { "title": "Alibaba Guaranteed (compatibility alias)", "type": "boolean", "description": "Compatibility alias for alibabaGuaranteed." }, "certifiedOnly": { "title": "Certified products only", "type": "boolean", "description": "Keep only cards with a public certified badge.", "default": false }, "deduplicate": { "title": "Deduplicate products", "type": "boolean", "description": "Merge repeated product IDs or canonical product URLs across pages and sources.", "default": true }, "includeMedia": { "title": "Include product media", "type": "boolean", "description": "Include product-scoped public Alibaba CDN images only; country flags and UI assets are excluded.", "default": true }, "includeAttributes": { "title": "Include attributes and specifications", "type": "boolean", "description": "Include observed attribute, variation, and specification fields.", "default": true }, "includeSupplierDetails": { "title": "Include supplier details", "type": "boolean", "description": "Include supplier identity/profile, country, years, ratings, badges, and public trust signals.", "default": true }, "renderJavaScript": { "title": "Render JavaScript pages", "type": "boolean", "description": "Use a real Chromium page so dynamically rendered Alibaba result cards and pagination are available. Disable only for static fixtures or direct HTML testing.", "default": true }, "useBrowser": { "title": "Render JavaScript (compatibility alias)", "type": "boolean", "description": "Compatibility alias for renderJavaScript." }, "requestDelayMs": { "title": "Request delay (ms)", "minimum": 0, "maximum": 15000, "type": "integer", "description": "Respectful delay before each live public request.", "default": 1000 }, "pageDelayMs": { "title": "Request delay (compatibility alias)", "minimum": 0, "maximum": 15000, "type": "integer", "description": "Compatibility alias for requestDelayMs." }, "maxConcurrency": { "title": "Maximum source concurrency", "minimum": 1, "maximum": 5, "type": "integer", "description": "Maximum independent source crawls. Pages within a source remain ordered.", "default": 2 }, "concurrency": { "title": "Maximum source concurrency (compatibility alias)", "minimum": 1, "maximum": 5, "type": "integer", "description": "Compatibility alias for maxConcurrency." }, "maxRequestRetries": { "title": "Maximum request retries", "minimum": 0, "maximum": 10, "type": "integer", "description": "Retries for transient public request failures.", "default": 3 }, "maxRetries": { "title": "Maximum request retries (compatibility alias)", "minimum": 0, "maximum": 10, "type": "integer", "description": "Compatibility alias for maxRequestRetries." }, "requestTimeoutSecs": { "title": "Request timeout (seconds)", "minimum": 15, "maximum": 300, "type": "integer", "description": "Timeout for one public page request.", "default": 60 }, "timeoutSecs": { "title": "Request timeout (compatibility alias)", "minimum": 15, "maximum": 300, "type": "integer", "description": "Compatibility alias for requestTimeoutSecs." }, "requestTimeoutMs": { "title": "Request timeout (compatibility alias, milliseconds)", "minimum": 15000, "maximum": 300000, "type": "integer", "description": "Compatibility alias for requestTimeoutSecs." }, "maxResponseBytes": { "title": "Maximum response size (bytes)", "minimum": 100000, "maximum": 50000000, "type": "integer", "description": "Safety cap for downloaded or rendered HTML.", "default": 20000000 }, "maxBytes": { "title": "Maximum response size (compatibility alias)", "minimum": 100000, "maximum": 50000000, "type": "integer", "description": "Compatibility alias for maxResponseBytes." }, "browserWaitMs": { "title": "Browser render wait (ms)", "minimum": 0, "maximum": 10000, "type": "integer", "description": "Additional wait for dynamically rendered cards after DOM content loads.", "default": 1500 }, "renderWaitMs": { "title": "Browser render wait (compatibility alias)", "minimum": 0, "maximum": 10000, "type": "integer", "description": "Compatibility alias for browserWaitMs." }, "proxyConfiguration": { "title": "Apify Proxy", "type": "object", "description": "Optional standard Apify Proxy routing. Proxying changes the route only; it does not bypass CAPTCHAs or access controls.", "properties": { "useApifyProxy": { "title": "Use Apify Proxy", "description": "Route public browser requests through Apify Proxy.", "type": "boolean" }, "apifyProxyGroups": { "title": "Proxy groups", "description": "Optional Apify Proxy groups.", "type": "array", "items": { "type": "string" } }, "apifyProxyCountry": { "title": "Proxy country", "description": "Optional two- or three-letter Apify Proxy country code.", "type": "string", "pattern": "^[A-Za-z]{2,3}$" }, "proxyUrls": { "title": "Custom proxy URLs", "description": "Optional public HTTP(S) proxy URLs for local or external routing.", "type": "array", "items": { "type": "string" } } }, "additionalProperties": false }, "userAgent": { "title": "User-Agent override", "maxLength": 300, "type": "string", "description": "Optional transparent browser User-Agent for public requests." }, "locale": { "title": "Browser locale", "maxLength": 20, "type": "string", "description": "Locale used by the browser context, such as en-US.", "default": "en-US" } } }, "runsResponseSchema": { "type": "object", "properties": { "data": { "type": "object", "properties": { "id": { "type": "string" }, "actId": { "type": "string" }, "userId": { "type": "string" }, "startedAt": { "type": "string", "format": "date-time", "example": "2025-01-08T00:00:00.000Z" }, "finishedAt": { "type": "string", "format": "date-time", "example": "2025-01-08T00:00:00.000Z" }, "status": { "type": "string", "example": "READY" }, "meta": { "type": "object", "properties": { "origin": { "type": "string", "example": "API" }, "userAgent": { "type": "string" } } }, "stats": { "type": "object", "properties": { "inputBodyLen": { "type": "integer", "example": 2000 }, "rebootCount": { "type": "integer", "example": 0 }, "restartCount": { "type": "integer", "example": 0 }, "resurrectCount": { "type": "integer", "example": 0 }, "computeUnits": { "type": "integer", "example": 0 } } }, "options": { "type": "object", "properties": { "build": { "type": "string", "example": "latest" }, "timeoutSecs": { "type": "integer", "example": 300 }, "memoryMbytes": { "type": "integer", "example": 1024 }, "diskMbytes": { "type": "integer", "example": 2048 } } }, "buildId": { "type": "string" }, "defaultKeyValueStoreId": { "type": "string" }, "defaultDatasetId": { "type": "string" }, "defaultRequestQueueId": { "type": "string" }, "buildNumber": { "type": "string", "example": "1.0.0" }, "containerUrl": { "type": "string" }, "usage": { "type": "object", "properties": { "ACTOR_COMPUTE_UNITS": { "type": "integer", "example": 0 }, "DATASET_READS": { "type": "integer", "example": 0 }, "DATASET_WRITES": { "type": "integer", "example": 0 }, "KEY_VALUE_STORE_READS": { "type": "integer", "example": 0 }, "KEY_VALUE_STORE_WRITES": { "type": "integer", "example": 1 }, "KEY_VALUE_STORE_LISTS": { "type": "integer", "example": 0 }, "REQUEST_QUEUE_READS": { "type": "integer", "example": 0 }, "REQUEST_QUEUE_WRITES": { "type": "integer", "example": 0 }, "DATA_TRANSFER_INTERNAL_GBYTES": { "type": "integer", "example": 0 }, "DATA_TRANSFER_EXTERNAL_GBYTES": { "type": "integer", "example": 0 }, "PROXY_RESIDENTIAL_TRANSFER_GBYTES": { "type": "integer", "example": 0 }, "PROXY_SERPS": { "type": "integer", "example": 0 }, "PROXY_UNBLOCKER_UNITS": { "type": "integer", "example": 0 } } }, "usageTotalUsd": { "type": "number", "example": 0.00005 }, "usageUsd": { "type": "object", "properties": { "ACTOR_COMPUTE_UNITS": { "type": "integer", "example": 0 }, "DATASET_READS": { "type": "integer", "example": 0 }, "DATASET_WRITES": { "type": "integer", "example": 0 }, "KEY_VALUE_STORE_READS": { "type": "integer", "example": 0 }, "KEY_VALUE_STORE_WRITES": { "type": "number", "example": 0.00005 }, "KEY_VALUE_STORE_LISTS": { "type": "integer", "example": 0 }, "REQUEST_QUEUE_READS": { "type": "integer", "example": 0 }, "REQUEST_QUEUE_WRITES": { "type": "integer", "example": 0 }, "DATA_TRANSFER_INTERNAL_GBYTES": { "type": "integer", "example": 0 }, "DATA_TRANSFER_EXTERNAL_GBYTES": { "type": "integer", "example": 0 }, "PROXY_RESIDENTIAL_TRANSFER_GBYTES": { "type": "integer", "example": 0 }, "PROXY_SERPS": { "type": "integer", "example": 0 }, "PROXY_UNBLOCKER_UNITS": { "type": "integer", "example": 0 } } } } } } } } }}OpenAPI is a standard for designing and describing RESTful APIs, allowing developers to define API structure, endpoints, and data formats in a machine-readable way. It simplifies API development, integration, and documentation.
OpenAPI is effective when used with AI agents and GPTs by standardizing how these systems interact with various APIs, for reliable integrations and efficient communication.
By defining machine-readable API specifications, OpenAPI allows AI models like GPTs to understand and use varied data sources, improving accuracy. This accelerates development, reduces errors, and provides context-aware responses, making OpenAPI a core component for AI applications.
You can download the OpenAPI definitions for Alibaba Products Scraper from the options below:
If you’d like to learn more about how OpenAPI powers GPTs, read our blog post.
You can also check out our other API clients: