{
  "openapi": "3.0.1",
  "info": {
    "title": "Alibaba Listings Scraper — Suppliers, MOQ & Price",
    "description": "Search Alibaba.com B2B listings by keyword or URL: title, price range, MOQ, supplier name, country, years, verified / gold / trade-assurance flags, rating, image. Filters for price, MOQ, supplier country/years, verified-only, trade-assurance-only. PPE. MCP-ready.",
    "version": "1.1",
    "x-build-id": "uvX3T6Ny5LuooaleV"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/khadinakbar~alibaba-listings-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-khadinakbar-alibaba-listings-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/khadinakbar~alibaba-listings-scraper/runs": {
      "post": {
        "operationId": "runs-sync-khadinakbar-alibaba-listings-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/khadinakbar~alibaba-listings-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-khadinakbar-alibaba-listings-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": {
          "searchQuery": {
            "title": "Search keyword",
            "type": "string",
            "description": "Free-text keyword to search Alibaba B2B products (e.g. 'wireless earbuds'). The Actor opens the Alibaba search-results page and collects every product listing card across pages. Leave empty if you instead provide startUrls. NOT a single product URL — this Actor searches and returns many products, it does not scrape one product-detail page."
          },
          "startUrls": {
            "title": "Start URLs (search/category pages)",
            "type": "array",
            "description": "Optional list of Alibaba search or category URLs to scrape directly (e.g. https://www.alibaba.com/trade/search?SearchText=led+strip or a /catalog/ URL). Use this instead of, or together with, searchQuery. Product-detail URLs (/product-detail/...) and non-Alibaba URLs are ignored — this Actor only scrapes search/category result pages.",
            "items": {
              "type": "object",
              "required": [
                "url"
              ],
              "properties": {
                "url": {
                  "type": "string",
                  "title": "URL of a web page",
                  "format": "uri"
                }
              }
            }
          },
          "maxResults": {
            "title": "Max products",
            "minimum": 1,
            "maximum": 10000,
            "type": "integer",
            "description": "Maximum number of product records to return. The Actor auto-paginates until this cap is reached, then stops, so it doubles as your cost ceiling (each product is one billable event). Defaults to 100. Set higher for bulk sourcing research.",
            "default": 100
          },
          "sortBy": {
            "title": "Sort results by",
            "enum": [
              "relevance",
              "transactionDesc",
              "responseRate",
              "priceAsc",
              "priceDesc",
              "newest"
            ],
            "type": "string",
            "description": "Order in which Alibaba returns the search results. 'relevance' is Alibaba Best Match (default); 'transactionDesc' surfaces high-transaction suppliers; 'responseRate' surfaces fast-responding suppliers; 'priceAsc'/'priceDesc' sort by price; 'newest' shows recently listed items. Applies to keyword searches; for startUrls the URL's own sort is respected.",
            "default": "relevance"
          },
          "minPrice": {
            "title": "Minimum unit price (USD)",
            "minimum": 0,
            "type": "integer",
            "description": "Only return products whose unit price (minimum of the price range) is at or above this value in USD. Applied as an Alibaba URL filter and as a safety re-check on the parsed price. Leave empty for no minimum."
          },
          "maxPrice": {
            "title": "Maximum unit price (USD)",
            "minimum": 0,
            "type": "integer",
            "description": "Only return products whose unit price (maximum of the price range) is at or below this value in USD. Applied as an Alibaba URL filter and as a safety re-check on the parsed price. Leave empty for no maximum."
          },
          "minMoq": {
            "title": "Minimum MOQ to allow (lower bound)",
            "minimum": 1,
            "type": "integer",
            "description": "Server-side MOQ floor passed to Alibaba's search URL. Combine with maxMoq to bracket a target MOQ window. Leave empty for no MOQ lower bound."
          },
          "maxMoq": {
            "title": "Maximum MOQ to allow (upper bound)",
            "minimum": 1,
            "type": "integer",
            "description": "Drop products whose minimum order quantity (MOQ) is above this value (e.g. 100 keeps only products requiring up to 100 pieces minimum). Useful for small-volume sourcing. Applied client-side after extraction; products with unknown MOQ are dropped when this bound is set. Leave empty for no upper bound."
          },
          "verifiedOnly": {
            "title": "Verified / Gold Supplier only",
            "type": "boolean",
            "description": "When enabled, keep only products from Verified or Gold Suppliers (Alibaba's supplier vetting tiers). Filtered products are not billed. Default false.",
            "default": false
          },
          "tradeAssuranceOnly": {
            "title": "Trade Assurance only",
            "type": "boolean",
            "description": "When enabled, keep only products offering Alibaba Trade Assurance (escrow + dispute protection). Filtered products are not billed. Default false.",
            "default": false
          },
          "minSupplierYears": {
            "title": "Minimum supplier years on Alibaba",
            "minimum": 0,
            "type": "integer",
            "description": "Drop products from suppliers with fewer than this many years on Alibaba (e.g. 3 keeps suppliers with 3+ years). Useful to skip brand-new sellers. Products with unknown years are dropped when this bound is set. Filtered products are not billed. Leave empty to keep all."
          },
          "supplierCountries": {
            "title": "Supplier country codes (ISO-2)",
            "type": "array",
            "description": "Optional whitelist of supplier countries as ISO-3166 alpha-2 codes (e.g. ['CN','VN','IN','PK']). Only products whose supplier is based in one of these countries are kept. Products with unknown supplier country are dropped when this filter is set. Leave empty to allow all countries.",
            "items": {
              "type": "string"
            }
          },
          "minRating": {
            "title": "Minimum supplier rating",
            "minimum": 0,
            "maximum": 5,
            "type": "integer",
            "description": "Drop products whose supplier average rating (0–5) is below this value, or whose rating is unknown. Useful to keep only well-reviewed suppliers. Filtered products are not billed. Leave empty to keep all ratings."
          },
          "minOrders": {
            "title": "Minimum orders / transactions",
            "minimum": 0,
            "type": "integer",
            "description": "Drop products with fewer than this many recorded orders/transactions, or with unknown order count. Useful to surface proven listings. Filtered products are not billed. Leave empty to keep all."
          },
          "site": {
            "title": "Alibaba domain",
            "enum": [
              "www.alibaba.com"
            ],
            "type": "string",
            "description": "Which Alibaba domain to search. Defaults to the global English site 'www.alibaba.com'.",
            "default": "www.alibaba.com"
          },
          "proxyConfiguration": {
            "title": "Proxy configuration",
            "type": "object",
            "description": "Proxy settings. Residential proxies are strongly recommended — Alibaba blocks most datacenter IPs. The Actor automatically prefers Apify residential when your account has it, and gracefully falls back to Apify datacenter when it does not — so leaving this at the default works on any plan. Override only for a specific proxy requirement.",
            "default": {
              "useApifyProxy": true
            }
          }
        }
      },
      "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
                  }
                }
              },
              "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}