day9_Récupération de mises à jour de cryptomonnaie

Avancé

Ceci est unFinanceworkflow d'automatisation du domainecontenant 26 nœuds.Utilise principalement des nœuds comme If, Set, Switch, Webhook, Function. Analyser le marché des crypto-monnaies avec CoinGecko : indicateurs de volatilité et signaux d'investissement

Prérequis
  • Point de terminaison HTTP Webhook (généré automatiquement par n8n)
  • Peut nécessiter les informations d'identification d'authentification de l'API cible

Catégorie

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
{
  "id": "Uw1r9yGqgPRykfUs",
  "meta": {
    "instanceId": "3fed23de697c60307f3b4f5caeafbeffabaf7bbd62c1b20ae70d5faf5a9806b4"
  },
  "name": "day9_getting_updated_in_crypto",
  "tags": [
    {
      "id": "4zX1mtizlZxTekJP",
      "name": "training-tasks-n8n",
      "createdAt": "2025-04-29T10:41:14.716Z",
      "updatedAt": "2025-04-29T10:41:14.716Z"
    },
    {
      "id": "F1KjxL3SjfvVqZqo",
      "name": "training-n8n",
      "createdAt": "2025-04-29T10:40:13.332Z",
      "updatedAt": "2025-04-29T10:40:13.332Z"
    }
  ],
  "nodes": [
    {
      "id": "745e4849-8c61-4b29-9980-24de93821adb",
      "name": "Récupérer les données de cryptomonnaies",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        220,
        385
      ],
      "parameters": {
        "url": "https://api.coingecko.com/api/v3/coins/markets?vs_currency=usd&order=market_cap_desc&per_page=10&page=1&sparkline=false&price_change_percentage=24h,7d,30d",
        "options": {}
      },
      "typeVersion": 3
    },
    {
      "id": "f4e6c40d-ab60-473b-9961-961eb1fa3505",
      "name": "Calculer les indicateurs du marché",
      "type": "n8n-nodes-base.function",
      "position": [
        660,
        385
      ],
      "parameters": {
        "functionCode": "// Calculate a volatility score based on price changes\nconst item = $input.item.json;\n\n// Extract price change percentages\nconst priceChange24h = item.price_change_percentage_24h || 0;\nconst priceChange7d = item.price_change_percentage_7d_in_currency || 0;\nconst priceChange30d = item.price_change_percentage_30d_in_currency || 0;\n\n// Calculate absolute values to measure volatility regardless of direction\nconst absChange24h = Math.abs(priceChange24h);\nconst absChange7d = Math.abs(priceChange7d);\nconst absChange30d = Math.abs(priceChange30d);\n\n// Calculate a weighted volatility score (more weight to recent changes)\nconst volatilityScore = (absChange24h * 0.5) + (absChange7d * 0.3) + (absChange30d * 0.2);\n\n// Calculate market cap to volume ratio (higher means less liquid/more volatile)\nconst marketCapToVolumeRatio = item.market_cap / (item.total_volume || 1);\n\n// Calculate price to ATH ratio (close to 1 means near all-time high)\nconst priceToAthRatio = item.current_price / (item.ath || item.current_price);\n\n// Calculate a composite market score\nconst marketScore = (\n  (volatilityScore * 0.4) + \n  (Math.min(marketCapToVolumeRatio, 10) * 0.3) + \n  ((1 - priceToAthRatio) * 30) // Invert so coins further from ATH get higher scores\n);\n\n// Add calculated metrics to the item\nitem.volatilityScore = parseFloat(volatilityScore.toFixed(2));\nitem.marketCapToVolumeRatio = parseFloat(marketCapToVolumeRatio.toFixed(2));\nitem.priceToAthRatio = parseFloat(priceToAthRatio.toFixed(4));\nitem.marketScore = parseFloat(marketScore.toFixed(2));\n\n// Add a timestamp for the analysis\nitem.analyzedAt = new Date().toISOString();\n\nreturn {json: item};"
      },
      "typeVersion": 1
    },
    {
      "id": "5d760f94-ca2f-44cc-aef0-83eb2cf438ee",
      "name": "SI Prix 24h en hausse >5%",
      "type": "n8n-nodes-base.if",
      "position": [
        880,
        60
      ],
      "parameters": {
        "conditions": {
          "number": [
            {
              "value1": "={{ $json.price_change_percentage_24h }}",
              "value2": 5,
              "operation": "larger"
            }
          ]
        }
      },
      "typeVersion": 1
    },
    {
      "id": "19ca8650-b642-4910-ac7c-50b1ceb41ffc",
      "name": "SI Prix 24h en baisse >5%",
      "type": "n8n-nodes-base.if",
      "position": [
        1100,
        260
      ],
      "parameters": {
        "conditions": {
          "number": [
            {
              "value1": "={{ $json.price_change_percentage_24h }}",
              "value2": -5
            }
          ]
        }
      },
      "typeVersion": 1
    },
    {
      "id": "c5d69bbb-df7e-4089-b0c8-50653cd936f0",
      "name": "SI Haute volatilité",
      "type": "n8n-nodes-base.if",
      "position": [
        1320,
        560
      ],
      "parameters": {
        "conditions": {
          "number": [
            {
              "value1": "={{ $json.volatilityScore }}",
              "value2": 10,
              "operation": "larger"
            }
          ]
        }
      },
      "typeVersion": 1
    },
    {
      "id": "77902b9a-2cf8-4b6f-95e9-590b51278c59",
      "name": "Définir les données de tendance haussière",
      "type": "n8n-nodes-base.set",
      "position": [
        1540,
        60
      ],
      "parameters": {
        "values": {
          "string": [
            {
              "name": "priceAction",
              "value": "Strong upward momentum in the past 24 hours"
            },
            {
              "name": "signal",
              "value": "BUY"
            },
            {
              "name": "recommendation",
              "value": "Consider buying on continued strength above resistance levels. Set stop loss at recent support."
            },
            {
              "name": "investmentStrategy",
              "value": "Momentum strategy with trailing stop loss. Consider dollar-cost averaging to manage volatility risk."
            }
          ]
        },
        "options": {
          "dotNotation": true
        }
      },
      "typeVersion": 2
    },
    {
      "id": "4706270b-3bdc-4806-a302-830a88c9a982",
      "name": "Définir les données de tendance baissière",
      "type": "n8n-nodes-base.set",
      "position": [
        1540,
        260
      ],
      "parameters": {
        "values": {
          "string": [
            {
              "name": "priceAction",
              "value": "Rapid price decline in the past 24 hours"
            },
            {
              "name": "signal",
              "value": "SELL"
            },
            {
              "name": "recommendation",
              "value": "Consider reducing exposure or implementing hedging strategies. Watch for oversold conditions."
            },
            {
              "name": "investmentStrategy",
              "value": "Capital preservation is priority. Consider re-evaluation after price stabilization."
            }
          ]
        },
        "options": {
          "dotNotation": true
        }
      },
      "typeVersion": 2
    },
    {
      "id": "608729c4-23a5-4c5b-b9a0-d77f12166aa3",
      "name": "Définir les données de volatilité",
      "type": "n8n-nodes-base.set",
      "position": [
        1540,
        460
      ],
      "parameters": {
        "values": {
          "string": [
            {
              "name": "priceAction",
              "value": "High volatility with significant price swings"
            },
            {
              "name": "signal",
              "value": "HOLD"
            },
            {
              "name": "recommendation",
              "value": "High volatility indicates market uncertainty. Consider waiting for clearer signals before making major positions."
            },
            {
              "name": "investmentStrategy",
              "value": "Range-trading strategy may be effective. Set both upper and lower limit orders."
            }
          ]
        },
        "options": {
          "dotNotation": true
        }
      },
      "typeVersion": 2
    },
    {
      "id": "f8134b51-4b41-4684-97a9-008e5f0260df",
      "name": "Définir les données stables",
      "type": "n8n-nodes-base.set",
      "position": [
        1540,
        660
      ],
      "parameters": {
        "values": {
          "string": [
            {
              "name": "priceAction",
              "value": "Relatively stable price action with minimal volatility"
            },
            {
              "name": "signal",
              "value": "NEUTRAL"
            },
            {
              "name": "recommendation",
              "value": "Market is consolidating. Watch for breakout signals in either direction."
            },
            {
              "name": "investmentStrategy",
              "value": "Consider accumulating small positions or implementing a neutral options strategy."
            }
          ]
        },
        "options": {
          "dotNotation": true
        }
      },
      "typeVersion": 2
    },
    {
      "id": "5f43178c-7bb5-405d-a988-b3b0ae0a0405",
      "name": "Fusionner les résultats",
      "type": "n8n-nodes-base.noOp",
      "position": [
        1760,
        360
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "e422a9e1-9016-4db9-912b-58be44604eb2",
      "name": "Définir l'évaluation de risque élevé",
      "type": "n8n-nodes-base.set",
      "position": [
        2200,
        -40
      ],
      "parameters": {
        "values": {
          "string": [
            {
              "name": "riskRating",
              "value": "High Risk"
            },
            {
              "name": "investmentStrategy",
              "value": "={{ $json.investmentStrategy }} Due to high risk profile, use strict position sizing (max 2-5% of portfolio)."
            }
          ]
        },
        "options": {
          "dotNotation": true
        }
      },
      "typeVersion": 2
    },
    {
      "id": "383a55c7-f42f-4a32-b6ba-742049406f67",
      "name": "Définir l'évaluation de risque moyen",
      "type": "n8n-nodes-base.set",
      "position": [
        2200,
        160
      ],
      "parameters": {
        "values": {
          "string": [
            {
              "name": "riskRating",
              "value": "Medium Risk"
            },
            {
              "name": "investmentStrategy",
              "value": "={{ $json.investmentStrategy }} Moderate risk profile suggests balanced position sizing (5-10% of portfolio)."
            }
          ]
        },
        "options": {
          "dotNotation": true
        }
      },
      "typeVersion": 2
    },
    {
      "id": "2f50e6cd-dd62-4fb2-8ee2-28096c758e23",
      "name": "Définir l'évaluation de risque faible",
      "type": "n8n-nodes-base.set",
      "position": [
        2200,
        460
      ],
      "parameters": {
        "values": {
          "string": [
            {
              "name": "riskRating",
              "value": "Low Risk"
            },
            {
              "name": "investmentStrategy",
              "value": "={{ $json.investmentStrategy }} Lower risk profile allows for larger position sizing (10-15% of portfolio)."
            }
          ]
        },
        "options": {
          "dotNotation": true
        }
      },
      "typeVersion": 2
    },
    {
      "id": "5a820de9-11f8-4aa7-8811-afb6153a7b54",
      "name": "Définir l'évaluation de risque par défaut",
      "type": "n8n-nodes-base.set",
      "position": [
        2200,
        660
      ],
      "parameters": {
        "values": {
          "string": [
            {
              "name": "riskRating",
              "value": "Unknown Risk"
            },
            {
              "name": "investmentStrategy",
              "value": "={{ $json.investmentStrategy }} Risk profile is unclear - use conservative position sizing until more data is available."
            }
          ]
        },
        "options": {
          "dotNotation": true
        }
      },
      "typeVersion": 2
    },
    {
      "id": "9b39eb90-f0c8-44df-9721-ef1d60a8a0fc",
      "name": "Fusion finale",
      "type": "n8n-nodes-base.noOp",
      "position": [
        2420,
        360
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "f84bd02a-92d1-49c7-9ba3-36e860a31636",
      "name": "Formater l'analyse finale",
      "type": "n8n-nodes-base.function",
      "position": [
        2640,
        635
      ],
      "parameters": {
        "functionCode": "// Create a formatted summary for each coin\nconst item = $input.item.json;\n\n// Format dollar amounts nicely\nconst formatCurrency = (value) => {\n  return new Intl.NumberFormat('en-US', {\n    style: 'currency',\n    currency: 'USD',\n    minimumFractionDigits: 2,\n    maximumFractionDigits: 2\n  }).format(value);\n};\n\n// Format percentages nicely\nconst formatPercent = (value) => {\n  return `${value > 0 ? '+' : ''}${value.toFixed(2)}%`;\n};\n\n// Create a detailed analysis report\nconst analysisReport = {\n  coin: item.name,\n  symbol: item.symbol.toUpperCase(),\n  currentPrice: formatCurrency(item.current_price),\n  marketCap: formatCurrency(item.market_cap),\n  volume24h: formatCurrency(item.total_volume),\n  priceChanges: {\n    \"24h\": formatPercent(item.price_change_percentage_24h),\n    \"7d\": formatPercent(item.price_change_percentage_7d_in_currency),\n    \"30d\": formatPercent(item.price_change_percentage_30d_in_currency)\n  },\n  marketMetrics: {\n    volatilityScore: item.volatilityScore,\n    marketCapToVolumeRatio: item.marketCapToVolumeRatio,\n    priceToAthRatio: item.priceToAthRatio,\n    marketScore: item.marketScore\n  },\n  analysis: {\n    priceAction: item.priceAction,\n    signal: item.signal,\n    riskRating: item.riskRating,\n    recommendation: item.recommendation,\n    investmentStrategy: item.investmentStrategy\n  },\n  timestamp: item.analyzedAt\n};\n\n// Generate a natural language summary\nconst summary = `\n## ${item.name} (${item.symbol.toUpperCase()}) Analysis\n\nCurrent Price: ${formatCurrency(item.current_price)} (${formatPercent(item.price_change_percentage_24h)} 24h)\\n\\n\n\nMarket Signal: **${item.signal}** - *${item.priceAction}*\nRisk Rating: **${item.riskRating}**\\n\\n\n\n**Recommendation:**\n${item.recommendation}\n\n**Investment Strategy:**\n${item.investmentStrategy}\n\n---\n*Analysis based on volatility score of ${item.volatilityScore} and market score of ${item.marketScore}*\n`;\n\n// Return both structured data and a human-readable summary\nreturn {\n  json: {\n    ...item,\n    analysisReport,\n    summary\n  }\n};"
      },
      "typeVersion": 1
    },
    {
      "id": "911280f8-82cb-42ee-bd8a-6de15c58f188",
      "name": "Collecter toutes les analyses",
      "type": "n8n-nodes-base.noOp",
      "position": [
        660,
        -140
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "a4de8078-7f49-4b22-a11a-a2efabfa16b1",
      "name": "Générer le résumé du portefeuille",
      "type": "n8n-nodes-base.function",
      "position": [
        880,
        -140
      ],
      "parameters": {
        "functionCode": "// Create a portfolio summary based on all coin analyses\nconst allCoins = $input.all();\n\n// Extract all analyzed coins\nconst analyzedCoins = allCoins.map(coin => coin.json);\n\n// Count signals by type\nconst signalCounts = {\n  BUY: 0,\n  SELL: 0,\n  HOLD: 0,\n  NEUTRAL: 0\n};\n\n// Count risk ratings\nconst riskCounts = {\n  \"High Risk\": 0,\n  \"Medium Risk\": 0,\n  \"Low Risk\": 0,\n  \"Unknown Risk\": 0\n};\n\n// Calculate portfolio metrics\nanalyzedCoins.forEach(coin => {\n  // Count signals\n  if (coin.signal) {\n    signalCounts[coin.signal] = (signalCounts[coin.signal] || 0) + 1;\n  }\n\n  // Count risk ratings\n  if (coin.riskRating) {\n    riskCounts[coin.riskRating] = (riskCounts[coin.riskRating] || 0) + 1;\n  }\n});\n\n// Sort coins by market score (highest first)\nconst sortedCoins = [...analyzedCoins].sort((a, b) => b.marketScore - a.marketScore);\n\n// Get top recommendation\nconst topOpportunity = sortedCoins[0];\n\n// Generate portfolio summary markdown\nconst portfolioSummary = `# Cryptocurrency Market Analysis\n\n## Market Overview\n**Analyzed Coins:** ${analyzedCoins.length}  \n**Buy Signals:** ${signalCounts.BUY}  \n**Sell Signals:** ${signalCounts.SELL}  \n**Hold Signals:** ${signalCounts.HOLD}  \n**Neutral Signals:** ${signalCounts.NEUTRAL}  \n\n## Risk Distribution\n**High Risk Assets:** ${riskCounts[\"High Risk\"]}  \n**Medium Risk Assets:** ${riskCounts[\"Medium Risk\"]}  \n**Low Risk Assets:** ${riskCounts[\"Low Risk\"]}  \n\n## Top Opportunity  \n${topOpportunity ? `**${topOpportunity.name} (${topOpportunity.symbol.toUpperCase()})**  \n${topOpportunity.summary}` : \"No opportunities found\"}\n\n## Detailed Coin Analyses  \n${sortedCoins.map(coin => `**${coin.name} (${coin.symbol})**  \n${coin.summary}`).join('\\n\\n')}\n\n*Analysis generated on ${new Date().toLocaleString()}*`;\n\nreturn [\n  {\n    json: {\n      portfolioSummary,\n      individualAnalyses: analyzedCoins.map(coin => coin.analysisReport),\n      marketSignals: signalCounts,\n      riskDistribution: riskCounts,\n      timestamp: new Date().toISOString()\n    }\n  }\n];\n"
      },
      "typeVersion": 1
    },
    {
      "id": "3277b96e-ab2c-4561-a29c-958998f45686",
      "name": "Boucler sur les éléments",
      "type": "n8n-nodes-base.splitInBatches",
      "position": [
        440,
        385
      ],
      "parameters": {
        "options": {}
      },
      "typeVersion": 3
    },
    {
      "id": "8256a60a-ddb8-4d72-b443-8fba819815bb",
      "name": "Commuter par score de marché",
      "type": "n8n-nodes-base.switch",
      "position": [
        1980,
        339
      ],
      "parameters": {
        "rules": {
          "rules": [
            {
              "value2": 20,
              "operation": "larger"
            },
            {
              "value2": 10,
              "operation": "larger"
            },
            {
              "operation": "larger"
            }
          ]
        },
        "value1": "={{ $json.marketScore }}",
        "fallbackOutput": 3
      },
      "typeVersion": 1
    },
    {
      "id": "b8cb4f7d-3818-48df-89ea-9db22797375a",
      "name": "Diviser",
      "type": "n8n-nodes-base.splitOut",
      "position": [
        1100,
        -140
      ],
      "parameters": {
        "options": {},
        "fieldToSplitOut": "individualAnalyses"
      },
      "typeVersion": 1
    },
    {
      "id": "936e9ada-4b6b-4cab-90e1-0bea30eaaa0c",
      "name": "Répondre à Webhook",
      "type": "n8n-nodes-base.respondToWebhook",
      "position": [
        1320,
        -140
      ],
      "parameters": {
        "options": {},
        "respondWith": "allIncomingItems"
      },
      "typeVersion": 1.1
    },
    {
      "id": "7791cebf-4733-4cf6-8341-96771733b507",
      "name": "Webhook",
      "type": "n8n-nodes-base.webhook",
      "position": [
        0,
        380
      ],
      "webhookId": "31941fd9-9fd5-4fab-a1b9-9c347e26f5c9",
      "parameters": {
        "path": "31941fd9-9fd5-4fab-a1b9-9c347e26f5c9",
        "options": {},
        "responseMode": "responseNode"
      },
      "typeVersion": 2
    },
    {
      "id": "d25b2427-9fc7-4042-92f2-673de5019206",
      "name": "Note adhésive",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2120,
        -140
      ],
      "parameters": {
        "width": 260,
        "height": 960,
        "content": "## Categorize and set the rating of coin"
      },
      "typeVersion": 1
    },
    {
      "id": "ac3a6503-5ce7-406d-9efb-122928239337",
      "name": "Note adhésive1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        680,
        40
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "c4e4e17d-bf13-44a2-9a9e-1d22104f1062",
      "name": "Note adhésive2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        140,
        -20
      ],
      "parameters": {
        "content": "## This workflow aims to"
      },
      "typeVersion": 1
    }
  ],
  "active": false,
  "pinData": {},
  "settings": {
    "executionOrder": "v1"
  },
  "versionId": "be12f8a1-3c44-4a1c-8f74-d1df269de92c",
  "connections": {
    "7791cebf-4733-4cf6-8341-96771733b507": {
      "main": [
        [
          {
            "node": "745e4849-8c61-4b29-9980-24de93821adb",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "b8cb4f7d-3818-48df-89ea-9db22797375a": {
      "main": [
        [
          {
            "node": "936e9ada-4b6b-4cab-90e1-0bea30eaaa0c",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "9b39eb90-f0c8-44df-9721-ef1d60a8a0fc": {
      "main": [
        [
          {
            "node": "f84bd02a-92d1-49c7-9ba3-36e860a31636",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "5f43178c-7bb5-405d-a988-b3b0ae0a0405": {
      "main": [
        [
          {
            "node": "8256a60a-ddb8-4d72-b443-8fba819815bb",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "3277b96e-ab2c-4561-a29c-958998f45686": {
      "main": [
        [
          {
            "node": "911280f8-82cb-42ee-bd8a-6de15c58f188",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "f4e6c40d-ab60-473b-9961-961eb1fa3505",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "f8134b51-4b41-4684-97a9-008e5f0260df": {
      "main": [
        [
          {
            "node": "5f43178c-7bb5-405d-a988-b3b0ae0a0405",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "77902b9a-2cf8-4b6f-95e9-590b51278c59": {
      "main": [
        [
          {
            "node": "5f43178c-7bb5-405d-a988-b3b0ae0a0405",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "745e4849-8c61-4b29-9980-24de93821adb": {
      "main": [
        [
          {
            "node": "3277b96e-ab2c-4561-a29c-958998f45686",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "c5d69bbb-df7e-4089-b0c8-50653cd936f0": {
      "main": [
        [
          {
            "node": "608729c4-23a5-4c5b-b9a0-d77f12166aa3",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "f8134b51-4b41-4684-97a9-008e5f0260df",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "4706270b-3bdc-4806-a302-830a88c9a982": {
      "main": [
        [
          {
            "node": "5f43178c-7bb5-405d-a988-b3b0ae0a0405",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "5d760f94-ca2f-44cc-aef0-83eb2cf438ee": {
      "main": [
        [
          {
            "node": "77902b9a-2cf8-4b6f-95e9-590b51278c59",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "19ca8650-b642-4910-ac7c-50b1ceb41ffc",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "2f50e6cd-dd62-4fb2-8ee2-28096c758e23": {
      "main": [
        [
          {
            "node": "9b39eb90-f0c8-44df-9721-ef1d60a8a0fc",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "608729c4-23a5-4c5b-b9a0-d77f12166aa3": {
      "main": [
        [
          {
            "node": "5f43178c-7bb5-405d-a988-b3b0ae0a0405",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "911280f8-82cb-42ee-bd8a-6de15c58f188": {
      "main": [
        [
          {
            "node": "a4de8078-7f49-4b22-a11a-a2efabfa16b1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "e422a9e1-9016-4db9-912b-58be44604eb2": {
      "main": [
        [
          {
            "node": "9b39eb90-f0c8-44df-9721-ef1d60a8a0fc",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "f84bd02a-92d1-49c7-9ba3-36e860a31636": {
      "main": [
        [
          {
            "node": "3277b96e-ab2c-4561-a29c-958998f45686",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "19ca8650-b642-4910-ac7c-50b1ceb41ffc": {
      "main": [
        [
          {
            "node": "4706270b-3bdc-4806-a302-830a88c9a982",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "c5d69bbb-df7e-4089-b0c8-50653cd936f0",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "383a55c7-f42f-4a32-b6ba-742049406f67": {
      "main": [
        [
          {
            "node": "9b39eb90-f0c8-44df-9721-ef1d60a8a0fc",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "8256a60a-ddb8-4d72-b443-8fba819815bb": {
      "main": [
        [
          {
            "node": "e422a9e1-9016-4db9-912b-58be44604eb2",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "383a55c7-f42f-4a32-b6ba-742049406f67",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "2f50e6cd-dd62-4fb2-8ee2-28096c758e23",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "5a820de9-11f8-4aa7-8811-afb6153a7b54",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "5a820de9-11f8-4aa7-8811-afb6153a7b54": {
      "main": [
        [
          {
            "node": "9b39eb90-f0c8-44df-9721-ef1d60a8a0fc",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "f4e6c40d-ab60-473b-9961-961eb1fa3505": {
      "main": [
        [
          {
            "node": "5d760f94-ca2f-44cc-aef0-83eb2cf438ee",
            "type": "main",
            "index": 0
          },
          {
            "node": "19ca8650-b642-4910-ac7c-50b1ceb41ffc",
            "type": "main",
            "index": 0
          },
          {
            "node": "c5d69bbb-df7e-4089-b0c8-50653cd936f0",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "a4de8078-7f49-4b22-a11a-a2efabfa16b1": {
      "main": [
        [
          {
            "node": "b8cb4f7d-3818-48df-89ea-9db22797375a",
            "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

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œuds26
Catégorie1
Types de nœuds11
Description de la difficulté

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

Auteur
ist00dent

ist00dent

@ist00dent

I’m a dedicated automation engineer passionate about no-code and low-code solutions. I design and implement robust n8n workflows—integrating APIs, databases, and messaging—to eliminate manual tasks and accelerate delivery. Leveraging Python and C#, I build scalable, adaptable automations that empower teams to focus on high-value work.

Liens externes
Voir sur n8n.io

Partager ce workflow

Catégories

Catégories: 34