{
  "openapi": "3.0.1",
  "info": {
    "title": "Amazon Tracker",
    "description": "Amazon Tracker collects product data from Amazon based on any keyword or category and returns structured results in JSON or CSV. It works across multiple Amazon marketplaces and can be connected directly to n8n, Make, Zapier, or any workflow tool.",
    "version": "0.2",
    "x-build-id": "SiVpwERabSXVVvvBc"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/vivid.travelogue~amazon-tracker/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-vivid.travelogue-amazon-tracker",
        "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/vivid.travelogue~amazon-tracker/runs": {
      "post": {
        "operationId": "runs-sync-vivid.travelogue-amazon-tracker",
        "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/vivid.travelogue~amazon-tracker/run-sync": {
      "post": {
        "operationId": "run-sync-vivid.travelogue-amazon-tracker",
        "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": [
          "marketplace",
          "categoryOrKeyword",
          "maxProducts"
        ],
        "properties": {
          "marketplace": {
            "title": "Marketplace",
            "enum": [
              "US",
              "UK",
              "IN",
              "AU",
              "CA",
              "DE",
              "FR",
              "IT",
              "ES",
              "JP",
              "BR",
              "MX",
              "SG",
              "NL",
              "AE",
              "SA",
              "SE",
              "PL",
              "TR",
              "EG"
            ],
            "type": "string",
            "description": "Country code used to build Amazon base URL (e.g., US, UK, DE).",
            "default": "US"
          },
          "useApifyProxy": {
            "title": "Use Apify Proxy",
            "type": "boolean",
            "description": "If true, use Apify proxy configuration (recommended for Amazon).",
            "default": false
          },
          "apifyProxyCountry": {
            "title": "Apify Proxy Country",
            "enum": [
              "US",
              "UK",
              "IN",
              "AU",
              "CA",
              "DE",
              "FR",
              "IT",
              "ES",
              "JP",
              "BR",
              "MX",
              "SG",
              "NL",
              "AE",
              "SA",
              "SE",
              "PL",
              "TR",
              "EG"
            ],
            "type": "string",
            "description": "Preferred proxy country code when using Apify proxy.",
            "default": "US"
          },
          "categoryOrKeyword": {
            "title": "Category or Keyword",
            "type": "string",
            "description": "Search keywords to build Amazon search URL (e.g. \"wireless earbuds\")."
          },
          "startUrls": {
            "title": "Start URLs",
            "type": "array",
            "description": "Alternative to `categoryOrKeyword` — list of full search page URLs to crawl.",
            "items": {
              "type": "string",
              "enum": [
                "https://www.amazon.com/s?k=wireless+earbuds&page=1",
                "https://www.amazon.co.uk/s?k=wireless+earbuds&page=1"
              ]
            }
          },
          "productUrl": {
            "title": "Product URL (marketplace inference)",
            "type": "string",
            "description": "Optional product URL used to infer which Amazon marketplace to use."
          },
          "competitorAsins": {
            "title": "Competitor ASINs",
            "type": "array",
            "description": "List of ASINs to mark as competitor products in the output.",
            "items": {
              "type": "string",
              "enum": [
                "B00EXAMPLE"
              ]
            },
            "default": []
          },
          "maxProducts": {
            "title": "Max Products",
            "minimum": 1,
            "type": "integer",
            "description": "Maximum number of product items to collect.",
            "default": 20
          },
          "maxRequestsPerCrawl": {
            "title": "Max Requests Per Crawl",
            "minimum": 0,
            "type": "integer",
            "description": "Maximum number of requests (pages) the crawler will schedule (0 = unlimited).",
            "default": 10
          },
          "maxConcurrency": {
            "title": "Max Concurrency",
            "minimum": 1,
            "type": "integer",
            "description": "Maximum number of concurrent requests the crawler will execute. Set to 1 for single-threaded execution.",
            "default": 1
          },
          "minConcurrency": {
            "title": "Min Concurrency",
            "minimum": 1,
            "type": "integer",
            "description": "Minimum number of concurrent requests the crawler will maintain.",
            "default": 1
          },
          "waitBetweenRequestsMs": {
            "title": "Wait Between Requests (ms)",
            "minimum": 0,
            "type": "integer",
            "description": "Wait between each requests.",
            "default": 500
          },
          "waitForPageLoadMs": {
            "title": "Wait For Page Load (ms)",
            "minimum": 0,
            "type": "integer",
            "description": "Additional wait time to allow pages to render (used for optional browser use or slow pages).",
            "default": 3000
          },
          "requestTimeoutMs": {
            "title": "Request Timeout (ms)",
            "type": "integer",
            "description": "Timeout for the requests.",
            "default": 15000
          },
          "retries": {
            "title": "Retries",
            "minimum": 0,
            "type": "integer",
            "description": "Retries on request error.",
            "default": 3
          },
          "ratingsAbove": {
            "title": "Minimum Rating",
            "minimum": 0,
            "maximum": 5,
            "type": "number",
            "description": "Filter products with rating greater or equal to this value.",
            "default": 2
          },
          "maxNumberOfPagesToCrawl": {
            "title": "Number of Pages to Crawl",
            "minimum": 1,
            "type": "integer",
            "description": "Max pages ti crawl before max products reached.",
            "default": 5
          },
          "fetchTopReview": {
            "title": "Fetch Top Review",
            "type": "boolean",
            "description": "If true, attempt to fetch the top review for each product (may be blocked by anti-bot measures).",
            "default": true
          },
          "onlyReviewedProducts": {
            "title": "Only Reviewed Products",
            "type": "boolean",
            "description": "If true, only include products that have at least one review.",
            "default": false
          },
          "outputFormat": {
            "title": "Output Format",
            "enum": [
              "json",
              "csv",
              "both"
            ],
            "type": "string",
            "description": "Which outputs to write: JSON, CSV, or both.",
            "default": "json"
          },
          "outputFileName": {
            "title": "Output File Name / Key",
            "type": "string",
            "description": "Base name for JSON key and CSV file. JSON is written to key name, CSV to `<name>.csv`. Default: `OUTPUT`.",
            "default": "OUTPUT"
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}