{
  "openapi": "3.0.1",
  "info": {
    "title": "AliExpress Products Scraper",
    "description": "Scrape AliExpress search results by keyword for dropshipping and price research. Rows carry the product id, title, link, price, old price, rating, order count, image, delivery window and promo labels. Filter by price, orders, rating or free shipping and track price changes. $0.12 per 1,000 products.",
    "version": "0.1",
    "x-build-id": "x6YXrfiUxPP45S6Q3"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/dami_studio~aliexpress-products-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-dami_studio-aliexpress-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/dami_studio~aliexpress-products-scraper/runs": {
      "post": {
        "operationId": "runs-sync-dami_studio-aliexpress-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/dami_studio~aliexpress-products-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-dami_studio-aliexpress-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": {
          "searchQueries": {
            "title": "Search terms",
            "type": "array",
            "description": "What to search AliExpress for. One row is returned per product found.",
            "items": {
              "type": "string"
            }
          },
          "productUrls": {
            "title": "AliExpress search URLs",
            "type": "array",
            "description": "Or paste AliExpress search URLs instead of typing terms, the keyword is read out of the URL.",
            "items": {
              "type": "string"
            }
          },
          "maxItems": {
            "title": "Maximum products",
            "minimum": 1,
            "maximum": 5000,
            "type": "integer",
            "description": "Total products across all your search terms. The terms share it: the first term fills it first and later terms only get what is left, so with two terms and 40 here the second term may get nothing. To give every term its own cap, use Products per term.",
            "default": 40
          },
          "maxItemsPerTerm": {
            "title": "Products per term",
            "minimum": 1,
            "maximum": 5000,
            "type": "integer",
            "description": "Optional. Gives every search term its own cap: each term gets up to this many products, and Maximum products is not used. Leave it empty to share Maximum products across your terms."
          },
          "sortBy": {
            "title": "Sort by",
            "enum": [
              "relevance",
              "priceAsc",
              "priceDesc",
              "ordersDesc",
              "rating"
            ],
            "type": "string",
            "description": "The order AliExpress returns products in. AliExpress sorts each page of 20 itself; from one page to the next the order is close but not strict, so sort the dataset afterwards if you need an exact order. Highest rating first is sorted by the actor on each term's products once the term is done, unrated products last.",
            "default": "relevance"
          },
          "currency": {
            "title": "Currency",
            "enum": [
              "USD",
              "EUR",
              "GBP",
              "CAD",
              "AUD",
              "BRL",
              "RUB",
              "JPY",
              "KRW",
              "INR"
            ],
            "type": "string",
            "description": "Currency prices are returned in. Leave it set and every row in a run uses the same currency.",
            "default": "USD"
          },
          "country": {
            "title": "Ship-to country",
            "type": "string",
            "description": "Country used for pricing and availability, as a two-letter code.",
            "default": "US"
          },
          "language": {
            "title": "Language",
            "enum": [
              "en_US",
              "es_ES",
              "fr_FR",
              "de_DE",
              "it_IT",
              "pt_BR",
              "nl_NL",
              "pl_PL",
              "tr_TR",
              "ru_RU",
              "ja_JP",
              "ko_KR",
              "ar_MA",
              "th_TH"
            ],
            "type": "string",
            "description": "The language product titles come back in. AliExpress supplies the translated titles; the order-count badge in ordersText follows the same language.",
            "default": "en_US"
          },
          "minOrders": {
            "title": "Minimum orders",
            "minimum": 0,
            "type": "integer",
            "description": "Only products with at least this many lifetime orders."
          },
          "minRating": {
            "title": "Minimum rating",
            "minimum": 0,
            "maximum": 5,
            "type": "number",
            "description": "Only products rated at least this, from 0 to 5. Products with no rating yet are left out once this is set."
          },
          "minPrice": {
            "title": "Minimum price",
            "minimum": 0,
            "type": "number",
            "description": "Only products at or above this price, in the Currency you picked."
          },
          "maxPrice": {
            "title": "Maximum price",
            "minimum": 0,
            "type": "number",
            "description": "Only products at or below this price, in the Currency you picked."
          },
          "freeShippingOnly": {
            "title": "Free shipping only",
            "type": "boolean",
            "description": "Only products whose listing shows free shipping. Free shipping over a minimum spend does not count."
          },
          "choiceOnly": {
            "title": "Choice products only",
            "type": "boolean",
            "description": "Only products with the Choice badge."
          },
          "shipFromCountry": {
            "title": "Ships from",
            "pattern": "^[A-Za-z]{2}$",
            "type": "string",
            "description": "Optional two-letter country code, such as US or ES. Only products whose listing says they ship from that country; a listing that does not say is left out. Local stock usually shows only for the same Ship-to country: ES finds Spanish stock with Ship-to country ES, and nothing with US."
          },
          "includeReviewCount": {
            "title": "Add review count",
            "type": "boolean",
            "description": "Adds reviewCount to each product. It is included in the product price, and reading the counts makes the run slower. When a count can't be read, the row comes back with reviewCount null and is charged as usual.",
            "default": false
          },
          "monitorName": {
            "title": "Price monitor name",
            "pattern": "^[a-zA-Z0-9-]{1,38}$",
            "type": "string",
            "description": "Optional. Name a watch, like shoes-weekly, and run it again later with the same name: each row then carries previousPrice, priceChange and isNew against the last run. The last prices are kept in a key-value store on your account named aliexpress-price-monitor- plus this name, one list per currency and ship-to country, up to 20,000 products. Every product the run checks is charged as a product, whether or not it is written."
          },
          "onlyChanged": {
            "title": "Only new or repriced products",
            "type": "boolean",
            "description": "With a price monitor name: write only products that are new or whose price changed since the last run. Unchanged products are still checked and charged as products.",
            "default": false
          },
          "requestDelayMs": {
            "title": "Delay between requests (ms)",
            "minimum": 0,
            "maximum": 60000,
            "type": "integer",
            "description": "Gap between page requests, in milliseconds.",
            "default": 800
          },
          "proxyConfiguration": {
            "title": "Proxy",
            "type": "object",
            "description": "Optional. Leave this empty for a normal run. Your own proxy servers are used exactly as given."
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}