Workflow

Amazon New Product Alert

Get automated alerts when new products matching your criteria appear on Amazon. Built with the Scavio search API.

Overview

This workflow searches Amazon for specific product categories or keywords on a daily basis and alerts you when new products appear that were not in previous results. It is designed for e-commerce teams monitoring competitor launches, procurement teams watching for new suppliers, and product researchers tracking market entries.

Trigger

Cron schedule (daily at 7 AM UTC)

Schedule

Runs daily at 7 AM UTC

Workflow Steps

1

Define search criteria

Load the list of Amazon search queries and any filters such as price range or category.

2

Search Amazon

Call the Scavio API with platform amazon for each query to fetch current product listings.

3

Compare with known products

Check each product ASIN or title against the database of previously seen products.

4

Flag new entries

Mark products that have not been seen before as new and record their details.

5

Send alert

Push a notification with the new product details including title, price, rating, and link.

Python Implementation

Python
import requests
import json
from pathlib import Path

API_KEY = "your_scavio_api_key"

def search_amazon(query: str) -> list[dict]:
    res = requests.post(
        "https://api.scavio.dev/api/v1/search",
        headers={"x-api-key": API_KEY},
        json={"platform": "amazon", "query": query},
        timeout=15,
    )
    res.raise_for_status()
    return res.json().get("organic", [])

def run():
    queries = [
        "wireless earbuds 2026",
        "portable power station camping",
    ]
    seen_path = Path("seen_amazon.json")
    seen = set(json.loads(seen_path.read_text())) if seen_path.exists() else set()
    new_products = []

    for query in queries:
        results = search_amazon(query)
        for p in results:
            asin = p.get("asin") or p.get("link", "")
            if asin and asin not in seen:
                new_products.append({
                    "query": query,
                    "title": p.get("title", ""),
                    "price": p.get("price"),
                    "rating": p.get("rating"),
                    "link": p.get("link", ""),
                })
                seen.add(asin)

    seen_path.write_text(json.dumps(list(seen)))

    if new_products:
        print(f"New products found: {len(new_products)}")
        for np in new_products:
            print(f"  {np['title']} - {np.get('price', 'N/A')}")
    else:
        print("No new products detected")

if __name__ == "__main__":
    run()

JavaScript Implementation

JavaScript
const API_KEY = "your_scavio_api_key";

async function searchAmazon(query) {
  const res = await fetch("https://api.scavio.dev/api/v1/search", {
    method: "POST",
    headers: {
      "x-api-key": API_KEY,
      "content-type": "application/json",
    },
    body: JSON.stringify({ platform: "amazon", query }),
  });
  if (!res.ok) throw new Error(`scavio ${res.status}`);
  const data = await res.json();
  return data.organic ?? [];
}

async function run() {
  const fs = await import("fs/promises");
  const queries = [
    "wireless earbuds 2026",
    "portable power station camping",
  ];

  let seen = new Set();
  try {
    seen = new Set(JSON.parse(await fs.readFile("seen_amazon.json", "utf8")));
  } catch {}

  const newProducts = [];

  for (const query of queries) {
    const results = await searchAmazon(query);
    for (const p of results) {
      const asin = p.asin ?? p.link ?? "";
      if (asin && !seen.has(asin)) {
        newProducts.push({
          query,
          title: p.title ?? "",
          price: p.price,
          rating: p.rating,
          link: p.link ?? "",
        });
        seen.add(asin);
      }
    }
  }

  await fs.writeFile("seen_amazon.json", JSON.stringify([...seen]));

  if (newProducts.length) {
    console.log(`New products found: ${newProducts.length}`);
    for (const np of newProducts) {
      console.log(`  ${np.title} - ${np.price ?? "N/A"}`);
    }
  } else {
    console.log("No new products detected");
  }
}

run();

Platforms Used

Amazon

Product search with prices, ratings, and reviews

Frequently Asked Questions

This workflow searches Amazon for specific product categories or keywords on a daily basis and alerts you when new products appear that were not in previous results. It is designed for e-commerce teams monitoring competitor launches, procurement teams watching for new suppliers, and product researchers tracking market entries.

This workflow uses a cron schedule (daily at 7 am utc). Runs daily at 7 AM UTC.

This workflow uses the following Scavio platforms: amazon. Each platform is called via the same unified API endpoint.

Yes. Scavio's free tier includes 500 credits per month with no credit card required. That is enough to test and validate this workflow before scaling it.

Amazon New Product Alert

Get automated alerts when new products matching your criteria appear on Amazon. Built with the Scavio search API.