n8n Error Workflow: Telegram Alert When a Workflow Fails

n8n Error Workflow: Telegram Alert When a Workflow Fails

push.tg

n8n workflows fail quietly: an expired credential, an API change, a timeout at 3 a.m. An error workflow runs whenever another workflow fails, and one HTTP Request node can send the details to Telegram. Checked against the n8n docs for error handling and the HTTP Request node (October 2026).

Step 1: get your endpoint (30 seconds)

Open @trafficRobot in Telegram and press Start. You get an address like k3x9q@push.tg. Your endpoint is the part before the @: https://push.tg/k3x9q. Every example below uses k3x9q, so swap in your own key.

There's no bot to create, no chat_id to look up and no token to keep safe. Add @trafficRobot to a group and the group gets its own address, so the whole team sees the alerts.

Step 2: build the error workflow

  1. New workflow, first node: Error Trigger. Name the workflow Error Handler.
  2. Add an HTTP Request node, configured as below.
  3. Save the workflow.

HTTP Request node settings:

  • Method: POST
  • URL: https://push.tg/k3x9q
  • Send Body: on
  • Body Content Type: Raw
  • Content Type: text/plain
  • Body (as an expression):
❌ n8n: {{ $json.workflow.name }} failed
Node: {{ $json.execution.lastNodeExecuted }}
Error: {{ $json.execution.error.message }}
{{ $json.execution.url }}

Step 3: attach it to your workflows

In each workflow you care about: Options → Settings → Error workflow → pick Error Handler → Save. One error workflow can serve all your workflows.

Note: if the failure happens in the trigger node, n8n sends different data (trigger.error instead of execution), and execution.url is only there when executions are saved. Some lines may come out empty, but you still get the alert.

Plain notifications from any workflow

The same HTTP Request node works anywhere, not just for errors. Put it at the end of a workflow to get "new lead", "invoice paid" or "scrape finished" in Telegram. To force a failure on your own condition, use the Stop and Error node and the error workflow takes over.

Check that the message really arrived. push.tg answers HTTP 200 even when the key is wrong. The body says {"error":"no such user"} instead of {"ok":...}. So a green "test sent" in your tool doesn't prove delivery. Look at Telegram.

More copy-paste guides

Get your endpoint: t.me/trafficRobot?start=tg-n8n. It takes 30 seconds, it has no ads, and it has been running since 2016.

Report Page