Extraction de données de factures PDF par e-mail pilotée par l'IA

Avancé

Ceci est unFinance, AIworkflow d'automatisation du domainecontenant 27 nœuds.Utilise principalement des nœuds comme Set, Gmail, Merge, Airtable, SplitOut, combinant la technologie d'intelligence artificielle pour une automatisation intelligente. Extraction basée sur l'IA des données de factures PDF depuis les e-mails vers Airtable, intégrant GPT-4o

Prérequis
  • Compte Google et informations d'identification Gmail API
  • Clé API Airtable
  • Peut nécessiter les informations d'identification d'authentification de l'API cible
  • Clé API OpenAI
Aperçu du workflow
Visualisation des connexions entre les nœuds, avec support du zoom et du déplacement
Exporter le workflow
Copiez la configuration JSON suivante dans n8n pour importer et utiliser ce workflow
{
  "meta": {
    "instanceId": "c8c9ba5d3eb26ae47a06d24ff164a01c0d73ed4753a74903c2bb609d434a0f6b",
    "templateId": "2320",
    "templateCredsSetupCompleted": true
  },
  "nodes": [
    {
      "id": "7076854e-c7e8-45b5-9e5e-16678bffa254",
      "name": "OpenAI Model",
      "type": "@n8n/n8n-nodes-langchain.lmOpenAi",
      "position": [
        1120,
        1460
      ],
      "parameters": {
        "model": {
          "__rl": true,
          "mode": "list",
          "value": "gpt-4o",
          "cachedResultName": "gpt-4o"
        },
        "options": {
          "temperature": 0
        }
      },
      "credentials": {
        "openAiApi": {
          "id": "IscXryYQZrfSUSkH",
          "name": "OpenAi account"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "00819f1c-2c60-4b7c-b395-445ec05fd898",
      "name": "Analyseur de sortie structurée",
      "type": "@n8n/n8n-nodes-langchain.outputParserStructured",
      "position": [
        1300,
        1460
      ],
      "parameters": {
        "jsonSchema": "{\n  \"Invoice Date\":            { \"type\": \"string\", \"format\": \"date\" },\n\"Due Date\":            { \"type\": \"string\", \"format\": \"date\" },\n  \"Invoice Number\":          { \"type\": \"string\" },\n  \"Vendor Name\":           { \"type\": \"string\" },\n  \"Vendor Tax ID\":         { \"type\": \"string\" },\n  \"Product Name\": { \"type\": \"string\" },\n  \"Price without Tax\":       { \"type\": \"number\" },\n  \"Price with Tax\":          { \"type\": \"number\" }\n}"
      },
      "typeVersion": 1.1
    },
    {
      "id": "1acf2c60-c2b9-4f78-94a4-0711c8bd71ab",
      "name": "Note adhésive5",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -200,
        180
      ],
      "parameters": {
        "color": 4,
        "width": 760,
        "height": 533,
        "content": "# Invoice Processing Automation\n\n### This template is the automation behind a simple incoming invoice automation tool (AP automation) tool built in Airtable.\n\n### Follow the instructions below to get all parts working!\n\n## Video walkthrough and demo: https://www.youtube.com/watch?v=rfu4MSvtpAw\n\n## To get a similar business tool tailored to your processes, book a call with us: https://automable.ai/book-a-call/, or write to me at: vasarmilan@gmail.com\n\n# **Step by step setup instructions below: ⬇️⬇️**"
      },
      "typeVersion": 1
    },
    {
      "id": "5f9b507f-4dc1-4853-bf71-a64f2f4b55c1",
      "name": "Mapper la sortie",
      "type": "n8n-nodes-base.set",
      "position": [
        1460,
        1300
      ],
      "parameters": {
        "mode": "raw",
        "options": {},
        "jsonOutput": "={{ $json.output }}"
      },
      "typeVersion": 3.3
    },
    {
      "id": "d22744cd-151d-4b92-b4f2-4a5b9ceb4ee7",
      "name": "Appliquer les règles d'extraction de données",
      "type": "@n8n/n8n-nodes-langchain.chainLlm",
      "position": [
        1120,
        1300
      ],
      "parameters": {
        "text": "=Given the following invoice in the <invoice> xml tags, extract the following information as listed below.\n\nIf you cannot the information for a specific item, then leave blank and skip to the next. Do **not come up with example or hallucinated information in any case!**\n\nInvoice Date format: YYYY/MM/DD\n\n{\n  \"Invoice Date\":            { \"type\": \"string\", \"format\": \"date\" },\n  \"Due Date\":            { \"type\": \"string\", \"format\": \"date\" },\n  \"Invoice Number\":          { \"type\": \"string\" },\n  \"Vendor Name\":           { \"type\": \"string\" },\n  \"Vendor Tax ID\":         { \"type\": \"string\" },\n  \"Product Name\": { \"type\": \"string\" },\n  \"Price without Tax\":       { \"type\": \"number\" },\n  \"Price with Tax\":          { \"type\": \"number\" }\n}\n\nIf no tax displayed, price with and without should be the same!\n\n<invoice>{{ $json.choices[0].message.content }}</invoice>",
        "promptType": "define",
        "hasOutputParser": true
      },
      "typeVersion": 1.4
    },
    {
      "id": "31b27190-bf01-4d2a-82ad-621e89bfbf6f",
      "name": "Gmail1",
      "type": "n8n-nodes-base.gmail",
      "position": [
        960,
        600
      ],
      "webhookId": "3561fdfa-c7bd-4d8b-a4c8-66da23965cc2",
      "parameters": {
        "simple": false,
        "filters": {
          "q": "in:inbox has:attachment invoice -label:invoice_checked "
        },
        "options": {
          "downloadAttachments": true
        },
        "operation": "getAll"
      },
      "credentials": {
        "gmailOAuth2": {
          "id": "E3alb5H7xlfxfBur",
          "name": "Automable Demo Gmail"
        }
      },
      "typeVersion": 2.1
    },
    {
      "id": "955fd212-11f7-4b2d-8e5c-a297509cbf08",
      "name": "Note adhésive1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        900,
        440
      ],
      "parameters": {
        "width": 230,
        "height": 280,
        "content": "Gets all messages that:\n1) Have an attachment\n2) Do not have the label invoice_checked\n3) Text matches invoice"
      },
      "typeVersion": 1
    },
    {
      "id": "712495a2-0c3d-452b-bd10-b19f6bea2178",
      "name": "Obtenir toutes les img_url",
      "type": "n8n-nodes-base.set",
      "position": [
        1760,
        600
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "7715e33a-c5cc-4a22-aa28-ac19a24bbd7c",
              "name": "url",
              "type": "string",
              "value": "={{ $json.Url }}"
            }
          ]
        }
      },
      "typeVersion": 3.4
    },
    {
      "id": "caa879e0-54c5-40c8-83b2-b59b1b74af67",
      "name": "Analyser l'image",
      "type": "@n8n/n8n-nodes-langchain.openAi",
      "position": [
        800,
        1300
      ],
      "parameters": {
        "text": "You can see the image of an invoice.\n\nExtract the following information as listed below.\n\nIn any way, extract everything from the image.\n\nIf you cannot the information for a specific item, then leave blank and skip to the next. Do **not come up with example or hallucinated information in any case!**\n\nInvoice date\nInvoice Due Date\n-- comment: sometimes instead of an explicit date it would have \"immediate\" payment, then it's the same as date; or eg. \"30 days from receipt\" in which case it's date + 30 days etc.)\ninvoice number\nSupplier name\nSupplier Tax ID\nName of Product or Service (if there are multiple, make it a general name, such as \"marketing services\" or \"computer parts and accessories\")\nPrice without Tax\nPrice with Tax (total price)\nIf no tax displayed, price with and without should be the same!\n\nRespond in a nice structured, easy to read format.\n",
        "modelId": {
          "__rl": true,
          "mode": "list",
          "value": "gpt-4o",
          "cachedResultName": "GPT-4O"
        },
        "options": {},
        "resource": "image",
        "simplify": false,
        "imageUrls": "={{ $('Get image data').item.json.Url }}",
        "operation": "analyze"
      },
      "credentials": {
        "openAiApi": {
          "id": "IscXryYQZrfSUSkH",
          "name": "OpenAi account"
        }
      },
      "typeVersion": 1.8
    },
    {
      "id": "b0052237-4129-460f-ae38-69680760c78b",
      "name": "Obtenir les données d'image",
      "type": "n8n-nodes-base.splitOut",
      "position": [
        1500,
        600
      ],
      "parameters": {
        "options": {},
        "fieldToSplitOut": "Files"
      },
      "typeVersion": 1
    },
    {
      "id": "f7752ed2-5497-42a9-ab41-4fcee7faf52a",
      "name": "PDF -> JPG - ConvertAPI",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        1260,
        600
      ],
      "parameters": {
        "url": "https://v2.convertapi.com/convert/pdf/to/jpg",
        "method": "POST",
        "options": {},
        "sendBody": true,
        "contentType": "multipart-form-data",
        "sendHeaders": true,
        "authentication": "genericCredentialType",
        "bodyParameters": {
          "parameters": [
            {
              "name": "StoreFile",
              "value": "true"
            },
            {
              "name": "ImageOutputFormat",
              "value": "jpg"
            },
            {
              "name": "File",
              "parameterType": "formBinaryData",
              "inputDataFieldName": "attachment_0"
            }
          ]
        },
        "genericAuthType": "httpHeaderAuth",
        "headerParameters": {
          "parameters": [
            {}
          ]
        }
      },
      "credentials": {
        "httpHeaderAuth": {
          "id": "sRBpsZNt4u2787GP",
          "name": "ConvertAPI Auth"
        }
      },
      "retryOnFail": true,
      "typeVersion": 4.2,
      "waitBetweenTries": 5000
    },
    {
      "id": "0625e6f0-d8ed-469e-a551-e82225a97144",
      "name": "Obtenir la liste des fournisseurs",
      "type": "n8n-nodes-base.airtable",
      "position": [
        1160,
        900
      ],
      "parameters": {
        "base": {
          "__rl": true,
          "mode": "list",
          "value": "appFMuGzhsUxbFKUh",
          "cachedResultUrl": "https://airtable.com/appFMuGzhsUxbFKUh",
          "cachedResultName": "Invoice Processing"
        },
        "table": {
          "__rl": true,
          "mode": "list",
          "value": "tblDSjYz7MBFPh0PR",
          "cachedResultUrl": "https://airtable.com/appFMuGzhsUxbFKUh/tblDSjYz7MBFPh0PR",
          "cachedResultName": "Vendors"
        },
        "options": {},
        "operation": "search"
      },
      "credentials": {
        "airtableTokenApi": {
          "id": "lkxZWCd27TyEahCT",
          "name": "Airtable Personal Access Token account"
        }
      },
      "typeVersion": 2.1
    },
    {
      "id": "6d808c56-0449-43c8-afdb-2097a240ef87",
      "name": "Fusionner",
      "type": "n8n-nodes-base.merge",
      "position": [
        1620,
        880
      ],
      "parameters": {
        "mode": "combine",
        "options": {},
        "combineBy": "combineAll"
      },
      "typeVersion": 3.1
    },
    {
      "id": "c7d36fae-d497-4ed2-be0f-2b2a699fb9f6",
      "name": "Modifier les champs",
      "type": "n8n-nodes-base.set",
      "position": [
        1360,
        900
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "d8a97fc9-0ca8-4a27-a305-107409755d78",
              "name": "vendors",
              "type": "array",
              "value": "={{ $input.all().map(({ json: { id, Name } }) => ({ id, Name })) }}"
            }
          ]
        }
      },
      "executeOnce": true,
      "typeVersion": 3.4
    },
    {
      "id": "69fbdb0d-8eff-4de2-bb9c-8261ebe7f67a",
      "name": "Extracteur d'informations",
      "type": "@n8n/n8n-nodes-langchain.informationExtractor",
      "position": [
        1840,
        1400
      ],
      "parameters": {
        "text": "=List of vendors:\n{{ JSON.stringify($json.vendors) }}\n\nVendor info from the invoice:\nVendor name: {{ $json['Vendor Name'] }}\nVendor Tax ID: {{ $json['Vendor Tax ID'] }}\n\nRespond **only** with the ",
        "options": {
          "systemPromptTemplate": "You are an expert extraction algorithm.\nOnly extract relevant information from the text.\nIf you do not know the value of an attribute asked to extract, you may omit the attribute's value."
        },
        "attributes": {
          "attributes": [
            {
              "name": "vendor_id",
              "required": true,
              "description": "Vendor ID. Or empty string (\"\") if there is no match."
            }
          ]
        }
      },
      "typeVersion": 1
    },
    {
      "id": "134cb237-5500-4575-802a-ae8759104f92",
      "name": "OpenAI Chat Model",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        1860,
        1580
      ],
      "parameters": {
        "model": {
          "__rl": true,
          "mode": "list",
          "value": "gpt-4o",
          "cachedResultName": "gpt-4o"
        },
        "options": {}
      },
      "credentials": {
        "openAiApi": {
          "id": "IscXryYQZrfSUSkH",
          "name": "OpenAi account"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "4b32647c-1521-4279-8223-dbbc1c1eb714",
      "name": "Fusionner1",
      "type": "n8n-nodes-base.merge",
      "position": [
        2380,
        780
      ],
      "parameters": {
        "mode": "combine",
        "options": {},
        "combineBy": "combineByPosition",
        "numberInputs": 3
      },
      "typeVersion": 3.1
    },
    {
      "id": "6ad25f9f-f1e5-4468-9862-b0c93bc9b19d",
      "name": "Airtable",
      "type": "n8n-nodes-base.airtable",
      "position": [
        2620,
        780
      ],
      "parameters": {
        "base": {
          "__rl": true,
          "mode": "list",
          "value": "appFMuGzhsUxbFKUh",
          "cachedResultUrl": "https://airtable.com/appFMuGzhsUxbFKUh",
          "cachedResultName": "Invoice Processing"
        },
        "table": {
          "__rl": true,
          "mode": "list",
          "value": "tblc95K9ITUgglNIC",
          "cachedResultUrl": "https://airtable.com/appFMuGzhsUxbFKUh/tblc95K9ITUgglNIC",
          "cachedResultName": "Invoices"
        },
        "columns": {
          "value": {
            "Vendor": "={{[ $json.output.vendor_id  ]}}",
            "Invoice": "={{ [ { url: $json.url }] }}",
            "Due Date": "={{ $json['Due Date'] || null }}",
            "Invoice Date": "={{ $json['Invoice Date'] }}",
            "Product Name": "={{ $json['Product Name'] }}",
            "Invoice Number": "=Invoice {{ $json['Invoice Number'] }}",
            "Price with Tax": "={{ $json['Price with Tax'] }}",
            "Price without Tax": "={{ $json['Price without Tax'] }}"
          },
          "schema": [
            {
              "id": "id",
              "type": "string",
              "display": true,
              "removed": true,
              "readOnly": true,
              "required": false,
              "displayName": "id",
              "defaultMatch": true
            },
            {
              "id": "Invoice Number",
              "type": "string",
              "display": true,
              "removed": false,
              "readOnly": false,
              "required": false,
              "displayName": "Invoice Number",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Invoice Date",
              "type": "dateTime",
              "display": true,
              "removed": false,
              "readOnly": false,
              "required": false,
              "displayName": "Invoice Date",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Due Date",
              "type": "dateTime",
              "display": true,
              "removed": false,
              "readOnly": false,
              "required": false,
              "displayName": "Due Date",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Product Name",
              "type": "string",
              "display": true,
              "removed": false,
              "readOnly": false,
              "required": false,
              "displayName": "Product Name",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Price without Tax",
              "type": "number",
              "display": true,
              "removed": false,
              "readOnly": false,
              "required": false,
              "displayName": "Price without Tax",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Price with Tax",
              "type": "number",
              "display": true,
              "removed": false,
              "readOnly": false,
              "required": false,
              "displayName": "Price with Tax",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Vendor",
              "type": "array",
              "display": true,
              "removed": false,
              "readOnly": false,
              "required": false,
              "displayName": "Vendor",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Vendor Name",
              "type": "string",
              "display": true,
              "removed": true,
              "readOnly": true,
              "required": false,
              "displayName": "Vendor Name",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Invoice",
              "type": "array",
              "display": true,
              "removed": false,
              "readOnly": false,
              "required": false,
              "displayName": "Invoice",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Approve",
              "type": "string",
              "display": true,
              "removed": true,
              "readOnly": true,
              "required": false,
              "displayName": "Approve",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Status",
              "type": "options",
              "display": true,
              "options": [
                {
                  "name": "New",
                  "value": "New"
                },
                {
                  "name": "Approved",
                  "value": "Approved"
                }
              ],
              "removed": true,
              "readOnly": false,
              "required": false,
              "displayName": "Status",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            }
          ],
          "mappingMode": "defineBelow",
          "matchingColumns": [
            "Invoice Number"
          ],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        },
        "options": {
          "typecast": true
        },
        "operation": "upsert"
      },
      "credentials": {
        "airtableTokenApi": {
          "id": "lkxZWCd27TyEahCT",
          "name": "Airtable Personal Access Token account"
        }
      },
      "typeVersion": 2.1
    },
    {
      "id": "9e775f8d-4af5-4212-8c65-36e3e5c161f2",
      "name": "Gmail Trigger",
      "type": "n8n-nodes-base.gmailTrigger",
      "position": [
        720,
        600
      ],
      "parameters": {
        "filters": {},
        "pollTimes": {
          "item": [
            {
              "mode": "everyHour"
            }
          ]
        }
      },
      "credentials": {
        "gmailOAuth2": {
          "id": "duhSaIumY2CifCex",
          "name": "Gmail account"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "39afb11e-f98a-4d50-b31c-4b1806b6e483",
      "name": "Gmail",
      "type": "n8n-nodes-base.gmail",
      "position": [
        2820,
        780
      ],
      "webhookId": "9857fdd5-0c41-4b6f-80c2-2dba8dd3a086",
      "parameters": {
        "labelIds": [
          "Label_292293622344874549"
        ],
        "messageId": "={{ $('Gmail1').item.json.id }}",
        "operation": "addLabels"
      },
      "credentials": {
        "gmailOAuth2": {
          "id": "E3alb5H7xlfxfBur",
          "name": "Automable Demo Gmail"
        }
      },
      "typeVersion": 2.1
    },
    {
      "id": "ce68d5b8-1532-459f-b6fe-33f46e3f9186",
      "name": "Note adhésive",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -200,
        740
      ],
      "parameters": {
        "color": 5,
        "width": 440,
        "height": 460,
        "content": "# *1. Set up Airtable*\n\n## 1 - [Register an Airtable account here](https://airtable.partnerlinks.io/xfs4x6q28m4x)\n\n## 2 - Duplicate [this base](https://airtable.com/appFMuGzhsUxbFKUh/shrOP5l52wxZ5IYSI)\n\n## 3 - Follow the [n8n Airtable credential instructions](https://docs.n8n.io/integrations/builtin/credentials/airtable/). PAT is better. Add the credential to the Airtable nodes.\n\n## 4 - Click to both Airtable nodes on the right, and choose the table on the yellow note ➡️➡️"
      },
      "typeVersion": 1
    },
    {
      "id": "89c5f457-fe92-43d2-b4ca-7cd5624f5cb1",
      "name": "Note adhésive3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -200,
        1220
      ],
      "parameters": {
        "color": 5,
        "width": 440,
        "height": 420,
        "content": "# 2. Set Up ConvertAPI\n\n## 1 - [Register a ConvertAPI account here](https://convertapi.com?ref=cq5du)\n\n## 2 - Get an API key, and save it somewhere safe\n\n## 3 - Create a Header Auth credential in Credentials, and add it to the \"PDF -> JPG - ConvertAPI\" Node in the automation."
      },
      "typeVersion": 1
    },
    {
      "id": "896d3cd8-079e-4976-ae6b-61b73cd8c100",
      "name": "Note adhésive4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2560,
        680
      ],
      "parameters": {
        "height": 100,
        "content": "### TODO: Change the Base to the duplicated base, and the table to \"Invoices\""
      },
      "typeVersion": 1
    },
    {
      "id": "92a526d0-c116-4b1e-9ad2-5c1f45e0a6b8",
      "name": "Note adhésive6",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1100,
        1040
      ],
      "parameters": {
        "height": 100,
        "content": "### TODO: Change the Base to the duplicated base, and the table to \"Vendors\""
      },
      "typeVersion": 1
    },
    {
      "id": "f4635b8b-25d5-4e23-af98-0d2d25040d90",
      "name": "Note adhésive7",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -200,
        1660
      ],
      "parameters": {
        "color": 5,
        "width": 440,
        "height": 420,
        "content": "# 3. Set up Gmail\n\n## 1 - Create the \"invoice_checked\" label\n\n## 2 - [Follow the instructions](https://docs.n8n.io/integrations/builtin/credentials/google/oauth-single-service/#finish-your-n8n-credential) by n8n to set this up. Video available at the end of the article\n\n## 3 - Choose your Gmail credentials, and add to all Gmail nodes if needed."
      },
      "typeVersion": 1
    },
    {
      "id": "903f5ee9-fde9-4225-949f-d02b0e820bbd",
      "name": "Note adhésive8",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -200,
        2100
      ],
      "parameters": {
        "color": 5,
        "width": 440,
        "height": 220,
        "content": "# 4. Set up OpenAI\n\n## Follow the [n8n instructions](https://docs.n8n.io/integrations/builtin/credentials/openai/) to connect your OpenAI platform account."
      },
      "typeVersion": 1
    },
    {
      "id": "58c3cdaf-3912-40d3-9b95-8b610ae95540",
      "name": "Note adhésive9",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1180,
        520
      ],
      "parameters": {
        "height": 100,
        "content": "### TODO: Add the ConvertAPI Header Auth"
      },
      "typeVersion": 1
    }
  ],
  "pinData": {},
  "connections": {
    "6d808c56-0449-43c8-afdb-2097a240ef87": {
      "main": [
        [
          {
            "node": "69fbdb0d-8eff-4de2-bb9c-8261ebe7f67a",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "31b27190-bf01-4d2a-82ad-621e89bfbf6f": {
      "main": [
        [
          {
            "node": "f7752ed2-5497-42a9-ab41-4fcee7faf52a",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "4b32647c-1521-4279-8223-dbbc1c1eb714": {
      "main": [
        [
          {
            "node": "6ad25f9f-f1e5-4468-9862-b0c93bc9b19d",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "6ad25f9f-f1e5-4468-9862-b0c93bc9b19d": {
      "main": [
        [
          {
            "node": "39afb11e-f98a-4d50-b31c-4b1806b6e483",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "5f9b507f-4dc1-4853-bf71-a64f2f4b55c1": {
      "main": [
        [
          {
            "node": "6d808c56-0449-43c8-afdb-2097a240ef87",
            "type": "main",
            "index": 1
          },
          {
            "node": "4b32647c-1521-4279-8223-dbbc1c1eb714",
            "type": "main",
            "index": 2
          }
        ]
      ]
    },
    "c7d36fae-d497-4ed2-be0f-2b2a699fb9f6": {
      "main": [
        [
          {
            "node": "6d808c56-0449-43c8-afdb-2097a240ef87",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "7076854e-c7e8-45b5-9e5e-16678bffa254": {
      "ai_languageModel": [
        [
          {
            "node": "d22744cd-151d-4b92-b4f2-4a5b9ceb4ee7",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "caa879e0-54c5-40c8-83b2-b59b1b74af67": {
      "main": [
        [
          {
            "node": "d22744cd-151d-4b92-b4f2-4a5b9ceb4ee7",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "9e775f8d-4af5-4212-8c65-36e3e5c161f2": {
      "main": [
        [
          {
            "node": "31b27190-bf01-4d2a-82ad-621e89bfbf6f",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "b0052237-4129-460f-ae38-69680760c78b": {
      "main": [
        [
          {
            "node": "712495a2-0c3d-452b-bd10-b19f6bea2178",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "712495a2-0c3d-452b-bd10-b19f6bea2178": {
      "main": [
        [
          {
            "node": "caa879e0-54c5-40c8-83b2-b59b1b74af67",
            "type": "main",
            "index": 0
          },
          {
            "node": "4b32647c-1521-4279-8223-dbbc1c1eb714",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "134cb237-5500-4575-802a-ae8759104f92": {
      "ai_languageModel": [
        [
          {
            "node": "69fbdb0d-8eff-4de2-bb9c-8261ebe7f67a",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "0625e6f0-d8ed-469e-a551-e82225a97144": {
      "main": [
        [
          {
            "node": "c7d36fae-d497-4ed2-be0f-2b2a699fb9f6",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "69fbdb0d-8eff-4de2-bb9c-8261ebe7f67a": {
      "main": [
        [
          {
            "node": "4b32647c-1521-4279-8223-dbbc1c1eb714",
            "type": "main",
            "index": 1
          }
        ]
      ]
    },
    "f7752ed2-5497-42a9-ab41-4fcee7faf52a": {
      "main": [
        [
          {
            "node": "b0052237-4129-460f-ae38-69680760c78b",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "00819f1c-2c60-4b7c-b395-445ec05fd898": {
      "ai_outputParser": [
        [
          {
            "node": "d22744cd-151d-4b92-b4f2-4a5b9ceb4ee7",
            "type": "ai_outputParser",
            "index": 0
          }
        ]
      ]
    },
    "d22744cd-151d-4b92-b4f2-4a5b9ceb4ee7": {
      "main": [
        [
          {
            "node": "5f9b507f-4dc1-4853-bf71-a64f2f4b55c1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}
Foire aux questions

Comment utiliser ce workflow ?

Copiez le code de configuration JSON ci-dessus, créez un nouveau workflow dans votre instance n8n et sélectionnez "Importer depuis le JSON", collez la configuration et modifiez les paramètres d'authentification selon vos besoins.

Dans quelles scénarios ce workflow est-il adapté ?

Avancé - Finance, Intelligence Artificielle

Est-ce payant ?

Ce workflow est entièrement gratuit et peut être utilisé directement. Veuillez noter que les services tiers utilisés dans le workflow (comme l'API OpenAI) peuvent nécessiter un paiement de votre part.

Informations sur le workflow
Niveau de difficulté
Avancé
Nombre de nœuds27
Catégorie2
Types de nœuds14
Description de la difficulté

Adapté aux utilisateurs avancés, avec des workflows complexes contenant 16+ nœuds

Liens externes
Voir sur n8n.io

Partager ce workflow

Catégories

Catégories: 34