{
  "actorOutputSchemaVersion": 1,
  "description": "Amazon product records from search, category, and seller listings with price, rating, badges, and delivery details.",
  "properties": {
    "answeredQuestions": {
      "description": "Answered-question count, only when the detail page renders it",
      "template": "{{answeredQuestions}}",
      "title": "Answered Questions",
      "type": "string"
    },
    "asin": {
      "description": "Amazon Standard Identification Number",
      "template": "{{asin}}",
      "title": "ASIN",
      "type": "string"
    },
    "badge": {
      "description": "Merchandising badge shown on the card (e.g. BestSeller, AmazonsChoice)",
      "template": "{{badge}}",
      "title": "Badge",
      "type": "string"
    },
    "bestsellerRanks": {
      "description": "Bestseller rankings in different categories (JSON array)",
      "template": "{{bestsellerRanks}}",
      "title": "Bestseller Ranks",
      "type": "string"
    },
    "boughtInPastMonth": {
      "description": "Number of units bought in the past month, parsed from the card's compact-count hint",
      "template": "{{boughtInPastMonth}}",
      "title": "Bought In Past Month",
      "type": "string"
    },
    "boughtInPastMonthText": {
      "description": "Raw \"X+ bought in past month\" card text",
      "template": "{{boughtInPastMonthText}}",
      "title": "Bought In Past Month (raw text)",
      "type": "string"
    },
    "brand": {
      "description": "Product brand name",
      "template": "{{brand}}",
      "title": "Brand",
      "type": "string"
    },
    "breadCrumbs": {
      "description": "Product category breadcrumb path",
      "template": "{{breadCrumbs}}",
      "title": "Categories",
      "type": "string"
    },
    "categoryPage": {
      "description": "Page number in search results",
      "template": "{{categoryPage}}",
      "title": "Category Page",
      "type": "string"
    },
    "categoryPosition": {
      "description": "Position in search results",
      "template": "{{categoryPosition}}",
      "title": "Position",
      "type": "string"
    },
    "categoryUrl": {
      "description": "Source category/search URL",
      "template": "{{categoryUrl}}",
      "title": "Category URL",
      "type": "string"
    },
    "coupon": {
      "description": "Coupon text shown on the card, if any",
      "template": "{{coupon}}",
      "title": "Coupon",
      "type": "string"
    },
    "currency": {
      "description": "ISO currency code resolved from the product price, when available",
      "template": "{{currency}}",
      "title": "Currency",
      "type": "string"
    },
    "dealText": {
      "description": "Raw deal/percent-off text shown on the listing card",
      "template": "{{dealText}}",
      "title": "Deal Text",
      "type": "string"
    },
    "delivery": {
      "description": "Delivery information and estimated date",
      "template": "{{delivery}}",
      "title": "Delivery",
      "type": "string"
    },
    "deliveryEstimate": {
      "description": "Estimated delivery text shown on the card",
      "template": "{{deliveryEstimate}}",
      "title": "Delivery Estimate",
      "type": "string"
    },
    "description": {
      "description": "Full product description",
      "template": "{{description}}",
      "title": "Description",
      "type": "string"
    },
    "discountPercent": {
      "description": "Discount percentage, calculated only from a genuine current price and strike-through list price",
      "template": "{{discountPercent}}",
      "title": "Discount Percent",
      "type": "string"
    },
    "facets": {
      "description": "Refinement facets available on this results page (JSON array)",
      "template": "{{facets}}",
      "title": "Facets",
      "type": "string"
    },
    "fastestDelivery": {
      "description": "Fastest delivery estimate, only when the detail page renders it",
      "template": "{{fastestDelivery}}",
      "title": "Fastest Delivery",
      "type": "string"
    },
    "features": {
      "description": "List of product features and bullet points (JSON array)",
      "template": "{{features}}",
      "title": "Features",
      "type": "string"
    },
    "imageLarge": {
      "description": "Largest product image URL available (upscaled Amazon media URL)",
      "template": "{{imageLarge}}",
      "title": "Large Image",
      "type": "string"
    },
    "images": {
      "description": "All deduplicated image URLs for the product (JSON array)",
      "template": "{{images}}",
      "title": "Images",
      "type": "string"
    },
    "inStock": {
      "description": "Whether the product is currently in stock",
      "template": "{{inStock}}",
      "title": "In Stock",
      "type": "string"
    },
    "inStockText": {
      "description": "Detailed stock availability text",
      "template": "{{inStockText}}",
      "title": "Stock Status",
      "type": "string"
    },
    "isPrime": {
      "description": "Same true/false value as `prime`",
      "template": "{{isPrime}}",
      "title": "Is Prime",
      "type": "string"
    },
    "isSponsored": {
      "description": "Same true/false value as `sponsored`",
      "template": "{{isSponsored}}",
      "title": "Is Sponsored",
      "type": "string"
    },
    "listPrice": {
      "description": "Genuine list/strike-through price only; never Amazon's \"Typical price\" reference",
      "template": "{{listPrice}}",
      "title": "List Price",
      "type": "string"
    },
    "locationText": {
      "description": "Delivery destination the product detail page rendered for",
      "template": "{{locationText}}",
      "title": "Delivery Location",
      "type": "string"
    },
    "lowestOfferPrice": {
      "description": "Lowest \"More Buying Choices\" offer price (JSON object with value and currency)",
      "template": "{{lowestOfferPrice}}",
      "title": "Lowest Offer Price",
      "type": "string"
    },
    "marketplace": {
      "description": "Bare Amazon marketplace domain this record came from (e.g. amazon.com)",
      "template": "{{marketplace}}",
      "title": "Marketplace",
      "type": "string"
    },
    "moreOptionsText": {
      "description": "Raw \"More options\" hint shown on the listing card",
      "template": "{{moreOptionsText}}",
      "title": "More Options Text",
      "type": "string"
    },
    "offerCount": {
      "description": "Number of \"More Buying Choices\" offers shown on the card",
      "template": "{{offerCount}}",
      "title": "Offer Count",
      "type": "string"
    },
    "organicPosition": {
      "description": "Position among organic results (sponsored rows are excluded from this count)",
      "template": "{{organicPosition}}",
      "title": "Organic Position",
      "type": "string"
    },
    "position": {
      "description": "Position metadata (JSON object with page, positionOnPage, globalPosition, uuid)",
      "template": "{{position}}",
      "title": "Position",
      "type": "string"
    },
    "price": {
      "description": "Current price (JSON object with value, currency, display)",
      "template": "{{price}}",
      "title": "Price",
      "type": "string"
    },
    "priceVariants": {
      "description": "Per-variant price map, only when the detail page exposes one",
      "template": "{{priceVariants}}",
      "title": "Price Variants",
      "type": "string"
    },
    "prime": {
      "description": "Whether the card shows an Amazon Prime badge (evidence-only)",
      "template": "{{prime}}",
      "title": "Prime",
      "type": "string"
    },
    "relatedSearches": {
      "description": "Related search suggestions shown on this results page (JSON array of text/url pairs)",
      "template": "{{relatedSearches}}",
      "title": "Related Searches",
      "type": "string"
    },
    "resultType": {
      "description": "Result classification: ORGANIC, SPONSORED, EDITORIAL, or OTHER",
      "template": "{{resultType}}",
      "title": "Result Type",
      "type": "string"
    },
    "resultsFrom": {
      "description": "Starting result index reported by the results-info bar",
      "template": "{{resultsFrom}}",
      "title": "Results From",
      "type": "string"
    },
    "resultsTo": {
      "description": "Ending result index reported by the results-info bar",
      "template": "{{resultsTo}}",
      "title": "Results To",
      "type": "string"
    },
    "resultsTotal": {
      "description": "Total number of results reported by the results-info bar",
      "template": "{{resultsTotal}}",
      "title": "Results Total",
      "type": "string"
    },
    "returnPolicy": {
      "description": "Return policy text, from the product detail page",
      "template": "{{returnPolicy}}",
      "title": "Return Policy",
      "type": "string"
    },
    "reviewsCount": {
      "description": "Total number of customer reviews",
      "template": "{{reviewsCount}}",
      "title": "Reviews Count",
      "type": "string"
    },
    "reviewsLink": {
      "description": "Absolute link to the full reviews page, when available",
      "template": "{{reviewsLink}}",
      "title": "Reviews Link",
      "type": "string"
    },
    "scrapedAt": {
      "description": "ISO timestamp when the data was scraped",
      "template": "{{scrapedAt}}",
      "title": "Scraped At",
      "type": "string"
    },
    "searchQuery": {
      "description": "Keyword, node ID, or seller ID that produced this listing record",
      "template": "{{searchQuery}}",
      "title": "Search Query",
      "type": "string"
    },
    "seller": {
      "description": "Seller identity {name, id, url}; omitted when no real seller ID can be resolved",
      "template": "{{seller}}",
      "title": "Seller",
      "type": "string"
    },
    "shippingPrice": {
      "description": "Shipping cost when explicitly shown (0 means free shipping)",
      "template": "{{shippingPrice}}",
      "title": "Shipping Price",
      "type": "string"
    },
    "shipsTo": {
      "description": "Ships-to location text shown on the card, if any",
      "template": "{{shipsTo}}",
      "title": "Ships To",
      "type": "string"
    },
    "soldByText": {
      "description": "Raw \"Sold by\" line shown on the listing card",
      "template": "{{soldByText}}",
      "title": "Sold By Text",
      "type": "string"
    },
    "sourceLayout": {
      "description": "Which page layout this card was extracted from: SEARCH_GRID, MERCHANDISING_LANDING, or MIXED",
      "template": "{{sourceLayout}}",
      "title": "Source Layout",
      "type": "string"
    },
    "sourceMode": {
      "description": "Input mode that produced this record: keywords, categoryUrls, categoryNodeIds, sellerIds, asins, or productUrls",
      "template": "{{sourceMode}}",
      "title": "Source Mode",
      "type": "string"
    },
    "specifications": {
      "description": "Deduplicated product specifications (JSON object), from the overview and technical-detail tables",
      "template": "{{specifications}}",
      "title": "Specifications",
      "type": "string"
    },
    "sponsored": {
      "description": "Whether this result is a sponsored/ad placement (evidence-only)",
      "template": "{{sponsored}}",
      "title": "Sponsored",
      "type": "string"
    },
    "stars": {
      "description": "Average star rating from 1 to 5",
      "template": "{{stars}}",
      "title": "Rating",
      "type": "string"
    },
    "starsBreakdown": {
      "description": "Rating breakdown by star count as a share per star, 0.0-1.0 (JSON object), from the product detail page when rendered",
      "template": "{{starsBreakdown}}",
      "title": "Rating Breakdown",
      "type": "string"
    },
    "stockText": {
      "description": "Raw stock hint shown on the listing card",
      "template": "{{stockText}}",
      "title": "Stock Text",
      "type": "string"
    },
    "support": {
      "description": "Support/warranty information, only when the detail page renders it",
      "template": "{{support}}",
      "title": "Support",
      "type": "string"
    },
    "sustainabilityFeatures": {
      "description": "Sustainability/Climate Pledge Friendly badge labels (JSON array)",
      "template": "{{sustainabilityFeatures}}",
      "title": "Sustainability Features",
      "type": "string"
    },
    "thumbnailImage": {
      "description": "Main product image URL",
      "template": "{{thumbnailImage}}",
      "title": "Image",
      "type": "string"
    },
    "title": {
      "description": "Product title",
      "template": "{{title}}",
      "title": "Product Title",
      "type": "string"
    },
    "typicalPrice": {
      "description": "Amazon's separate \"Typical price\" reference price (never used as listPrice)",
      "template": "{{typicalPrice}}",
      "title": "Typical Price",
      "type": "string"
    },
    "unitPrice": {
      "description": "Per-unit price text shown on the listing card",
      "template": "{{unitPrice}}",
      "title": "Unit Price",
      "type": "string"
    },
    "url": {
      "description": "Direct Amazon URL for the product page",
      "template": "{{url}}",
      "title": "Product URL",
      "type": "string"
    },
    "variantAsins": {
      "description": "List of variant product ASINs (JSON array)",
      "template": "{{variantAsins}}",
      "title": "Variant ASINs",
      "type": "string"
    },
    "variantAttributes": {
      "description": "Visible variant dimensions (JSON array of {name, values}), when a twister widget exists",
      "template": "{{variantAttributes}}",
      "title": "Variant Attributes",
      "type": "string"
    },
    "variantsCount": {
      "description": "Number of additional color/style variants shown via the card's \"+N\" hint",
      "template": "{{variantsCount}}",
      "title": "Variants Count",
      "type": "string"
    }
  },
  "required": [
    "url",
    "asin",
    "scrapedAt"
  ],
  "title": "Amazon Search, Category & Seller Listings Extractor Output",
  "type": "object"
}
