This workflow corresponds to n8n.io template #14270 — we link there as the canonical source.
The workflow JSON
Copy or download the full n8n JSON below. Paste it into a new n8n workflow, add your credentials, activate. Full import guide →
{
"id": "46X7wVmqUVmJs0Cb",
"meta": {
"templateCredsSetupCompleted": true
},
"name": "Watchflow Global Health Monitor",
"tags": [
{
"id": "Z3G9MT4HwiRujRJo",
"name": "test",
"createdAt": "2026-03-16T17:44:07.443Z",
"updatedAt": "2026-03-16T17:44:07.443Z"
}
],
"nodes": [
{
"id": "ff05f5cc-da7d-46ed-9224-d55890535ee1",
"name": "Get All Workflows",
"type": "n8n-nodes-base.n8n",
"position": [
624,
704
],
"parameters": {
"filters": {
"tags": "daily",
"activeWorkflows": true
},
"returnAll": false,
"requestOptions": {}
},
"credentials": {
"n8nApi": {
"name": "<your credential>"
}
},
"typeVersion": 1
},
{
"id": "a5dc1b43-4f23-43cc-9287-f146c197a8a2",
"name": "Get Last Execution",
"type": "n8n-nodes-base.n8n",
"position": [
928,
704
],
"parameters": {
"limit": 1,
"filters": {
"workflowId": {
"__rl": true,
"mode": "id",
"value": "={{ $json.id }}"
}
},
"options": {
"activeWorkflows": true
},
"resource": "execution",
"requestOptions": {}
},
"credentials": {
"n8nApi": {
"name": "<your credential>"
}
},
"typeVersion": 1
},
{
"id": "4947f32f-d4a4-4a6b-b70c-3bf2f69fdc61",
"name": "Is Successful?",
"type": "n8n-nodes-base.if",
"position": [
1120,
704
],
"parameters": {
"options": {},
"conditions": {
"options": {
"version": 1,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "success-check",
"operator": {
"name": "equals",
"type": "string",
"operation": "equals"
},
"leftValue": "={{ $json.status }}",
"rightValue": "success"
}
]
}
},
"typeVersion": 2
},
{
"id": "694e0ef1-851f-4994-8fd4-abe2739863c9",
"name": "Watchflow: Ping",
"type": "CUSTOM.watchflow",
"position": [
1424,
656
],
"parameters": {
"key": "={{ $('Get All Workflows').item.json.name.toLowerCase().replace(/\\s+/g, '-') }}",
"data": "={ \"last_execution_id\": \"{{ $json.id }}\", \"finished_at\": \"{{ $json.stoppedAt }}\" }",
"name": "={{ $('Get All Workflows').item.json.name }}"
},
"credentials": {
"watchflowApi": {
"name": "<your credential>"
}
},
"typeVersion": 1
},
{
"id": "9bf58354-8274-4ca7-8d36-09eabc132f32",
"name": "Watchflow: Fail",
"type": "CUSTOM.watchflow",
"position": [
1424,
832
],
"parameters": {
"key": "={{ $('Get All Workflows').item.json.name.toLowerCase().replace(/\\s+/g, '-') }}",
"data": "={ \"last_execution_id\": \"{{ $json.id }}\", \"error_details\": \"{{ $json.data.resultData.error.message }}\"}",
"name": "={{ $('Get All Workflows').item.json.name }}",
"error": "={{ $json.data.resultData.error.message }}",
"operation": "fail"
},
"credentials": {
"watchflowApi": {
"name": "<your credential>"
}
},
"typeVersion": 1
},
{
"id": "7158dd0a-85fc-4646-ba52-6c02a57a7690",
"name": "Every Day",
"type": "n8n-nodes-base.scheduleTrigger",
"position": [
336,
704
],
"parameters": {
"rule": {
"interval": [
{}
]
}
},
"typeVersion": 1.1
},
{
"id": "9d6bad4d-4ac5-475c-86b2-580fccc6008a",
"name": "Sticky Setup",
"type": "n8n-nodes-base.stickyNote",
"position": [
288,
272
],
"parameters": {
"width": 556,
"height": 200,
"content": "### \ud83d\ude80 Setup & Requirements\n\n1. **Watchflow Node**: Install `@watchflow/n8n-nodes-watchflow` via npm.\n2. **Watchflow API Key**: Signup at `watchflow.io` -> Settings -> API Key.\n3. **n8n API Key**: Go to Settings -> n8n API in your instance.\n4. **n8n API Base URL**: Use `/v1/api` suffix (e.g., `https://n8n.domain.com/v1/api`)."
},
"typeVersion": 1
},
{
"id": "fb4d879d-7bfe-4ad6-8490-551aa6ad857a",
"name": "Sticky Trigger",
"type": "n8n-nodes-base.stickyNote",
"position": [
288,
528
],
"parameters": {
"width": 216,
"height": 100,
"content": "### \u23f0 1. Daily Health Audit\nInitiates the global scan for all active workflows."
},
"typeVersion": 1
},
{
"id": "386eef80-904b-4c3d-be73-afc41ba040f7",
"name": "Sticky Fetch",
"type": "n8n-nodes-base.stickyNote",
"position": [
560,
528
],
"parameters": {
"width": 300,
"height": 100,
"content": "### \ud83d\udd0d 2. Dynamic Discovery\nFetches active workflows and inspects their latest status."
},
"typeVersion": 1
},
{
"id": "da49a1e5-b3b5-494f-8e12-9627f3b43845",
"name": "Sticky Eval",
"type": "n8n-nodes-base.stickyNote",
"position": [
944,
528
],
"parameters": {
"width": 248,
"height": 100,
"content": "### \u2696\ufe0f 3. Health Evaluator\nDetermines if the last run was successful."
},
"typeVersion": 1
},
{
"id": "4038b06a-821b-43c3-b7f0-44397ace07e4",
"name": "Sticky Watchflow",
"type": "n8n-nodes-base.stickyNote",
"position": [
1248,
528
],
"parameters": {
"width": 298,
"height": 96,
"content": "### \ud83d\udce1 4. Watchflow Sync\nBroadcasts health status (Ping/Fail) to your Watchflow dashboard."
},
"typeVersion": 1
}
],
"active": true,
"settings": {
"executionOrder": "v1"
},
"versionId": "5c645f4b-fe5e-4124-a711-2f43d14a9da4",
"connections": {
"Every Day": {
"main": [
[
{
"node": "Get All Workflows",
"type": "main",
"index": 0
}
]
]
},
"Is Successful?": {
"main": [
[
{
"node": "Watchflow: Ping",
"type": "main",
"index": 0
}
],
[
{
"node": "Watchflow: Fail",
"type": "main",
"index": 0
}
]
]
},
"Get All Workflows": {
"main": [
[
{
"node": "Get Last Execution",
"type": "main",
"index": 0
}
]
]
},
"Get Last Execution": {
"main": [
[
{
"node": "Is Successful?",
"type": "main",
"index": 0
}
]
]
}
}
}
Credentials you'll need
Each integration node will prompt for credentials when you import. We strip credential IDs before publishing — you'll add your own.
n8nApiwatchflowApi
For the full experience including quality scoring and batch install features for each workflow upgrade to Pro
About this workflow
Ever had a critical n8n workflow fail silently, only to discover it days later? Never again.
Source: https://n8n.io/workflows/14270/ — original creator credit. Request a take-down →
Related workflows
Workflows that share integrations, category, or trigger type with this one. All free to copy and import.
This template creates a nightly backup of all n8n workflows and saves them to a Google Drive folder. Each night, the previous night's backups are moved to an “n8n_old” folder and renamed with the corr
Code Itemlists. Uses stickyNote, moveBinaryData, googleDrive, itemLists. Scheduled trigger; 33 nodes.
This workflow is perfect for n8n users who want to automatically backup all their workflows 💾 to Google Drive with zero manual effort. Perfect for teams managing multiple workflows or anyone who value
Imagine the sinking feeling: hours, weeks, or even months of meticulous work building your n8n workflows, suddenly gone. A server crash, an accidental deletion, data corruption, or an unexpected platf
Datetime Schedule. Uses scheduleTrigger, dateTime, dropbox, stickyNote. Scheduled trigger; 17 nodes.