Bitcoin Price Alert to Telegram via CoinPaprika

🚀 Overview

This workflow monitors Bitcoin price movements using the free, keyless CoinPaprika API and sends instant alerts to your Telegram when the price changes by 5% or more in the last 24 hours. It's a practical, no-cost solution for staying on top of crypto volatility without needing any API keys or paid subscriptions.

🔧 Workflow Nodes

Below is a step‑by‑step breakdown of every node in the workflow:

  1. Every 15 minutes (Schedule Trigger — No auth)
    Runs the workflow automatically every 15 minutes using n8n’s built-in scheduler. You can adjust the interval in the node settings (e.g., change to every hour).

  2. Get BTC price (CoinPaprika) (HTTP Request — No auth)
    Fetches the latest Bitcoin ticker data from CoinPaprika’s public endpoint https://api.coinpaprika.com/v1/tickers/btc-bitcoin. No authentication is required. The response includes current price, 24h change, 7d change, and more.

  3. Big 24h move? (IF — No auth)
    Evaluates two conditions using an OR combinator:

    • quotes.USD.percent_change_24h >= 5 (price up 5% or more)
    • quotes.USD.percent_change_24h <= -5 (price down 5% or more)
      If either condition is true, the workflow proceeds to the Telegram node; otherwise it stops.
  4. Send Telegram alert (Telegram — Telegram Bot API auth)
    Sends a formatted message to a specific Telegram chat using a bot. The message includes:

    • Current price (formatted to 2 decimals)
    • 24h change percentage
    • 7d change percentage
      You must replace YOUR_TELEGRAM_CHAT_ID with your actual chat ID and configure a Telegram credential in n8n (Bot Token).

📋 Setup Instructions

  1. CoinPaprika – No signup or API key needed. The public endpoint works out of the box.
  2. Telegram – You need a Telegram bot:
    • Create a bot via @BotFather and get its token.
    • Find your chat ID (or group ID) where alerts should be sent.
    • In n8n, add a new Telegram credential with the bot token, then paste it into the Send Telegram alert node.
    • Replace the placeholder YOUR_TELEGRAM_CHAT_ID with your actual ID.
  3. n8n – Import this workflow, configure the Telegram credential, and activate it.

💡 Use Cases & Variations

  • Track other coins: Change the URL from btc-bitcoin to any CoinPaprika ticker ID (e.g., eth-ethereum, sol-solana).
  • Adjust threshold: Modify the 5% values in the Big 24h move? node to any percentage (e.g., 2% for smaller moves).
  • Add more conditions: Combine with additional metrics like volume spikes or market cap changes.
  • Send to different channels: Replace Telegram with Slack, Email, or a custom webhook by swapping the last node.
  • Log data: Insert a Google Sheets node before the IF node to record price data over time.

This workflow is ideal for crypto traders, hobbyists, or anyone who wants real‑time price alerts without paying for premium services.

5 nodesschedule triggerFinance
Sticky NoteHTTP RequestIFTelegram

Workflow JSON

