{
  "openapi": "3.0.1",
  "info": {
    "title": "Amazon Product Scraper Europe: Prices, Sellers, EAN Match",
    "description": "Scrape Amazon in 10 European storefronts (DE, FR, IT, ES, NL, BE, IE, PL, SE, UK): price, list price, coupons, deals, rating, reviews, search position, buy box seller, stock and other offers. Search by brand or keyword, match EAN barcodes to ASINs, or pass ASINs. No login.",
    "version": "0.1",
    "x-build-id": "go4neX9EFY2qIXD64"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/studio-amba~amazon-eu-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-studio-amba-amazon-eu-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/studio-amba~amazon-eu-scraper/runs": {
      "post": {
        "operationId": "runs-sync-studio-amba-amazon-eu-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/studio-amba~amazon-eu-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-studio-amba-amazon-eu-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": {
          "country": {
            "title": "Country",
            "enum": [
              "DE",
              "FR",
              "IT",
              "ES",
              "NL",
              "BE",
              "IE",
              "PL",
              "SE",
              "UK"
            ],
            "type": "string",
            "description": "Amazon storefront to scrape. Prices come in that storefront's currency (EUR, GBP, PLN or SEK). Product URLs are always scraped on their own storefront, whatever this is set to.",
            "default": "DE"
          },
          "searchQuery": {
            "title": "Search query",
            "type": "string",
            "description": "Keyword as you would type it in the Amazon search box, e.g. 'sebamed shampoo' or 'sonnencreme'. A barcode (8 to 14 digits) here is treated as an EAN lookup. Leave empty together with Brand to get a default brand. Ignored when EANs, ASINs or start URLs are given."
          },
          "brand": {
            "title": "Brand",
            "type": "string",
            "description": "Keep only products of this brand (matched on the brand line and the title). Searched together with the search query, so 'brand: sebamed' plus 'query: shampoo' gives sebamed shampoos. Leave empty to keep every result."
          },
          "eans": {
            "title": "EAN barcodes",
            "maxItems": 1000,
            "type": "array",
            "description": "EAN / GTIN barcodes to find on Amazon, up to 1,000. Each barcode is searched on the chosen storefront and the first organic result is returned with the barcode in the 'ean' field. Use this to match products from other shops to Amazon ASINs. One Amazon request per barcode.",
            "items": {
              "type": "string"
            }
          },
          "asins": {
            "title": "ASINs",
            "maxItems": 1000,
            "type": "array",
            "description": "Amazon ASINs (10 characters, e.g. B0H4GRBR2B) to scrape on the chosen storefront, up to 1,000. Each one loads the product page, so seller, stock and other offers are always included.",
            "items": {
              "type": "string"
            }
          },
          "startUrls": {
            "title": "Product URLs",
            "maxItems": 1000,
            "type": "array",
            "description": "Amazon product page URLs (with /dp/ASIN) from any of the 10 storefronts, up to 1,000. Each URL is scraped on its own storefront.",
            "items": {
              "type": "object",
              "required": [
                "url"
              ],
              "properties": {
                "url": {
                  "type": "string",
                  "title": "URL of a web page",
                  "format": "uri"
                }
              }
            }
          },
          "maxResults": {
            "title": "Max results",
            "minimum": 1,
            "maximum": 1000,
            "type": "integer",
            "description": "Maximum number of products to return. Amazon shows at most 7 search pages (about 330 to 420 products) for one search; for more, run several narrower searches. Hard cap 1,000.",
            "default": 50
          },
          "includeDetails": {
            "title": "Include product pages (seller, stock, offers)",
            "type": "boolean",
            "description": "Off by default. When on, every search or EAN result also loads its product page to add brand, manufacturer, availability, in-stock flag, buy box seller, fulfilment, number of other offers and category path. Costs one extra Amazon request per product and makes runs several times slower.",
            "default": false
          },
          "includeSponsored": {
            "title": "Include sponsored results",
            "type": "boolean",
            "description": "Keep sponsored (ad) results in search mode. They are flagged with 'sponsored: true' and have no search position.",
            "default": true
          },
          "brightDataApiKey": {
            "title": "Bright Data API key",
            "type": "string",
            "description": "Optional. Your own Bright Data Web Unlocker API key. Leave empty to use ours (included in the price)."
          },
          "brightDataZone": {
            "title": "Bright Data zone",
            "type": "string",
            "description": "Optional. Name of the Web Unlocker zone on your own Bright Data account. Only used with your own API key."
          },
          "proxyConfiguration": {
            "title": "Proxy configuration",
            "type": "object",
            "description": "Fallback only, used when no Bright Data key is available. Amazon usually blocks plain proxy traffic."
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}