{
  "openapi": "3.0.1",
  "info": {
    "title": "Amazon ASIN Scraper & Seller Listing",
    "description": "Amazon ASIN Scraper quickly extracts product data using ASINs. Get titles, prices, ratings, reviews, variations, images, features, seller info, and stock details. Ideal for research, monitoring, and product analytics with clean, structured JSON output.",
    "version": "0.1",
    "x-build-id": "0bRHVAlU3QDlFyzgA"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/simpleapi~amazon-asin-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-simpleapi-amazon-asin-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/simpleapi~amazon-asin-scraper/runs": {
      "post": {
        "operationId": "runs-sync-simpleapi-amazon-asin-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/simpleapi~amazon-asin-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-simpleapi-amazon-asin-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",
        "required": [
          "asins"
        ],
        "properties": {
          "asins": {
            "title": "🎯 ASINs or product URLs",
            "type": "array",
            "description": "One ASIN per line, e.g. `B07GBZ4Q68`. Full `/dp/` and `/gp/product/` URLs are also accepted and reduced to their ASIN automatically.\n\nEvery ASIN costs one product request plus one offers request.",
            "items": {
              "type": "string"
            }
          },
          "amazonDomain": {
            "title": "🏬 Storefront domain",
            "type": "string",
            "description": "The marketplace to read the listing and its offers from. Examples: `amazon.com`, `amazon.co.uk`, `amazon.de`, `amazon.ca`, `amazon.com.au`.\n\nOffers are fetched from the same storefront as the product page, so seller sets stay consistent.",
            "default": "amazon.com"
          },
          "maxOffersPerAsin": {
            "title": "🧾 Offers to capture per ASIN",
            "minimum": 0,
            "maximum": 300,
            "type": "integer",
            "description": "Upper bound on offers returned per listing. The pinned buy-box offer is always the first entry.\n\nSet `0` to skip the offers request entirely and run as a plain product scraper (one request per ASIN instead of two). Default `30`.",
            "default": 30
          },
          "offerCondition": {
            "title": "📦 Offer condition filter",
            "enum": [
              "all",
              "new",
              "used"
            ],
            "type": "string",
            "description": "Restrict `offers[]` by item condition, read from each offer's heading.\n\n`New only` is the usual choice for hijacker monitoring; used/renewed merchants are a separate problem.",
            "default": "all"
          },
          "authorizedSellers": {
            "title": "✅ Authorized seller IDs or names",
            "type": "array",
            "description": "Merchant IDs (e.g. `A1J8OBDYLWZ573`, the `seller=` value in an Amazon seller link) and/or exact storefront names. Matching is case-insensitive and either field can match.\n\nLeave empty and `hasUnauthorizedSeller` is returned as `null` — with no allow-list there is nothing to compare against, and reporting `false` would be a false all-clear.",
            "items": {
              "type": "string"
            }
          },
          "treatAmazonAsAuthorized": {
            "title": "🅰️ Count Amazon itself as authorized",
            "type": "boolean",
            "description": "When the allow-list is in use, decides whether offers sold directly by Amazon are exempt from the unauthorized check.\n\nLeave on for retail-vendor listings; turn off if Amazon Retail is not supposed to be on your listing. Only has an effect when `authorizedSellers` is non-empty.",
            "default": true
          },
          "language": {
            "title": "🔤 Page language",
            "enum": [
              "",
              "en",
              "en_US",
              "en_GB",
              "de",
              "fr",
              "es",
              "it",
              "nl",
              "pl",
              "pt",
              "pt_BR",
              "sv",
              "tr",
              "cs",
              "da",
              "ja",
              "zh_CN",
              "zh_TW",
              "hi"
            ],
            "type": "string",
            "description": "Sent as `?language=…` and in `Accept-Language`. Leave on auto to take the storefront's own default.",
            "default": "en"
          },
          "zipCode": {
            "title": "📍 Deliver-to postcode",
            "type": "string",
            "description": "Optional destination postcode (`10001`, `SW1A 1AA`). The delivery cookie is primed before scraping so offer prices and delivery promises reflect that address.\n\nLeave blank to use whatever location the exit IP resolves to.",
            "default": ""
          },
          "proxyCountry": {
            "title": "🌐 Exit country",
            "enum": [
              "AUTO_SELECT_PROXY_COUNTRY",
              "US",
              "GB",
              "DE",
              "FR",
              "ES",
              "IT",
              "CA",
              "AU",
              "JP",
              "IN",
              "BR",
              "MX",
              "NL",
              "PL",
              "TR",
              "SE",
              "AE"
            ],
            "type": "string",
            "description": "Residential exit location for every request.\n\nMatch this to your storefront — a US exit against a non-US Amazon domain is served a robot-check shell rather than the real page.",
            "default": "AUTO_SELECT_PROXY_COUNTRY"
          },
          "includeRichMedia": {
            "title": "🖼️ Include A+ content, brand story & image galleries",
            "type": "boolean",
            "description": "A+ modules, brand-story cards and the full image gallery dominate the size of each record. A seller-monitoring run rarely reads them.\n\nTurn off for a much smaller dataset; core product fields, ranks, ratings and all offer fields are unaffected. Default on.",
            "default": true
          },
          "useCaptchaSolver": {
            "title": "🛡️ Hardened retry mode",
            "type": "boolean",
            "description": "**No third-party CAPTCHA solver is used or billed for** — the original toggle of this name did nothing at all.\n\nOn: raises the retry ceiling from 3 to 6 and forces a fresh proxy session on every attempt. Slower, and worth it only on storefronts that block hard. Default off.",
            "default": false
          },
          "proxyConfiguration": {
            "title": "🔧 Custom proxy configuration",
            "type": "object",
            "description": "Full override: Apify proxy groups (Residential recommended for Amazon) or your own proxy URLs. Most runs should leave this untouched."
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}