Copia de seguridad de flujos de trabajo N8N en Github

Avanzado

Este es unautomatización que contiene 30 nodos.Utiliza principalmente nodos como If, N8n, Set, Code, Wait. Respaldar flujos de trabajo de N8N en Github

Requisitos previos
  • Personal Access Token de GitHub
  • Bot Token de Discord o Webhook

Categoría

-
Vista previa del flujo de trabajo
Visualización de las conexiones entre nodos, con soporte para zoom y panorámica
Exportar flujo de trabajo
Copie la siguiente configuración JSON en n8n para importar y usar este flujo de trabajo
{
  "meta": {
    "instanceId": "7a94cd64cdcb53cb721e010cea9e90907c1dc5fd6766b2d732b573c42bb273f8",
    "templateCredsSetupCompleted": true
  },
  "nodes": [
    {
      "id": "696255b0-7786-410c-927f-ffb4fa7784b9",
      "name": "Al hacer clic en 'ejecutar'",
      "type": "n8n-nodes-base.manualTrigger",
      "position": [
        400,
        -400
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "5ffbd7ff-596c-4d69-a327-95ab9e31c144",
      "name": "Nota adhesiva",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        160,
        140
      ],
      "parameters": {
        "color": 6,
        "width": 2111,
        "height": 752,
        "content": "## Subworkflow"
      },
      "typeVersion": 1
    },
    {
      "id": "d552bfbd-24cc-43ab-b008-ba837525e234",
      "name": "Activador Ejecutar flujo de trabajo",
      "type": "n8n-nodes-base.executeWorkflowTrigger",
      "position": [
        180,
        540
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "4cf656ea-b62c-4c9a-9a2c-f3cd4736af6f",
      "name": "n8n",
      "type": "n8n-nodes-base.n8n",
      "position": [
        800,
        -300
      ],
      "parameters": {
        "filters": {},
        "requestOptions": {}
      },
      "credentials": {
        "n8nApi": {
          "id": "n99peePbw8bFtE9X",
          "name": "N8N Key (Github Backup)"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "bc776b1e-de7a-4c5c-ab3e-fc6ede7f6d93",
      "name": "Retornar",
      "type": "n8n-nodes-base.set",
      "position": [
        2140,
        340
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "8d513345-6484-431f-afb7-7cf045c90f4f",
              "name": "Done",
              "type": "boolean",
              "value": true
            }
          ]
        }
      },
      "typeVersion": 3.3
    },
    {
      "id": "cc1748c6-972e-4909-a0d9-2aada40e49b6",
      "name": "Si archivo es demasiado grande",
      "type": "n8n-nodes-base.if",
      "position": [
        820,
        260
      ],
      "parameters": {
        "options": {},
        "conditions": {
          "options": {
            "version": 1,
            "leftValue": "",
            "caseSensitive": true,
            "typeValidation": "strict"
          },
          "combinator": "and",
          "conditions": [
            {
              "id": "45ce825e-9fa6-430c-8931-9aaf22c42585",
              "operator": {
                "type": "string",
                "operation": "exists",
                "singleValue": true
              },
              "leftValue": "={{ $json.content }}",
              "rightValue": ""
            },
            {
              "id": "3ce332ca-3827-4c2d-becd-837da737d285",
              "operator": {
                "type": "string",
                "operation": "notExists",
                "singleValue": true
              },
              "leftValue": "={{ $json.error }}",
              "rightValue": ""
            }
          ]
        }
      },
      "typeVersion": 2
    },
    {
      "id": "68c529b3-8530-42c9-8efa-7c35ea6c24f0",
      "name": "Combinar elementos",
      "type": "n8n-nodes-base.merge",
      "position": [
        820,
        520
      ],
      "parameters": {},
      "typeVersion": 2
    },
    {
      "id": "627cc21c-1f7f-4266-a558-357289bb2746",
      "name": "Mismo archivo - No hacer nada",
      "type": "n8n-nodes-base.noOp",
      "position": [
        1680,
        340
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "6e77f25e-b58c-4e23-a5c7-1951c36e59b6",
      "name": "Archivo es diferente",
      "type": "n8n-nodes-base.noOp",
      "position": [
        1680,
        500
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "37d72317-7140-45eb-ac62-e88ec7b9fc97",
      "name": "Archivo es nuevo",
      "type": "n8n-nodes-base.noOp",
      "position": [
        1680,
        700
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "770c9612-e6fb-4d6c-9a89-459e7d5acc31",
      "name": "Crear nuevo archivo",
      "type": "n8n-nodes-base.github",
      "position": [
        1900,
        700
      ],
      "webhookId": "fc6b1cf0-6440-4fb0-94bf-fadabb6ea1fd",
      "parameters": {
        "owner": {
          "__rl": true,
          "mode": "name",
          "value": "={{ $('Config').first().json.repo_owner }}"
        },
        "filePath": "={{ $('Create sub path').item.json.subPath }}/{{ $('Execute Workflow Trigger').first().json.id }}.json",
        "resource": "file",
        "repository": {
          "__rl": true,
          "mode": "name",
          "value": "={{ $('Config').first().json.repo_name }}"
        },
        "fileContent": "={{ JSON.stringify($('Config').first().json.data) }}",
        "commitMessage": "={{$('Execute Workflow Trigger').first().json.name}} ({{$json.githubStatus}})"
      },
      "credentials": {
        "githubApi": {
          "id": "nEsQmNXwV6LPvaNE",
          "name": "GitHub account"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "121272d6-0535-494e-b14a-3cc00f87cb8d",
      "name": "Editar archivo existente",
      "type": "n8n-nodes-base.github",
      "position": [
        1900,
        500
      ],
      "webhookId": "81fc5f33-06e3-4368-ba2e-0ef46dd8b021",
      "parameters": {
        "owner": {
          "__rl": true,
          "mode": "name",
          "value": "={{ $('Config').first().json.repo_owner }}"
        },
        "filePath": "={{ $('Create sub path').item.json.subPath }}/{{ $('Execute Workflow Trigger').first().json.id }}.json",
        "resource": "file",
        "operation": "edit",
        "repository": {
          "__rl": true,
          "mode": "name",
          "value": "={{ $('Config').first().json.repo_name }}"
        },
        "fileContent": "={{ JSON.stringify($('Config').first().json.data) }}",
        "commitMessage": "={{$('Execute Workflow Trigger').first().json.name}} ({{ $json.githubStatus }})"
      },
      "credentials": {
        "githubApi": {
          "id": "nEsQmNXwV6LPvaNE",
          "name": "GitHub account"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "2847116a-c862-4803-8079-a40e4edd22f7",
      "name": "Iterar sobre elementos",
      "type": "n8n-nodes-base.splitInBatches",
      "position": [
        1000,
        -300
      ],
      "parameters": {
        "options": {}
      },
      "typeVersion": 3
    },
    {
      "id": "ec0c92a3-73fa-480b-bdd3-e51648e8b0a0",
      "name": "Activador programado",
      "type": "n8n-nodes-base.scheduleTrigger",
      "position": [
        400,
        -200
      ],
      "parameters": {
        "rule": {
          "interval": [
            {
              "field": "weeks",
              "triggerAtDay": [
                6
              ],
              "triggerAtHour": 1
            }
          ]
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "289ec775-7191-4710-85e8-ae33542f9fbd",
      "name": "Crear subruta",
      "type": "n8n-nodes-base.set",
      "position": [
        1260,
        520
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "dae43d3b-56e5-4098-b602-862ebf5cd073",
              "name": "subPath",
              "type": "string",
              "value": "={{ $now.setZone('UTC').toFormat('yyyy') }}/{{ $now.setZone('UTC').toFormat('MM') }}/{{ $now.setZone('UTC').toFormat('dd') }}"
            }
          ]
        },
        "includeOtherFields": true
      },
      "typeVersion": 3.3
    },
    {
      "id": "b9bf504a-3acf-4706-992d-a522e9693df8",
      "name": "Nota adhesiva 2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        160,
        -500
      ],
      "parameters": {
        "color": 7,
        "width": 2113,
        "height": 616,
        "content": "## Main workflow loop"
      },
      "typeVersion": 1
    },
    {
      "id": "2470503e-cb6a-44a5-a4aa-b431874e2e09",
      "name": "Configuración",
      "type": "n8n-nodes-base.set",
      "position": [
        440,
        540
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "8f6d1741-772f-462a-811f-4c334185e4f0",
              "name": "repo_owner",
              "type": "string",
              "value": "=datproto"
            },
            {
              "id": "8cac215c-4fd7-422f-9fd2-6b2d1e5e0383",
              "name": "repo_name",
              "type": "string",
              "value": "=datproto-backup-n8n"
            },
            {
              "id": "2b38f96a-a970-4d13-900e-f15e4cd65c51",
              "name": "data",
              "type": "object",
              "value": "={{\n  {\n    \"nodes\": $('Execute Workflow Trigger').item.json.nodes,\n    \"connections\": $('Execute Workflow Trigger').item.json.connections,\n    \"pinData\": $('Execute Workflow Trigger').item.json.pinData,\n    \"meta\": $('Execute Workflow Trigger').item.json.meta\n  }\n}}"
            }
          ]
        },
        "includeOtherFields": true
      },
      "typeVersion": 3.4
    },
    {
      "id": "a7d835f2-de5e-4121-acad-9041c126401c",
      "name": "Mensaje inicial",
      "type": "n8n-nodes-base.discord",
      "position": [
        600,
        -300
      ],
      "webhookId": "53d9dd11-ca31-4eea-8dc8-bac95c8bcc04",
      "parameters": {
        "content": "=The Git backup here. Below is my latest activity:\n```\n👉 Starting Workflow Backup [{{ $execution.id }}]\n```",
        "guildId": {
          "__rl": true,
          "mode": "list",
          "value": "1344944764851851344",
          "cachedResultUrl": "https://discord.com/channels/1344944764851851344",
          "cachedResultName": "Dat Proto's server"
        },
        "options": {},
        "resource": "message",
        "channelId": {
          "__rl": true,
          "mode": "list",
          "value": "1344944973958873212",
          "cachedResultUrl": "https://discord.com/channels/1344944764851851344/1344944973958873212",
          "cachedResultName": "n8n"
        }
      },
      "credentials": {
        "discordBotApi": {
          "id": "i8z7R64uXW2cjYik",
          "name": "N8N Bot"
        }
      },
      "typeVersion": 2
    },
    {
      "id": "c71ddc51-cbf9-4437-b2b4-9d60f2e1a039",
      "name": "Notificación de finalización",
      "type": "n8n-nodes-base.discord",
      "position": [
        1640,
        -440
      ],
      "webhookId": "53d9dd11-ca31-4eea-8dc8-bac95c8bcc04",
      "parameters": {
        "content": "=The Git backup here. Below is my latest activity:\n```\n✅ Backup has completed - {{ $('n8n').all().length }} workflows have been processed.\n```",
        "guildId": {
          "__rl": true,
          "mode": "list",
          "value": "1344944764851851344",
          "cachedResultUrl": "https://discord.com/channels/1344944764851851344",
          "cachedResultName": "Dat Proto's server"
        },
        "options": {},
        "resource": "message",
        "channelId": {
          "__rl": true,
          "mode": "list",
          "value": "1344944973958873212",
          "cachedResultUrl": "https://discord.com/channels/1344944764851851344/1344944973958873212",
          "cachedResultName": "n8n"
        }
      },
      "credentials": {
        "discordBotApi": {
          "id": "i8z7R64uXW2cjYik",
          "name": "N8N Bot"
        }
      },
      "executeOnce": true,
      "typeVersion": 2
    },
    {
      "id": "110ba2cd-6a39-4663-81d5-6b2893d42e18",
      "name": "Obtener datos de archivo",
      "type": "n8n-nodes-base.github",
      "position": [
        620,
        260
      ],
      "webhookId": "883c4829-4a9d-4320-ab49-226a5bc15863",
      "parameters": {
        "owner": {
          "__rl": true,
          "mode": "name",
          "value": "={{ $json.repo_owner }}"
        },
        "filePath": "={{ $now.setZone('UTC').toFormat('yyyy') }}/{{ $now.setZone('UTC').toFormat('MM') }}/{{ $now.setZone('UTC').toFormat('dd') }}/{{ $('Execute Workflow Trigger').item.json.id }}.json",
        "resource": "file",
        "operation": "get",
        "repository": {
          "__rl": true,
          "mode": "name",
          "value": "={{ $json.repo_name }}"
        },
        "asBinaryProperty": false,
        "additionalParameters": {}
      },
      "credentials": {
        "githubApi": {
          "id": "nEsQmNXwV6LPvaNE",
          "name": "GitHub account"
        }
      },
      "typeVersion": 1,
      "continueOnFail": true,
      "alwaysOutputData": true
    },
    {
      "id": "2bdbcb80-2c2b-4fb8-bddb-eb9e6c6db0e0",
      "name": "Ejecutar flujo de trabajo",
      "type": "n8n-nodes-base.executeWorkflow",
      "onError": "continueErrorOutput",
      "position": [
        1420,
        -200
      ],
      "parameters": {
        "options": {},
        "workflowId": {
          "__rl": true,
          "mode": "id",
          "value": "={{ $workflow.id }}"
        },
        "workflowInputs": {
          "value": {},
          "schema": [],
          "mappingMode": "defineBelow",
          "matchingColumns": [],
          "attemptToConvertTypes": false,
          "convertFieldsToString": true
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "2366b904-8f2f-42ce-aa2f-fc941cb73ad4",
      "name": "Esperar",
      "type": "n8n-nodes-base.wait",
      "position": [
        1640,
        -100
      ],
      "webhookId": "577d599b-e2eb-4e7c-92aa-b9ca787cc40a",
      "parameters": {},
      "typeVersion": 1.1
    },
    {
      "id": "e9ad632a-0506-4709-a485-67c45bf388f6",
      "name": "Obtener archivo",
      "type": "n8n-nodes-base.github",
      "position": [
        1040,
        240
      ],
      "webhookId": "81fc5f33-06e3-4368-ba2e-0ef46dd8b021",
      "parameters": {
        "owner": {
          "__rl": true,
          "mode": "name",
          "value": "={{ $('Config').item.json.repo_owner }}"
        },
        "filePath": "={{ $now.setZone('UTC').toFormat('yyyy') }}/{{ $now.setZone('UTC').toFormat('MM') }}/{{ $now.setZone('UTC').toFormat('dd') }}/{{ $('Execute Workflow Trigger').item.json.id }}.json",
        "resource": "file",
        "operation": "get",
        "repository": {
          "__rl": true,
          "mode": "name",
          "value": "={{ $('Config').item.json.repo_name }}"
        },
        "additionalParameters": {}
      },
      "credentials": {
        "githubApi": {
          "id": "nEsQmNXwV6LPvaNE",
          "name": "GitHub account"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "656913c3-cb57-4129-ae12-42f70800a9ef",
      "name": "Esperar 1",
      "type": "n8n-nodes-base.wait",
      "position": [
        1420,
        -440
      ],
      "webhookId": "4a7448b4-930e-4110-b205-95c55cac5bba",
      "parameters": {
        "amount": 10
      },
      "typeVersion": 1.1
    },
    {
      "id": "09738ea8-1a61-4967-ac3d-2a9f64b39329",
      "name": "verificarLaDiferencia",
      "type": "n8n-nodes-base.code",
      "position": [
        1040,
        520
      ],
      "parameters": {
        "jsCode": "const _ = require(\"underscore\")\n\nlet fileInput = null\n\nif (Object.keys($input.first().json).includes(\"content\")) {\n  fileInput = JSON.parse(Buffer.from($input.all()[0].json.content, 'base64').toString())\n}\n\nconst n8nInput = $input.last().json.data\n\nif (!fileInput) {\n  return {\n    \"githubStatus\": \"new\"\n  }\n}\n\nif (_.isMatch(fileInput, n8nInput)) {\n  return {\n    \"githubStatus\": \"same\"\n  }\n} else {\n  return {\n    \"githubStatus\": \"different\"\n  }\n}"
      },
      "typeVersion": 2
    },
    {
      "id": "7cb7b34c-8742-44c3-9792-1084abf2783a",
      "name": "Switch",
      "type": "n8n-nodes-base.switch",
      "position": [
        1460,
        520
      ],
      "parameters": {
        "rules": {
          "values": [
            {
              "outputKey": "same",
              "conditions": {
                "options": {
                  "version": 2,
                  "leftValue": "",
                  "caseSensitive": true,
                  "typeValidation": "strict"
                },
                "combinator": "and",
                "conditions": [
                  {
                    "id": "1e6de6b4-3074-41bc-8a9d-465c0eb9a773",
                    "operator": {
                      "type": "string",
                      "operation": "equals"
                    },
                    "leftValue": "={{ $('verifyTheDifference').first().json.githubStatus }}",
                    "rightValue": "same"
                  }
                ]
              },
              "renameOutput": true
            },
            {
              "outputKey": "different",
              "conditions": {
                "options": {
                  "version": 2,
                  "leftValue": "",
                  "caseSensitive": true,
                  "typeValidation": "strict"
                },
                "combinator": "and",
                "conditions": [
                  {
                    "id": "cf6e130e-c85d-4a24-b11a-abfd0ecfcb19",
                    "operator": {
                      "name": "filter.operator.equals",
                      "type": "string",
                      "operation": "equals"
                    },
                    "leftValue": "={{ $('verifyTheDifference').first().json.githubStatus }}",
                    "rightValue": "different"
                  }
                ]
              },
              "renameOutput": true
            },
            {
              "outputKey": "=new",
              "conditions": {
                "options": {
                  "version": 2,
                  "leftValue": "",
                  "caseSensitive": true,
                  "typeValidation": "strict"
                },
                "combinator": "and",
                "conditions": [
                  {
                    "id": "f2fc6dda-85f5-4b81-b016-3e033b1dbcab",
                    "operator": {
                      "name": "filter.operator.equals",
                      "type": "string",
                      "operation": "equals"
                    },
                    "leftValue": "={{ $('verifyTheDifference').first().json.githubStatus }}",
                    "rightValue": "new"
                  }
                ]
              },
              "renameOutput": true
            }
          ]
        },
        "options": {}
      },
      "typeVersion": 3.2
    },
    {
      "id": "c6410f39-34d8-448f-9efd-d66da067637b",
      "name": "Esperar 2",
      "type": "n8n-nodes-base.wait",
      "position": [
        1640,
        -280
      ],
      "webhookId": "4a7448b4-930e-4110-b205-95c55cac5bba",
      "parameters": {
        "amount": 10
      },
      "typeVersion": 1.1
    },
    {
      "id": "a3c4ff40-9887-4e38-985a-f32536d9306f",
      "name": "Nota adhesiva 1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -540,
        -500
      ],
      "parameters": {
        "color": 4,
        "width": 680,
        "height": 1400,
        "content": "# Workflows backup to Github\n======================================================================\n\n## Introduction\nThis workflow will backup all of your existed workflows to a single Github repository.\n\nThe Backup folders' name are based on the current backup date and have default format: \"yyyy/MM/dd\" (setup at \"Create sub path\" node).\n\nThroughout the backup process, the N8N will inform user via discord with clear message about Start, Success and Failure backups.\n\n## Tech Stack\nThe following nodes / services / libraries are used in this workflow:\n\n### Nodes:\n1. **Discord:** To send message to configured setup channel.\n2. **N8N:** To get all workflows' information.\n3. **Github:** To store backup data.\n4. **Code:** To run data comparison (Existed vs Latest workflow data).\n5. **Wait:** To avoid discord message rate limit.\n\n### External libraries:\n1. **Underscore.js:** JavaScript library that provides lots of common Javascript functions, to help user save time when using code node.\n\n## Guideline\n1. Open \"Config\" node and setup the following information:\n    - **repo_owner:** Your Github username.\n    - **repo_name:** The repository that you want to store workflows backup data.\n2. Open \"Create sub path\" node and change the naming and path format of backup folder(s).\n3. Setup custom messages in 3 discord nodes:\n    - **Starting Message:** N8N inform user at the time workflow start.\n    - **Inform Success Flows:** After each success backup, N8N will notify user.\n    - **Inform Failed Flows:** After each failure backup, N8N will notify user to have appropriate action.\n    - **Completed Notifications:** Then at the final, the workflow will give user a summary."
      },
      "typeVersion": 1
    },
    {
      "id": "d511ce8a-1617-4a2a-96d8-6e71ddc372b7",
      "name": "Informar flujos exitosos",
      "type": "n8n-nodes-base.discord",
      "onError": "continueRegularOutput",
      "position": [
        1840,
        -280
      ],
      "webhookId": "53d9dd11-ca31-4eea-8dc8-bac95c8bcc04",
      "parameters": {
        "content": "=The Git backup here. Below is my latest activity:\n```\n✅ Success to backup {{ $('Loop Over Items').item.json.id }}\n```",
        "guildId": {
          "__rl": true,
          "mode": "list",
          "value": "1344944764851851344",
          "cachedResultUrl": "https://discord.com/channels/1344944764851851344",
          "cachedResultName": "Dat Proto's server"
        },
        "options": {},
        "resource": "message",
        "channelId": {
          "__rl": true,
          "mode": "list",
          "value": "1344944973958873212",
          "cachedResultUrl": "https://discord.com/channels/1344944764851851344/1344944973958873212",
          "cachedResultName": "n8n"
        }
      },
      "credentials": {
        "discordBotApi": {
          "id": "i8z7R64uXW2cjYik",
          "name": "N8N Bot"
        }
      },
      "typeVersion": 2
    },
    {
      "id": "21052f64-d4b6-4b67-8cb4-dd022a0dab71",
      "name": "Informar flujos fallidos",
      "type": "n8n-nodes-base.discord",
      "position": [
        1840,
        -100
      ],
      "webhookId": "53d9dd11-ca31-4eea-8dc8-bac95c8bcc04",
      "parameters": {
        "content": "=The Git backup here. Below is my latest activity:\n```\n👉 Failed to backup {{ $('Loop Over Items').item.json.id }}\n```",
        "guildId": {
          "__rl": true,
          "mode": "list",
          "value": "1344944764851851344",
          "cachedResultUrl": "https://discord.com/channels/1344944764851851344",
          "cachedResultName": "Dat Proto's server"
        },
        "options": {},
        "resource": "message",
        "channelId": {
          "__rl": true,
          "mode": "list",
          "value": "1344944973958873212",
          "cachedResultUrl": "https://discord.com/channels/1344944764851851344/1344944973958873212",
          "cachedResultName": "n8n"
        }
      },
      "credentials": {
        "discordBotApi": {
          "id": "i8z7R64uXW2cjYik",
          "name": "N8N Bot"
        }
      },
      "typeVersion": 2
    }
  ],
  "pinData": {},
  "connections": {
    "4cf656ea-b62c-4c9a-9a2c-f3cd4736af6f": {
      "main": [
        [
          {
            "node": "2847116a-c862-4803-8079-a40e4edd22f7",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "2366b904-8f2f-42ce-aa2f-fc941cb73ad4": {
      "main": [
        [
          {
            "node": "21052f64-d4b6-4b67-8cb4-dd022a0dab71",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "656913c3-cb57-4129-ae12-42f70800a9ef": {
      "main": [
        [
          {
            "node": "c71ddc51-cbf9-4437-b2b4-9d60f2e1a039",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "c6410f39-34d8-448f-9efd-d66da067637b": {
      "main": [
        [
          {
            "node": "d511ce8a-1617-4a2a-96d8-6e71ddc372b7",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "2470503e-cb6a-44a5-a4aa-b431874e2e09": {
      "main": [
        [
          {
            "node": "68c529b3-8530-42c9-8efa-7c35ea6c24f0",
            "type": "main",
            "index": 1
          },
          {
            "node": "110ba2cd-6a39-4663-81d5-6b2893d42e18",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "7cb7b34c-8742-44c3-9792-1084abf2783a": {
      "main": [
        [
          {
            "node": "627cc21c-1f7f-4266-a558-357289bb2746",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "6e77f25e-b58c-4e23-a5c7-1951c36e59b6",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "37d72317-7140-45eb-ac62-e88ec7b9fc97",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "e9ad632a-0506-4709-a485-67c45bf388f6": {
      "main": [
        [
          {
            "node": "68c529b3-8530-42c9-8efa-7c35ea6c24f0",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "37d72317-7140-45eb-ac62-e88ec7b9fc97": {
      "main": [
        [
          {
            "node": "770c9612-e6fb-4d6c-9a89-459e7d5acc31",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "68c529b3-8530-42c9-8efa-7c35ea6c24f0": {
      "main": [
        [
          {
            "node": "09738ea8-1a61-4967-ac3d-2a9f64b39329",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "110ba2cd-6a39-4663-81d5-6b2893d42e18": {
      "main": [
        [
          {
            "node": "cc1748c6-972e-4909-a0d9-2aada40e49b6",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "770c9612-e6fb-4d6c-9a89-459e7d5acc31": {
      "main": [
        [
          {
            "node": "bc776b1e-de7a-4c5c-ab3e-fc6ede7f6d93",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "289ec775-7191-4710-85e8-ae33542f9fbd": {
      "main": [
        [
          {
            "node": "7cb7b34c-8742-44c3-9792-1084abf2783a",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "2847116a-c862-4803-8079-a40e4edd22f7": {
      "main": [
        [
          {
            "node": "656913c3-cb57-4129-ae12-42f70800a9ef",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "2bdbcb80-2c2b-4fb8-bddb-eb9e6c6db0e0",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "2bdbcb80-2c2b-4fb8-bddb-eb9e6c6db0e0": {
      "main": [
        [
          {
            "node": "c6410f39-34d8-448f-9efd-d66da067637b",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "2366b904-8f2f-42ce-aa2f-fc941cb73ad4",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "ec0c92a3-73fa-480b-bdd3-e51648e8b0a0": {
      "main": [
        [
          {
            "node": "a7d835f2-de5e-4121-acad-9041c126401c",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "a7d835f2-de5e-4121-acad-9041c126401c": {
      "main": [
        [
          {
            "node": "4cf656ea-b62c-4c9a-9a2c-f3cd4736af6f",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "6e77f25e-b58c-4e23-a5c7-1951c36e59b6": {
      "main": [
        [
          {
            "node": "121272d6-0535-494e-b14a-3cc00f87cb8d",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "cc1748c6-972e-4909-a0d9-2aada40e49b6": {
      "main": [
        [
          {
            "node": "e9ad632a-0506-4709-a485-67c45bf388f6",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "68c529b3-8530-42c9-8efa-7c35ea6c24f0",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "121272d6-0535-494e-b14a-3cc00f87cb8d": {
      "main": [
        [
          {
            "node": "bc776b1e-de7a-4c5c-ab3e-fc6ede7f6d93",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "21052f64-d4b6-4b67-8cb4-dd022a0dab71": {
      "main": [
        [
          {
            "node": "2847116a-c862-4803-8079-a40e4edd22f7",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "09738ea8-1a61-4967-ac3d-2a9f64b39329": {
      "main": [
        [
          {
            "node": "289ec775-7191-4710-85e8-ae33542f9fbd",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "d511ce8a-1617-4a2a-96d8-6e71ddc372b7": {
      "main": [
        [
          {
            "node": "2847116a-c862-4803-8079-a40e4edd22f7",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "696255b0-7786-410c-927f-ffb4fa7784b9": {
      "main": [
        [
          {
            "node": "a7d835f2-de5e-4121-acad-9041c126401c",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "627cc21c-1f7f-4266-a558-357289bb2746": {
      "main": [
        [
          {
            "node": "bc776b1e-de7a-4c5c-ab3e-fc6ede7f6d93",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "d552bfbd-24cc-43ab-b008-ba837525e234": {
      "main": [
        [
          {
            "node": "2470503e-cb6a-44a5-a4aa-b431874e2e09",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}
Preguntas frecuentes

¿Cómo usar este flujo de trabajo?

Copie el código de configuración JSON de arriba, cree un nuevo flujo de trabajo en su instancia de n8n y seleccione "Importar desde JSON", pegue la configuración y luego modifique la configuración de credenciales según sea necesario.

¿En qué escenarios es adecuado este flujo de trabajo?

Avanzado

¿Es de pago?

Este flujo de trabajo es completamente gratuito, puede importarlo y usarlo directamente. Sin embargo, tenga en cuenta que los servicios de terceros utilizados en el flujo de trabajo (como la API de OpenAI) pueden requerir un pago por su cuenta.

Información del flujo de trabajo
Nivel de dificultad
Avanzado
Número de nodos30
Categoría-
Tipos de nodos16
Descripción de la dificultad

Adecuado para usuarios avanzados, flujos de trabajo complejos con 16+ nodos

Enlaces externos
Ver en n8n.io

Compartir este flujo de trabajo

Categorías

Categorías: 34