Automatische Aktualisierung der Amazon-Transaktionsnotizen in YNAB mit KI und Gmail

Experte

Dies ist ein Document Extraction, AI Summarization-Bereich Automatisierungsworkflow mit 30 Nodes. Hauptsächlich werden If, Set, Wait, Gmail, Webhook und andere Nodes verwendet. Automatische Aktualisierung der Amazon-Transaktionsnotizen in YNAB mit AI und Gmail

Voraussetzungen
  • Google-Konto + Gmail API-Anmeldedaten
  • HTTP Webhook-Endpunkt (wird von n8n automatisch generiert)
  • Möglicherweise sind Ziel-API-Anmeldedaten erforderlich
  • OpenAI API Key
Workflow-Vorschau
Visualisierung der Node-Verbindungen, mit Zoom und Pan
Workflow exportieren
Kopieren Sie die folgende JSON-Konfiguration und importieren Sie sie in n8n
{
  "meta": {
    "instanceId": "03e9d14e9196363fe7191ce21dc0bb17387a6e755dcc9acc4f5904752919dca8",
    "templateCredsSetupCompleted": true
  },
  "nodes": [
    {
      "id": "6ee18fe3-405a-49a3-8f86-11ccefda3548",
      "name": "Bei Klick auf 'Workflow testen'",
      "type": "n8n-nodes-base.manualTrigger",
      "position": [
        -864,
        160
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "5571fbfd-9c84-445a-9972-792dcb2a9e42",
      "name": "Nächste Transaktion prüfen",
      "type": "n8n-nodes-base.noOp",
      "position": [
        2752,
        32
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "d5b14c55-eac1-4bbb-9e94-42a4ebd641e1",
      "name": "Webhook",
      "type": "n8n-nodes-base.webhook",
      "position": [
        -864,
        16
      ],
      "webhookId": "1c756ff4-2cf9-4570-b633-b2d8d193475b",
      "parameters": {
        "path": "1c756ff4-2cf9-4570-b633-b2d8d193475b",
        "options": {},
        "authentication": "basicAuth"
      },
      "credentials": {
        "httpBasicAuth": {
          "id": "xxrkmwLKTSvujNH4",
          "name": "n8n internal"
        }
      },
      "typeVersion": 2.1
    },
    {
      "id": "3bd820de-86fe-4ddf-a876-fc7756cd0162",
      "name": "Zeitplan-Trigger",
      "type": "n8n-nodes-base.scheduleTrigger",
      "position": [
        -864,
        -128
      ],
      "parameters": {
        "rule": {
          "interval": [
            {
              "field": "hours"
            }
          ]
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "2810da77-72ac-4ee3-b563-ef0a71d0a5f7",
      "name": "Rechner",
      "type": "@n8n/n8n-nodes-langchain.toolCalculator",
      "position": [
        2112,
        -48
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "70f26d90-fffb-491b-9895-32bdd9d29ed5",
      "name": "OpenAI Chat-Modell",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        1920,
        -48
      ],
      "parameters": {
        "model": {
          "__rl": true,
          "mode": "list",
          "value": "gpt-4.1-mini"
        },
        "options": {}
      },
      "credentials": {
        "openAiApi": {
          "id": "jQgIuototc3X8Idi",
          "name": "n8n Marketing Open AI"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "7df5e6bf-e3b9-41a5-a406-285ff502f665",
      "name": "Haftnotiz",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -928,
        -400
      ],
      "parameters": {
        "color": 7,
        "width": 720,
        "height": 768,
        "content": "![YNAB](https://upload.wikimedia.org/wikipedia/commons/thumb/d/d4/YNAB_logo.svg/115px-YNAB_logo.svg.png)\n## Trigger and Get YNAB Transactions\nThis workflow can be triggered several different ways. Ideally, it runs on a schedule every hour, and when new transactions are found, the memo fields are automatically updated. "
      },
      "typeVersion": 1
    },
    {
      "id": "34f849a7-fb42-4eb8-951d-ede8d2102381",
      "name": "Alle nicht genehmigten Transaktionen abrufen",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        -352,
        48
      ],
      "parameters": {
        "url": "=https://api.ynab.com/v1/budgets/{{ $json.budgetid }}/transactions",
        "options": {},
        "sendQuery": true,
        "authentication": "predefinedCredentialType",
        "queryParameters": {
          "parameters": [
            {
              "name": "type",
              "value": "unapproved"
            }
          ]
        },
        "nodeCredentialType": "ynabApi"
      },
      "credentials": {
        "ynabApi": {
          "id": "LAMbpNc7ufRN2Yic",
          "name": "YNAB account"
        },
        "httpHeaderAuth": {
          "id": "8Yr1tAjoggYWKgcJ",
          "name": "YNAB Auth"
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "79d3aa72-8fce-4367-a6c2-eb0cb59406e6",
      "name": "Transaktionen aufteilen",
      "type": "n8n-nodes-base.splitOut",
      "position": [
        -96,
        48
      ],
      "parameters": {
        "options": {},
        "fieldToSplitOut": "data.transactions"
      },
      "typeVersion": 1
    },
    {
      "id": "221a624e-815e-4a56-9096-7e9e3030a2d5",
      "name": "Benötigte Daten extrahieren",
      "type": "n8n-nodes-base.set",
      "position": [
        128,
        48
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "24124c97-17e7-4468-a332-6831e86ea9fb",
              "name": "date",
              "type": "string",
              "value": "={{ $json.date }}"
            },
            {
              "id": "d73d6405-59d7-4b0a-ad73-9bb6aad9f111",
              "name": "amount",
              "type": "number",
              "value": "={{ ($json.amount / 1000).toFixed(2) }}"
            },
            {
              "id": "a9c66b70-5d1b-445c-a13e-64df994f7770",
              "name": "account_name",
              "type": "string",
              "value": "={{ $json.account_name }}"
            },
            {
              "id": "53eae7b8-c39c-4774-8240-856ba70cbb0b",
              "name": "payee_name",
              "type": "string",
              "value": "={{ $json.payee_name }}"
            },
            {
              "id": "da81f003-5597-4bd3-b303-96493bc20519",
              "name": "category_name",
              "type": "string",
              "value": "={{ $json.category_name }}"
            },
            {
              "id": "315e5b5c-aece-4988-b42f-0872d090e0c0",
              "name": "import_payee_name_original",
              "type": "string",
              "value": "={{ $json.import_payee_name_original }}"
            },
            {
              "id": "4bd06ea6-b7d7-411f-a402-cb31e56ad03c",
              "name": "approved",
              "type": "boolean",
              "value": "={{ $json.approved }}"
            },
            {
              "id": "9167c3ce-e2c6-4b30-a1e2-e29910aceebd",
              "name": "transaction_id",
              "type": "string",
              "value": "={{ $json.id }}"
            },
            {
              "id": "ec4079ad-5aed-4bb7-9a06-97631f796ed3",
              "name": "account_id",
              "type": "string",
              "value": "={{ $json.account_id }}"
            },
            {
              "id": "ccdcc857-8465-4455-bd93-59d7d998dc22",
              "name": "memo",
              "type": "string",
              "value": "={{ $json.memo }}"
            }
          ]
        }
      },
      "typeVersion": 3.4
    },
    {
      "id": "e9062f61-44e0-464f-ba76-8303650244a0",
      "name": "Prüfen ob Amazon-Kauf",
      "type": "n8n-nodes-base.if",
      "position": [
        352,
        48
      ],
      "parameters": {
        "options": {},
        "conditions": {
          "options": {
            "version": 2,
            "leftValue": "",
            "caseSensitive": true,
            "typeValidation": "strict"
          },
          "combinator": "and",
          "conditions": [
            {
              "id": "19aaf513-c93e-4895-8e16-7aef1e5ed2ba",
              "operator": {
                "type": "string",
                "operation": "contains"
              },
              "leftValue": "={{ $json.payee_name.toLowerCase() }}",
              "rightValue": "amazon"
            }
          ]
        }
      },
      "typeVersion": 2.2
    },
    {
      "id": "467f2ece-bf82-4526-ab99-11ebce6e2662",
      "name": "Prüfen ob Memo-Feld leer ist",
      "type": "n8n-nodes-base.if",
      "position": [
        576,
        48
      ],
      "parameters": {
        "options": {},
        "conditions": {
          "options": {
            "version": 2,
            "leftValue": "",
            "caseSensitive": true,
            "typeValidation": "strict"
          },
          "combinator": "and",
          "conditions": [
            {
              "id": "5330bad2-50b5-470d-8c5a-5a877ec481a5",
              "operator": {
                "type": "string",
                "operation": "empty",
                "singleValue": true
              },
              "leftValue": "={{ $json.memo }}",
              "rightValue": ""
            }
          ]
        }
      },
      "typeVersion": 2.2
    },
    {
      "id": "51438377-a3e4-4224-be1d-2d7b7fb0f63c",
      "name": "Transaktionen durchlaufen",
      "type": "n8n-nodes-base.splitInBatches",
      "position": [
        800,
        -16
      ],
      "parameters": {
        "options": {}
      },
      "typeVersion": 3
    },
    {
      "id": "062a5050-9e21-4e16-9126-9b84108a51d0",
      "name": "5 Sekunden warten (Rate Limiting vermeiden)",
      "type": "n8n-nodes-base.wait",
      "position": [
        2992,
        32
      ],
      "webhookId": "800d4979-691b-4c02-af75-467ee9e767ad",
      "parameters": {},
      "typeVersion": 1.1
    },
    {
      "id": "094e245a-ab4a-4b3d-b60c-bac5d23028e8",
      "name": "Transaktions-Memo-Feld aktualisieren",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        2560,
        -240
      ],
      "parameters": {
        "url": "=https://api.ynab.com/v1/budgets/{{ $('BudgetID').item.json.budgetid }}/transactions/{{ $('Loop Over Transactions').item.json.transaction_id }}",
        "method": "PUT",
        "options": {},
        "jsonBody": "={\n  \"transaction\": {\n    \"memo\": \"{{ ($json.output || '')\n    .replace(/[\\\\\\n\\r\\t\"]/g, ' ')   // remove backslashes, newlines, tabs, quotes\n    .replace(/\\s+/g, ' ')           // collapse extra spaces\n    .trim()\n    .slice(0, 499) }}\"\n  }\n}",
        "sendBody": true,
        "specifyBody": "json",
        "authentication": "predefinedCredentialType",
        "nodeCredentialType": "ynabApi"
      },
      "credentials": {
        "ynabApi": {
          "id": "LAMbpNc7ufRN2Yic",
          "name": "YNAB account"
        },
        "httpHeaderAuth": {
          "id": "8Yr1tAjoggYWKgcJ",
          "name": "YNAB Auth"
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "c8db0869-a551-4e56-84bc-d3c99ccd8d83",
      "name": "Memo mit Fehler aktualisieren",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        2528,
        32
      ],
      "parameters": {
        "url": "=https://api.ynab.com/v1/budgets/{{ $('BudgetID').item.json.budgetid }}/transactions/{{ $('Loop Over Transactions').item.json.transaction_id }}",
        "method": "PUT",
        "options": {},
        "jsonBody": "={\n  \"transaction\": {\n    \"memo\": \"No valid purchase information found.\"\n  }\n}",
        "sendBody": true,
        "specifyBody": "json",
        "authentication": "predefinedCredentialType",
        "nodeCredentialType": "ynabApi"
      },
      "credentials": {
        "ynabApi": {
          "id": "LAMbpNc7ufRN2Yic",
          "name": "YNAB account"
        },
        "httpHeaderAuth": {
          "id": "8Yr1tAjoggYWKgcJ",
          "name": "YNAB Auth"
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "3c1f3a54-c2ee-4a50-9cea-8ac85cce3bb3",
      "name": "E-Mails nach Transaktionsbetrag durchsuchen",
      "type": "n8n-nodes-base.gmail",
      "notes": "Within 5 day range",
      "position": [
        1056,
        16
      ],
      "webhookId": "a2e46469-783f-4a8e-b079-0dd479b1f485",
      "parameters": {
        "simple": false,
        "filters": {
          "q": "={{ ($json.amount * -1).toFixed(2) }}",
          "receivedAfter": "={{ $json.date.toDateTime().minus(5,'day') }}",
          "receivedBefore": "={{ $json.date.toDateTime().plus(5,'day')  }}"
        },
        "options": {},
        "operation": "getAll"
      },
      "credentials": {
        "gmailOAuth2": {
          "id": "35",
          "name": "Angel Personal Gmail"
        }
      },
      "notesInFlow": true,
      "typeVersion": 2.1,
      "alwaysOutputData": true
    },
    {
      "id": "3bddaecc-ee49-4b66-bf29-4746385c892d",
      "name": "Prüfen ob E-Mails gefunden",
      "type": "n8n-nodes-base.if",
      "position": [
        1248,
        16
      ],
      "parameters": {
        "options": {},
        "conditions": {
          "options": {
            "version": 2,
            "leftValue": "",
            "caseSensitive": true,
            "typeValidation": "strict"
          },
          "combinator": "and",
          "conditions": [
            {
              "id": "7a24b35c-682a-4e58-9538-8d8a46e0e502",
              "operator": {
                "type": "string",
                "operation": "exists",
                "singleValue": true
              },
              "leftValue": "={{ $json.id }}",
              "rightValue": ""
            }
          ]
        }
      },
      "typeVersion": 2.2
    },
    {
      "id": "9d6dc5c7-1a44-437d-b78f-deee027a8b75",
      "name": "E-Mails formatieren",
      "type": "n8n-nodes-base.set",
      "position": [
        1472,
        -224
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "1be94e55-fe3b-4191-98f2-19982bdab5a1",
              "name": "message",
              "type": "string",
              "value": "={{ $json.headers.to }}\n{{ $json.headers.from }}\nDate: {{ $json.date }}\nSubject: {{ $json.subject }}\nText HTML: {{ $json.html }}\n"
            }
          ]
        }
      },
      "typeVersion": 3.4
    },
    {
      "id": "de8842de-e2e3-4ba7-99d2-0abfe8355e1e",
      "name": "E-Mails zusammenführen",
      "type": "n8n-nodes-base.aggregate",
      "position": [
        1696,
        -224
      ],
      "parameters": {
        "options": {},
        "fieldsToAggregate": {
          "fieldToAggregate": [
            {
              "renameField": true,
              "outputFieldName": "messages",
              "fieldToAggregate": "message"
            }
          ]
        }
      },
      "typeVersion": 1
    },
    {
      "id": "dbd5a80a-207e-4bfc-9d4f-6f7f47bd5c79",
      "name": "Memo-KI-Agent",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        1920,
        -224
      ],
      "parameters": {
        "text": "=Transaction Information:\nTransaction Date: {{ $('Loop Over Transactions').item.json.date }}\nAmount: {{ $('Loop Over Transactions').item.json.amount }}\nPayee: {{ $('Loop Over Transactions').item.json.payee_name }}\nPayee Line: {{ $('Loop Over Transactions').item.json.import_payee_name_original }}\n\nEmail Information:\n{{ $json.messages }}",
        "options": {
          "systemMessage": "=You are an intelligent parser and summarizer for purchase confirmation emails. You will receive one or more emails related to an Amazon purchase, including possible duplicates, shipping notices, delivery confirmations, or irrelevant messages.\n\nYour task:\n\n1. **Determine which email(s)** contain the most *complete and accurate purchase information* — that means product names and prices from the order confirmation or payment receipt, not shipping or delivery notices.\n2. **Extract all purchased items and their prices** from the most relevant email(s). If multiple emails contain overlapping information, deduplicate and keep the clearest version.\n3. **Summarize** the purchase in a single, concise line suitable for a YNAB transaction memo, with a strict limit of **499 characters**.\n4. Format your summary as:\n\n   ```\n   Item1 ($X), Item2 ($Y), Item3 ($Z) — Total $TOTAL\n   ```\n\n   Abbreviate item names as needed to fit within the limit while keeping them understandable.\n5. If the email set doesn’t contain a valid purchase receipt, respond with:\n\n   ```\n   No valid purchase information found.\n   ```\n\nGuidelines:\n\n* Prioritize **accuracy of prices** and **clarity of product names**.\n* Ignore shipping details, delivery updates, recommendations, or unrelated text.\n* Only include **items actually purchased**.\n* If multiple identical items were bought, include a count like `2x Charger ($15 each)`.\n* If an email contains multiple orders, only include details for the order in question, by figuring out what items in the email match the Transaction Information. Only output items above the Order Total that matches the transaction amount (even if there is no specific amount for each. If there is no specific amount for each item then just output the items without the price, but ensure to include the items).\n\nYou have the following tools to help with calculating values:\n{tools}\n\n\nOutput only the final summary line or no valid purchase line, nothing else.\n"
        },
        "promptType": "define"
      },
      "typeVersion": 2.2
    },
    {
      "id": "db7390de-f066-441f-bf54-e8960e69fbba",
      "name": "Prüfen ob KI Artikel analysieren kann",
      "type": "n8n-nodes-base.if",
      "position": [
        2304,
        -224
      ],
      "parameters": {
        "options": {},
        "conditions": {
          "options": {
            "version": 2,
            "leftValue": "",
            "caseSensitive": true,
            "typeValidation": "strict"
          },
          "combinator": "and",
          "conditions": [
            {
              "id": "1837942d-4a55-4e7c-bc6c-cebee7d19648",
              "operator": {
                "type": "string",
                "operation": "notContains"
              },
              "leftValue": "={{ $json.output }}",
              "rightValue": "No valid purchase information found."
            }
          ]
        }
      },
      "typeVersion": 2.2
    },
    {
      "id": "8f7951b9-c3a1-4909-ad55-80b251461002",
      "name": "Haftnotiz1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -192,
        -160
      ],
      "parameters": {
        "color": 7,
        "width": 720,
        "height": 384,
        "content": "## Filter out unneeded Transactions\nThe workflow first extracts the transactions, then it extracts only the data needed to process the memo. Then it checks if it's an Amazon transaction, and if the memo field is up empty or not."
      },
      "typeVersion": 1
    },
    {
      "id": "1445b7c0-7691-416a-b794-593fb8cb7e36",
      "name": "Haftnotiz2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        544,
        -176
      ],
      "parameters": {
        "color": 7,
        "height": 400,
        "content": "## Loop through Transactions\nFrom there, each of the transactions is processed individually. "
      },
      "typeVersion": 1
    },
    {
      "id": "7e62c4a0-d0e6-42bc-9a82-489c0e3fcc62",
      "name": "Haftnotiz3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        800,
        -368
      ],
      "parameters": {
        "color": 7,
        "width": 848,
        "height": 592,
        "content": "## Analyze Emails for Transaction Data\nFirst, the email account is searched for emails from Amazon. It checks 5 days before and after the transaction ensure that it's not missed. From there the emails are smushed together into a single JSON object to pass along into the AI Agent. "
      },
      "typeVersion": 1
    },
    {
      "id": "1121b31a-268d-47af-841c-34ac45565cf5",
      "name": "Haftnotiz4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2032,
        -416
      ],
      "parameters": {
        "color": 7,
        "width": 896,
        "height": 640,
        "content": "## Update Memo Field and Move on to next Transaction\nFrom there, the memo field is updated on each Transaction. If the AI was able to find the price data it needs, it uses that to update the memo field. The memo field is limited to around 500 characters, so it has to make the item names more concise. If items are not found, it updates the memo with a hardcoded message to let you know that you need to locate it yourself. This also prevents a transaction from constantly running through the AI agent. At the end we have a rate limiting wait to ensure the AI doesn't get overwhelmed with too many requests at once. Check your AI model API limits to set the wait value correctly. "
      },
      "typeVersion": 1
    },
    {
      "id": "f92b9e36-eae9-41bc-86cb-cf3bc70019bd",
      "name": "Haftnotiz5",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1664,
        -608
      ],
      "parameters": {
        "color": 7,
        "width": 352,
        "height": 832,
        "content": "## Use AI to Extract information\nThe AI agent then receives all the emails and the transaction information, and uses that to extract the information needed using the System Prompt. You can use any AI you wish, but your results may vary. \n- ChatGPT is currently best for this, however it's the most expensive. \n- Google Gemini has a free tier, however it's limited depending on your model.\n\n\n⚠️ _Warning: I am feeding the AI the most verbose emails to ensure items are found even in hidden HTML fields, but it can be updated to reduce cost by adding an html to markdown converter which may help reduce tokens at the cost of accuracy._"
      },
      "typeVersion": 1
    },
    {
      "id": "3559c8c5-e554-467e-9c28-ea05a2d0d02e",
      "name": "Haftnotiz6",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -656,
        -128
      ],
      "parameters": {
        "color": 3,
        "width": 256,
        "height": 352,
        "content": "### Update with your budget id\nTo get the budget ID, login to the app, and look in your url for the portion with Xs in my example. Update the URL with it: https://app.ynab.com/XXXXXXXX-XXX-XXX-XXX-XXXXXXX/budget"
      },
      "typeVersion": 1
    },
    {
      "id": "974d2930-8924-4ced-b818-0ff7e6ae2f31",
      "name": "Keine E-Mails gefunden",
      "type": "n8n-nodes-base.noOp",
      "position": [
        1600,
        32
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "209cb59b-fa92-4695-9fcc-14a2d0c31483",
      "name": "BudgetID",
      "type": "n8n-nodes-base.set",
      "position": [
        -576,
        48
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "33f4d69a-598d-4d78-8586-b8b2cd6e2d75",
              "name": "budgetid",
              "type": "string",
              "value": "XXXXX"
            }
          ]
        }
      },
      "typeVersion": 3.4
    }
  ],
  "pinData": {
    "When clicking ‘Test workflow’": [
      {}
    ]
  },
  "connections": {
    "d5b14c55-eac1-4bbb-9e94-42a4ebd641e1": {
      "main": [
        [
          {
            "node": "209cb59b-fa92-4695-9fcc-14a2d0c31483",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "209cb59b-fa92-4695-9fcc-14a2d0c31483": {
      "main": [
        [
          {
            "node": "34f849a7-fb42-4eb8-951d-ede8d2102381",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "2810da77-72ac-4ee3-b563-ef0a71d0a5f7": {
      "ai_tool": [
        [
          {
            "node": "dbd5a80a-207e-4bfc-9d4f-6f7f47bd5c79",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "9d6dc5c7-1a44-437d-b78f-deee027a8b75": {
      "main": [
        [
          {
            "node": "de8842de-e2e3-4ba7-99d2-0abfe8355e1e",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "dbd5a80a-207e-4bfc-9d4f-6f7f47bd5c79": {
      "main": [
        [
          {
            "node": "db7390de-f066-441f-bf54-e8960e69fbba",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "974d2930-8924-4ced-b818-0ff7e6ae2f31": {
      "main": [
        [
          {
            "node": "c8db0869-a551-4e56-84bc-d3c99ccd8d83",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "3bd820de-86fe-4ddf-a876-fc7756cd0162": {
      "main": [
        [
          {
            "node": "209cb59b-fa92-4695-9fcc-14a2d0c31483",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "70f26d90-fffb-491b-9895-32bdd9d29ed5": {
      "ai_languageModel": [
        [
          {
            "node": "dbd5a80a-207e-4bfc-9d4f-6f7f47bd5c79",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "221a624e-815e-4a56-9096-7e9e3030a2d5": {
      "main": [
        [
          {
            "node": "e9062f61-44e0-464f-ba76-8303650244a0",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "de8842de-e2e3-4ba7-99d2-0abfe8355e1e": {
      "main": [
        [
          {
            "node": "dbd5a80a-207e-4bfc-9d4f-6f7f47bd5c79",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "3bddaecc-ee49-4b66-bf29-4746385c892d": {
      "main": [
        [
          {
            "node": "9d6dc5c7-1a44-437d-b78f-deee027a8b75",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "974d2930-8924-4ced-b818-0ff7e6ae2f31",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "5571fbfd-9c84-445a-9972-792dcb2a9e42": {
      "main": [
        [
          {
            "node": "062a5050-9e21-4e16-9126-9b84108a51d0",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "51438377-a3e4-4224-be1d-2d7b7fb0f63c": {
      "main": [
        [],
        [
          {
            "node": "3c1f3a54-c2ee-4a50-9cea-8ac85cce3bb3",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "79d3aa72-8fce-4367-a6c2-eb0cb59406e6": {
      "main": [
        [
          {
            "node": "221a624e-815e-4a56-9096-7e9e3030a2d5",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "c8db0869-a551-4e56-84bc-d3c99ccd8d83": {
      "main": [
        [
          {
            "node": "5571fbfd-9c84-445a-9972-792dcb2a9e42",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "e9062f61-44e0-464f-ba76-8303650244a0": {
      "main": [
        [
          {
            "node": "467f2ece-bf82-4526-ab99-11ebce6e2662",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "467f2ece-bf82-4526-ab99-11ebce6e2662": {
      "main": [
        [
          {
            "node": "51438377-a3e4-4224-be1d-2d7b7fb0f63c",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "094e245a-ab4a-4b3d-b60c-bac5d23028e8": {
      "main": [
        [
          {
            "node": "5571fbfd-9c84-445a-9972-792dcb2a9e42",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "db7390de-f066-441f-bf54-e8960e69fbba": {
      "main": [
        [
          {
            "node": "094e245a-ab4a-4b3d-b60c-bac5d23028e8",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "c8db0869-a551-4e56-84bc-d3c99ccd8d83",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "34f849a7-fb42-4eb8-951d-ede8d2102381": {
      "main": [
        [
          {
            "node": "79d3aa72-8fce-4367-a6c2-eb0cb59406e6",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "6ee18fe3-405a-49a3-8f86-11ccefda3548": {
      "main": [
        [
          {
            "node": "209cb59b-fa92-4695-9fcc-14a2d0c31483",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "3c1f3a54-c2ee-4a50-9cea-8ac85cce3bb3": {
      "main": [
        [
          {
            "node": "3bddaecc-ee49-4b66-bf29-4746385c892d",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "062a5050-9e21-4e16-9126-9b84108a51d0": {
      "main": [
        [
          {
            "node": "51438377-a3e4-4224-be1d-2d7b7fb0f63c",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}
Häufig gestellte Fragen

Wie verwende ich diesen Workflow?

Kopieren Sie den obigen JSON-Code, erstellen Sie einen neuen Workflow in Ihrer n8n-Instanz und wählen Sie "Aus JSON importieren". Fügen Sie die Konfiguration ein und passen Sie die Anmeldedaten nach Bedarf an.

Für welche Szenarien ist dieser Workflow geeignet?

Experte - Dokumentenextraktion, KI-Zusammenfassung

Ist es kostenpflichtig?

Dieser Workflow ist völlig kostenlos. Beachten Sie jedoch, dass Drittanbieterdienste (wie OpenAI API), die im Workflow verwendet werden, möglicherweise kostenpflichtig sind.

Workflow-Informationen
Schwierigkeitsgrad
Experte
Anzahl der Nodes30
Kategorie2
Node-Typen16
Schwierigkeitsbeschreibung

Für fortgeschrittene Benutzer, komplexe Workflows mit 16+ Nodes

Autor
Angel Menendez

Angel Menendez

@djangelic

Angel Menendez is a Staff Developer Advocate at n8n.io, specializing in low-code tools for cybersecurity workflows. From Puerto Rico, Angel's tech journey began by helping his father translate technical books. He later started a web development business and transitioned from a career as a flight attendant to cybersecurity engineering. His workflows have saved companies significant time. Outside work, Angel enjoys time with his two sons, riding electric bikes, reading, and exploring new places.

Externe Links
Auf n8n.io ansehen

Diesen Workflow teilen

Kategorien

Kategorien: 34