{
  "name": "Bitcoin price alert to Telegram with CoinPaprika",
  "nodes": [
    {
      "parameters": {
        "content": "## Bitcoin price alert (CoinPaprika, no API key)\n\nPolls the free, keyless CoinPaprika API every 15 minutes and sends a Telegram message when Bitcoin moves 5% or more (up or down) over 24h.\n\n**Setup**\n1. Add your Telegram credential to the *Send Telegram alert* node.\n2. Set your chat id in that node (replace YOUR_TELEGRAM_CHAT_ID).\n\n**Customize**\n- Track another coin: change `btc-bitcoin` in the HTTP node to any CoinPaprika id (e.g. `eth-ethereum`, `sol-solana`).\n- Change the 5% threshold in the *Big 24h move?* node.\n\nNo API key or signup is required. Data: https://api.coinpaprika.com",
        "height": 360,
        "width": 380
      },
      "id": "a1111111-1111-4111-8111-111111111111",
      "name": "About this template",
      "type": "n8n-nodes-base.stickyNote",
      "typeVersion": 1,
      "position": [
        -360,
        40
      ]
    },
    {
      "parameters": {
        "rule": {
          "interval": [
            {
              "field": "minutes",
              "minutesInterval": 15
            }
          ]
        }
      },
      "id": "b2222222-2222-4222-8222-222222222222",
      "name": "Every 15 minutes",
      "type": "n8n-nodes-base.scheduleTrigger",
      "typeVersion": 1.2,
      "position": [
        120,
        240
      ]
    },
    {
      "parameters": {
        "url": "https://api.coinpaprika.com/v1/tickers/btc-bitcoin",
        "options": {}
      },
      "id": "c3333333-3333-4333-8333-333333333333",
      "name": "Get BTC price (CoinPaprika)",
      "type": "n8n-nodes-base.httpRequest",
      "typeVersion": 4.2,
      "position": [
        340,
        240
// ... truncated (copy to see full JSON)

How to Import This Workflow

  1. 1Copy the workflow JSON above using the Copy Workflow JSON button.
  2. 2Open your n8n instance and go to Workflows.
  3. 3Click Import from JSON and paste the copied workflow.

Don't have an n8n instance? Start your free trial at n8nautomation.cloud

Related Templates

AI-Powered Auto-Healing for Failed n8n Workflows

High-Level Summary This workflow automates the entire overdue invoice recovery process using an AI agent. It runs daily on a schedule, reads unpaid invoices from a Google Sheet, and for each invoice uses OpenAI's GPT-4o-mini to analyze the situation and generate a personalized, context-aware recovery email. The email is sent via Gmail, and if the AI determines the account requires escalation (legal or collections), an internal alert is emailed to your legal team. The workflow then updates the invoice sheet with the new escalation level and appends a detailed log row to a separate recovery sheet for full auditability. Slack alerts notify the team if no invoices are found or if the AI encounters an error. Nodes and Their Functions Below is every node in the workflow, listed in execution order, with its type, authentication method, and key configuration. Daily Invoice Check (Schedule Trigger, No auth) — Fires the workflow every 24 hours. Configured with an interval rule of 24 hours. Read Overdue Invoices (Google Sheets, OAuth2) — Reads all rows from the "invoices" tab of your Google Sheet. Requires a Google Sheets OAuth2 credential and the spreadsheet ID. Any Overdue Invoices? (If, No auth) — Checks if the field is not empty. If invoices exist, the workflow proceeds to the AI agent; otherwise, it triggers a Slack alert. Slack: No Invoices Found Alert (Slack, OAuth2) — Sends a message to a specified Slack channel when no overdue invoices are found. Uses Slack OAuth2 credential. AI Recovery Agent (LangChain Agent, uses OpenAI API key via sub-node) — The core AI node. It receives each invoice row and a system prompt instructing it to act as an AR recovery specialist. It outputs a JSON object with escalation level, subject, email body, payment plans, and escalation action. The agent is connected to the GPT-4o-mini Language Model node. GPT-4o-mini Language Model (OpenAI Chat Model, API Key) — Provides the language model for the AI agent. Uses the model. Requires an OpenAI API key credential. Parse & Structure AI Response (Code, No auth) — A JavaScript code node that cleans and parses the AI's raw output into a structured JSON object. It also merges the original invoice data (invoice number, client name, etc.) into the output. Send Recovery Email to Client (Gmail, OAuth2) — Sends the personalized recovery email to the client. Uses the and from the AI response. The recipient email is taken from the original invoice row. Requires a Gmail OAuth2 credential. Needs Escalation? (If, No auth) — Checks if the field from the AI response is not "none". If escalation is needed, the workflow sends an internal alert; otherwise, it skips directly to logging. Send Escalation Alert to Legal Team (Gmail, OAuth2) — Sends an HTML email to a predefined legal team address with details about the high-risk invoice. The email includes client name, invoice number, amount due, days overdue, escalation level, and AI summary. Requires a Gmail OAuth2 credential. Update Invoice Status in Sheet (Google Sheets, OAuth2) — Updates the original invoice row in the "invoices" tab with the new escalation level and AI summary. Uses the row number to match the correct row. Append Row to Recovery Log (Google Sheets, OAuth2) — Appends a new row to the "Recovery sheet" tab with a full log of the action taken, including invoice details, AI subject, summary, escalation level, and Gmail label IDs. Slack: AI Error Alert (Slack, OAuth2) — Triggered if the AI Recovery Agent node encounters an error. Sends a Slack message with the invoice number and a request to check execution logs. Additionally, there are several Sticky Notes (Overview, Section: Trigger, Section: AI Agent, Section: Email, Section: Logging, Section: Security) that serve as documentation and visual guides within the editor. Setup Instructions To use this workflow, you need the following accounts and credentials: Google Sheets — A spreadsheet with two tabs: - : Columns should include Invoice, Client, Email, Amount, Due Date, Days Overdue, Level, Reminders Sent, and optionally row_number. - : Columns for logging (Invoice, Client, Amount, Days Overdue, Level, Email, escalation_level, summary, subject, labelIds). Create a Google Sheets OAuth2 credential in n8n and connect it to both Google Sheets nodes. Gmail — A Gmail account for sending recovery emails and escalation alerts. Create a Gmail OAuth2 credential in n8n. Update the escalation email recipient address () to your legal or collections team's email. OpenAI — An OpenAI API key with access to the model. Create an OpenAI API credential in n8n. Slack — A Slack workspace and a channel for alerts. Create a Slack OAuth2 credential in n8n. Replace with the actual channel ID. After connecting credentials, update the Google Sheet ID in the "Read Overdue Invoices", "Update Invoice Status in Sheet", and "Append Row to Recovery Log" nodes. Also update the Slack channel IDs and the legal team email address. Then activate the workflow. Use Cases and Variations Custom Escalation Rules — Modify the AI prompt or the "Needs Escalation?" condition to use different criteria (e.g., amount threshold, client tier). Multi-language Support — Adjust the AI prompt to generate emails in different languages. Integration with Accounting Software — Replace the Google Sheets nodes with API calls to QuickBooks, Xero, or other invoicing platforms. Different AI Models — Swap the GPT-4o-mini model for another OpenAI model or use a different provider via the LangChain integration. SMS or Other Channels — Add Twilio or other nodes to send reminders via SMS in addition to email. Dashboard & Reporting — Extend the logging sheet to feed into a BI tool for real-time recovery metrics.

19 nodes

Extract,Save Invoice Data from Google Drive and send to Sheets using AI

This workflow automates the extraction of structured invoice data from PDF files placed in a Google Drive folder and saves the results into a Google Sheet. It uses Dumpling AI's document extraction API to parse key fields like order number, line items, totals, and addresses. This is ideal for accounting teams, procurement departments, or anyone handling a high volume of supplier invoices. Node Breakdown Google Drive Trigger – Watch Folder for New Files (Google Drive Trigger) — OAuth2. Polls a specified Google Drive folder every minute and triggers the workflow when a new file is created. Download Invoice File (Google Drive) — OAuth2. Downloads the newly created file from Drive using its file ID (). Convert invoice File to Base64 (Extract From File) — No auth. Converts the downloaded file binary to a base64 string for API submission. Send file to Dumpling AI for Data Extraction (HTTP Request) — Header Auth. Sends a POST request to with a JSON body containing the base64 file and a prompt instructing the AI to extract order number, document date, PO number, shipping/sold-to details, line items, and total amounts. The API key is passed via an HTTP header credential. Parse Dumpling AI JSON Response (Code) — No auth. Executes JavaScript to parse the field from the API response (a JSON string) into a structured object. Split line Items from Invoice (Split Out) — No auth. Splits the array into separate items so each line item becomes a row in the spreadsheet. Save Data to Google Sheet (Google Sheets) — OAuth2. Appends a row to the target sheet with all extracted fields mapped to columns (Order number, Document Date, PO number, Sold to/Ship to names and addresses, Model, Description, Quantity, Unit Price, Total Price). Setup Instructions Google Services: You need a Google account with access to Google Drive and Google Sheets. Create a Google Drive folder for incoming invoices and a Google Sheet (with headers matching the column names above). In n8n, use OAuth2 credentials for both the Google Drive and Google Sheets nodes. Dumpling AI: Sign up for a Dumpling AI account and obtain an API key. In n8n, create an HTTP Header Auth credential with the key name (e.g., ) and value (e.g., ). Workflow Configuration: Update the folder ID in the Google Drive Trigger node, the document ID and sheet name in the Google Sheets node, and ensure the Dumpling AI endpoint and prompt are correct. The prompt can be customized to extract different fields. Use Cases and Variations Accounts Payable Automation: Automatically capture invoice details and post them to accounting software like QuickBooks, Xero, or ERP systems. Multi-format Support: Dumpling AI can handle PDFs, images, and other document types. Modify the prompt to extract data from purchase orders, receipts, or contracts. Error Handling: Add an error workflow or a Slack notification if extraction fails, or route failed invoices to a separate review sheet. Batch Processing: Replace the trigger with a scheduled poll or manual upload event to process existing invoices retroactively.

8 nodes

AI Expense Tracker: Save Chat Messages to Google Sheets via n8n Chat

Overview This workflow turns your natural language expense entries into structured data and saves them to a Google Sheet. When you send a chat message like "car wash; 59.3 usd; 25 jan 2024" via the built-in n8n chat interface, the AI agent (powered by OpenAI) parses the text, extracts cost, description, and date, then triggers a sub-workflow that appends a new row in a Google Sheet. This is perfect for quick, conversational expense logging without manual data entry. Node Breakdown When chat message received (Chat Trigger) — No auth (n8n built-in webhook) — Listens for incoming chat messages from the n8n chat interface. No external credentials needed. AI Agent (@n8n/n8n-nodes-langchain.agent) — Uses the OpenAI Chat Model (API Key auth) and Window Buffer Memory (no auth). It receives the chat input, uses a system message instructing it to use the "saveexpensein_db" tool, and responds with a confirmation message. OpenAI Chat Model (OpenAI) — API Key auth — Connects to OpenAI's GPT model to process the chat message. Configured with default options. Window Buffer Memory (Memory) — No auth — Maintains conversation context across messages (buffer window). Parse msg and save to Sheets (Tool Workflow) — No auth (calls the same workflow as sub-workflow) — This is a tool that the AI agent can call. It passes the chat input to the sub-workflow's input trigger. The tool name is "saveexpensein_db". Workflow Input Trigger (Execute Workflow Trigger) — No auth — Receives the input from the tool call and passes it to the next node. Expense text to JSON parser (Information Extractor) — Uses OpenAI Chat Model1 (API Key auth) — Extracts structured data from the input text. It defines attributes: cost (number), desc (string), date (date). The prompt instructs to convert the expense text to JSON. OpenAI Chat Model1 (OpenAI) — API Key auth — Provides the language model for the information extractor. Save expense into Google Sheets (Google Sheets) — OAuth2 auth — Appends a new row to a Google Sheet. The sheet is specified by document ID and sheet name. Columns are mapped: msg (original input), cost, date, desc. Uses append operation. Sticky Note — No auth — Contains setup instructions for the user. Setup Instructions **Google Sheets: Create a copy of the expense template (File → Make a copy). Note the new spreadsheet ID. OpenAI API Key: Obtain an API key from OpenAI and add it as a credential in n8n for the OpenAI Chat Model nodes. Google Sheets Credential: Set up OAuth2 credential in n8n for Google Sheets with access to the spreadsheet. Sub-workflow reference: Open the "Parse msg and save to Sheets" node and ensure the workflow dropdown points to this same workflow (it should auto-select the current workflow). Activate the workflow to enable the chat trigger. Then send a message like "car wash; 59.3 usd; 25 jan 2024" to the chat interface. You'll receive a confirmation and a new row will appear in your Google Sheet. Use Cases & Variations Personal expense tracking: Log daily expenses on the go via chat. Team expense reports: Modify the Google Sheet to include employee names or categories. Multi-language support: The AI can parse expenses in different languages. Add receipt images: Extend the workflow with an image-to-text node to extract data from photos. Integrate with accounting software: Replace Google Sheets with a database or API call to QuickBooks, Xero, etc.

10 nodes

Ready to automate with n8n?

Get affordable managed n8n hosting with 24/7 support.