{
  "name": "Back up databases and files to Box with Mailgun email notifications",
  "nodes": [
    {
      "id": "4554d1e3-9e79-4b68-a7ff-b25bdbe5c7cc",
      "name": "Backup Webhook Trigger",
      "type": "n8n-nodes-base.webhook",
      "position": [
        -768,
        208
      ]
    },
    {
      "id": "aeedcfc7-3703-4ff2-84eb-5e67640a918d",
      "name": "Set Default Backup Config",
      "type": "n8n-nodes-base.set",
      "position": [
        -560,
        208
      ]
    },
    {
      "id": "df9066be-644c-41d9-b783-7d312012b544",
      "name": "Create Backup Folder",
      "type": "n8n-nodes-base.box",
      "position": [
        -352,
        208
      ]
    },
    {
      "id": "832370ef-c438-4d11-aee4-c8de0bca9e1e",
      "name": "Prepare Backup Items",
      "type": "n8n-nodes-base.code",
      "position": [
        -112,
        208
      ]
    },
    {
      "id": "4d0d0800-82fc-43a4-af24-871c0087851e",
      "name": "Split Backups",
      "type": "n8n-nodes-base.splitInBatches",
      "position": [
        128,
        208
      ]
    },
    {
      "id": "cd7e3bce-aa42-491b-b106-e0c58c9ffbae",
      "name": "Export Backup Data",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        336,
        208
      ]
    },
    {
      "id": "f6471164-eb66-45d8-91c2-5bca91f6687c",
      "name": "Was Export Successful?",
      "type": "n8n-nodes-base.if",
      "position": [
        560,
        256
      ]
    },
    {
      "id": "1d6d8b16-6b7a-44cf-a474-26b63ff737b7",
      "name": "Compress Export",
      "type": "n8n-nodes-base.code",
      "position": [
        784,
        96
      ]
    },
    {
      "id": "3168f8bd-b072-4633-9065-63800b0052d6",
      "name": "Prepare File for Box",
      "type": "n8n-nodes-base.moveBinaryData",
      "position": [
        976,
        96
      ]
    },
    {
      "id": "c811aed6-a74b-455d-bcc5-9dd468e047eb",
      "name": "Upload to Box",
      "type": "n8n-nodes-base.box",
      "position": [
        1264,
        112
      ]
    },
    {
      "id": "caa4fd8b-03f9-4eef-9538-9ebb64f555e7",
      "name": "Was Upload Successful?",
      "type": "n8n-nodes-base.if",
      "position": [
        1488,
        48
      ]
    },
    {
      "id": "46974add-e908-4e50-9328-39304a56f266",
      "name": "Compose Success Email",
      "type": "n8n-nodes-base.set",
      "position": [
        1760,
        16
      ]
    },
    {
      "id": "15d4e5b4-edef-4018-8edf-0e21fd1cbfed",
      "name": "Send Success Notification",
      "type": "n8n-nodes-base.mailgun",
      "position": [
        2016,
        16
      ]
    },
    {
      "id": "c537b07e-06a7-4906-9ac8-57955aa9fbad",
      "name": "Compose Failure Email",
      "type": "n8n-nodes-base.set",
      "position": [
        1696,
        320
      ]
    },
    {
      "id": "b1c70504-6bb3-4e37-af0a-64d39b7e01d0",
      "name": "Send Failure Notification",
      "type": "n8n-nodes-base.mailgun",
      "position": [
        1968,
        320
      ]
    },
    {
      "id": "eee93b96-50bf-4f8f-b7ec-9a021ce1cf36",
      "name": "Workflow Overview",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1408,
        -192
      ],
      "parameters": {
        "width": 550,
        "height": 738,
        "content": "## How it works\nThis workflow automates multi-asset backups on demand or from external schedulers. A Webhook trigger receives a POST request that optionally defines which resources to back up. Default"
      }
    },
    {
      "id": "875b1908-f91e-4ea6-a01f-193509d939f1",
      "name": "Trigger & Prep Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -832,
        -160
      ],
      "parameters": {
        "width": 898,
        "height": 654,
        "content": "## Trigger & Preparation\nThis cluster receives the incoming request that kicks off each backup cycle. The Webhook node allows external schedulers such as cron jobs, CI/CD pipelines, or other services "
      }
    },
    {
      "id": "12fcdc91-0454-451a-a3cf-f660f8755e87",
      "name": "Compression & Storage Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        64,
        -160
      ],
      "parameters": {
        "width": 1138,
        "height": 654,
        "content": "## Compression & Storage\nAfter each backup definition reaches the Split node, an HTTP Request pulls the raw export stream or file from your service of choice. The first IF gate checks for a 200 status"
      }
    },
    {
      "id": "e669d7c0-5786-4c70-b692-91d8c31bb3ad",
      "name": "Notification & Reporting Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1216,
        -160
      ],
      "parameters": {
        "width": 1138,
        "height": 670,
        "content": "## Notification & Reporting\nClear visibility is critical for any backup strategy. Once each asset has attempted to upload, the workflow assembles a concise status email. Success paths craft a green-li"
      }
    }
  ],
  "connections": {
    "Split Backups": {
      "main": [
        [
          {
            "node": "Export Backup Data",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Upload to Box": {
      "main": [
        [
          {
            "node": "Was Upload Successful?",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Compress Export": {
      "main": [
        [
          {
            "node": "Prepare File for Box",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Export Backup Data": {
      "main": [
        [
          {
            "node": "Was Export Successful?",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Create Backup Folder": {
      "main": [
        [
          {
            "node": "Prepare Backup Items",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Prepare Backup Items": {
      "main": [
        [
          {
            "node": "Split Backups",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Prepare File for Box": {
      "main": [
        [
          {
            "node": "Upload to Box",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Compose Failure Email": {
      "main": [
        [
          {
            "node": "Send Failure Notification",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Compose Success Email": {
      "main": [
        [
          {
            "node": "Send Success Notification",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Backup Webhook Trigger": {
      "main": [
        [
          {
            "node": "Set Default Backup Config",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Was Export Successful?": {
      "main": [
        [
          {
            "node": "Compress Export",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Compose Failure Email",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Was Upload Successful?": {
      "main": [
        [
          {
            "node": "Compose Success Email",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Compose Failure Email",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Set Default Backup Config": {
      "main": [
        [
          {
            "node": "Create Backup Folder",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}