Quick overview
This workflow runs every 6 hours to monitor competitor product pages stored in Airtable, scrape current price and stock with Firecrawl, extract structured pricing with Anthropic, send priority-based alerts to Slack, and log changes to Google Sheets while syncing the latest values back to Airtable.
How it works
- A Schedule trigger fires every 6 hours and fetches your full competitor list from Airtable.
- Each record is processed one at a time through a SplitInBatches loop.
- Firecrawl scrapes the live product page and returns the content as Markdown.
- The Anthropic API extracts structured pricing data (price, currency, stock status) using tool use. A built-in deduplication check skips items where nothing has changed since the last run.
- Each item is assigned an alert priority — Critical, High, Medium, Info, or Skip — based on the price delta and stock change thresholds.
- Critical and High events trigger an AI-generated countermeasure strategy followed by an immediate Slack alert. Medium events get a lighter Slack notification. Info items pass through silently. Skipped items return directly to the loop.
- All actionable events update the Airtable record with the latest price and stock status, and append a timestamped row to Google Sheets for historical trend tracking.
Setup
- Connect credentials for Airtable, Firecrawl, Anthropic, Slack, and Google Sheets.
- Replace the Airtable Base ID and Table ID with your own and ensure records include fields for Competitor Name, Product Name, Product URL, Last Price, and In Stock.
- Set the Slack channel ID in both Slack message steps.
- Set the Google Sheets document ID and sheet tab name used for the historical append log.
Requirements
- Firecrawl API account (for product page scraping)
- Anthropic API key with access to claude-3-5-sonnet-20241022
- Airtable base with the required competitor table and fields
- Slack workspace with a channel configured for alerts
- Google Sheets document with a pre-created tab for historical logging
Customization
- Adjust the schedule interval in the Every 6 Hours node to scan more or less frequently.
- Modify the priority thresholds in Extract Price & Build Delta — currently Critical is ≤ -15%, High is ≤ -5%.
- Update the Slack message templates in both Slack nodes to match your team's alert format.
- Extend the Google Sheets columns to capture additional fields such as currency or stock count.
Additional info
- The deduplication logic compares both price and stock status against the previous run. If neither has changed, the item is skipped entirely and no write operations occur.
- If Firecrawl fails to return content or the Anthropic API returns no valid price, the item is marked _skip and passed back to the loop without crashing the workflow.
- The workflow does not include an error trigger node in this version. For production use, consider adding one to catch and log node-level failures.