{
  "openapi": "3.0.1",
  "info": {
    "title": "AliExpress Image Search Scraper — Find Products by Photo",
    "description": "Search AliExpress by photo instead of keywords. Paste image links and get the products AliExpress matches to each one, in its own ranking, with price, discount, unit price, orders, rating, Choice label and a 0-100 visual similarity score per match. 55 countries, 31 currencies.",
    "version": "0.1",
    "x-build-id": "DejdDrWQ6X4Qg5klO"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/memo23~aliexpress-image-search-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-memo23-aliexpress-image-search-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/memo23~aliexpress-image-search-scraper/runs": {
      "post": {
        "operationId": "runs-sync-memo23-aliexpress-image-search-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/memo23~aliexpress-image-search-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-memo23-aliexpress-image-search-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": {
          "images": {
            "title": "Images to search with",
            "type": "array",
            "description": "Links to photos, one per line: any direct image link (JPG, PNG, WebP, AVIF, GIF) or a data:image/... URL. Each image is one search. Large photos are shrunk before upload, the same way AliExpress's own search box does it.",
            "items": {
              "type": "string"
            }
          },
          "uploadedImages": {
            "title": "Or upload photos",
            "type": "array",
            "description": "Photos from your computer, uploaded straight from this form (JPG, PNG, WebP and other common formats). Searched the same way as the links above; use either field or both."
          },
          "maxMatchesPerImage": {
            "title": "Max matches per image",
            "minimum": 1,
            "maximum": 1000,
            "type": "integer",
            "description": "Stop collecting products for an image after this many. The first results page holds 60; AliExpress usually has 100 to 200 distinct matches per image, and the search stops early when it runs out.",
            "default": 60
          },
          "sortBy": {
            "title": "Sort results by",
            "enum": [
              "best_match",
              "orders",
              "price_asc",
              "price_desc"
            ],
            "type": "string",
            "description": "Order of the matches. Best match is AliExpress's own visual ranking.",
            "default": "best_match"
          },
          "minSimilarity": {
            "title": "Minimum visual similarity (0-100)",
            "minimum": 0,
            "maximum": 100,
            "type": "integer",
            "description": "Leave out products whose photo is less alike your image than this, on AliExpress's own 0-100 similarity score. Near-identical listings score 90+, look-alikes 70-85. 0 keeps everything.",
            "default": 0
          },
          "includeDetails": {
            "title": "Add product details",
            "type": "boolean",
            "description": "For every match, also fetch the product page data: each variant with its own price and stock, shipping options and delivery dates for the ship-to country, the seller card (store name, rating, positive feedback, store age), specs, all images and the video. One extra request per match, so runs take longer; charged per match whose details come back. Available from 8 November 2026. Default off.",
            "default": false
          },
          "currency": {
            "title": "Price currency",
            "enum": [
              "USD",
              "EUR",
              "GBP",
              "CAD",
              "AUD",
              "BRL",
              "MXN",
              "PLN",
              "SEK",
              "KRW",
              "JPY",
              "TRY",
              "ILS",
              "SAR",
              "AED",
              "CLP",
              "UAH",
              "CHF",
              "RUB",
              "INR",
              "NOK",
              "DKK",
              "CZK",
              "HUF",
              "RON",
              "NZD",
              "SGD",
              "KZT",
              "COP",
              "PEN",
              "ARS"
            ],
            "type": "string",
            "description": "Currency for every price in the output, e.g. USD, EUR or GBP. Default USD.",
            "default": "USD"
          },
          "shipTo": {
            "title": "Prices and shipping for",
            "enum": [
              "US",
              "AR",
              "AM",
              "AU",
              "AT",
              "AZ",
              "BY",
              "BE",
              "BA",
              "BR",
              "BG",
              "CA",
              "CL",
              "CO",
              "HR",
              "CZ",
              "EE",
              "FR",
              "GE",
              "DE",
              "GR",
              "HU",
              "IN",
              "IL",
              "IT",
              "JP",
              "KZ",
              "KG",
              "LV",
              "LT",
              "MX",
              "MD",
              "MN",
              "NL",
              "NZ",
              "PE",
              "PL",
              "PT",
              "RO",
              "RU",
              "SA",
              "RS",
              "SG",
              "SK",
              "KR",
              "ES",
              "SE",
              "CH",
              "TJ",
              "TR",
              "TM",
              "UA",
              "AE",
              "GB",
              "UZ"
            ],
            "type": "string",
            "description": "Country AliExpress quotes prices, promotions and shipping for, e.g. US, DE or GB. Default US.",
            "default": "US"
          },
          "language": {
            "title": "Title language",
            "enum": [
              "en_US",
              "ar_MA",
              "de_DE",
              "es_ES",
              "fr_FR",
              "it_IT",
              "ja_JP",
              "nl_NL",
              "pl_PL",
              "pt_BR",
              "th_TH",
              "tr_TR"
            ],
            "type": "string",
            "description": "Language of product titles and card labels, e.g. de_DE for German. Prices and shipping follow the two fields above. Default en_US (English).",
            "default": "en_US"
          },
          "maxConcurrency": {
            "title": "Images at the same time",
            "minimum": 1,
            "maximum": 10,
            "type": "integer",
            "description": "How many images are searched in parallel.",
            "default": 3
          },
          "proxyConfiguration": {
            "title": "Your own proxy (optional)",
            "type": "object",
            "description": "Leave empty: the actor brings its own connections. Fill in only to route requests through your own proxy URLs."
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}