π Track flight prices with Apify Google Flights, Google Sheets, and Telegram
β‘ 152 views Β· π Crypto Trading & Stock Market
Description
Quick Overview
This workflow runs daily to search flight prices via the Apify Google Flights actor, logs each check to Google Sheets, and sends a Telegram alert when the lowest price drops below your threshold and is meaningfully lower than the last notified price.
How it works
- Runs every day at 7am and loads the flight search inputs (route, dates, passengers, cabin class, currency, and alert thresholds).
- Calls the Apify Google Flights API to fetch matching flight offers for the configured search.
- Parses the returned offers to find the lowest price, extract key flight details, and build a Google Flights booking link.
- If at least one offer is found and the lowest price is at or below the configured price threshold, it reads the previous notification data from Google Sheets.
- Compares the current lowest price to the last notified price and only proceeds if the price is lower by at least the configured re-alert buffer.
- Generates an encoded Google Flights URL, sends a detailed Telegram message with the best deal and link, and upserts the latest notified price and timestamps into Google Sheets.
Setup
- Create an Apify account, subscribe to the Google Flights actor used by this template, and add an HTTP Header Auth credential in n8n with your Apify API token.
- Add a Google Sheets Service Account credential, share the target spreadsheet with the service account email, and update the spreadsheet ID and sheet name if you donβt use the included βPrice Log / Sheet1β setup.
- Create a Telegram bot, add a Telegram API credential in n8n, and set the target chat ID in the Telegram message step.
- Update the search parameters (origin/destination IATA codes, dates, passengers, cabin class, currency) plus
priceThresholdandreAlertBufferAmountto match your trip and alert preferences. - Ensure your Google Sheet has columns matching the workflowβs upsert fields (for example RouteKey, LastNotifiedPrice, LastNotifiedAt, LastCheckedAt, and status) so the alert-suppression logic works correctly.
π Nodes Used
Google Sheets, HTTP Request, Telegram, Schedule Trigger
π₯ Import
Download workflow.json and import into n8n:
Workflow menu β Import from File