Procès-verbal de la troisième réunion, tâches
Ceci est unMiscellaneous, AI Summarization, Multimodal AIworkflow d'automatisation du domainecontenant 15 nœuds.Utilise principalement des nœuds comme Code, Slack, ClickUp, Webhook, SplitOut. Convertir des transcriptions Fireflies en résumés de réuniers avec l'IA Gemini et envoyer à Slack et ClickUp
- •Token Bot Slack ou URL Webhook
- •Point de terminaison HTTP Webhook (généré automatiquement par n8n)
- •Clé API Google Gemini
Nœuds utilisés (15)
Catégorie
{
"id": "iVTZsAycgjyOlvXA",
"meta": {
"instanceId": "679a5e6996c7b87733ea9da67669642511fe2f1215d268a884919abfbd13ffdb",
"templateCredsSetupCompleted": true
},
"name": "3rd meeting summary, tasks",
"tags": [],
"nodes": [
{
"id": "fef065fe-db8a-4a0b-a44f-10aa28285924",
"name": "Obtenir une transcription",
"type": "@firefliesai/n8n-nodes-fireflies.fireflies",
"position": [
160,
0
],
"parameters": {
"transcriptId": "={{ $json.body.meetingId }}"
},
"credentials": {
"firefliesApi": {
"id": "OBez71PHrVzNJSTK",
"name": "Fireflies account"
}
},
"typeVersion": 1
},
{
"id": "9b985620-7817-4373-8e75-46b8173a9e82",
"name": "Diviser",
"type": "n8n-nodes-base.splitOut",
"position": [
384,
0
],
"parameters": {
"options": {},
"fieldToSplitOut": "data.sentences"
},
"typeVersion": 1
},
{
"id": "0e051340-786e-4456-bb32-c5a07b061bb3",
"name": "Agréger",
"type": "n8n-nodes-base.aggregate",
"position": [
576,
0
],
"parameters": {
"options": {},
"fieldsToAggregate": {
"fieldToAggregate": [
{
"fieldToAggregate": "raw_text"
}
]
}
},
"typeVersion": 1
},
{
"id": "4de50ee3-ca4d-4db3-bcfd-648cb4485708",
"name": "Google Gemini Chat Model",
"type": "@n8n/n8n-nodes-langchain.lmChatGoogleGemini",
"position": [
848,
176
],
"parameters": {
"options": {},
"modelName": "models/gemini-2.0-flash-thinking-exp-1219"
},
"credentials": {
"googlePalmApi": {
"id": "7X1ZyvDFg4ocTHrj",
"name": "Google Gemini(PaLM) Api account"
}
},
"typeVersion": 1
},
{
"id": "7c5fa1fc-b40e-4816-bbe1-82bd7e829230",
"name": "Créer une tâche",
"type": "n8n-nodes-base.clickUp",
"position": [
1680,
-112
],
"parameters": {
"list": "901810841552",
"name": "={{ $json.title }}",
"team": "90181586895",
"space": "90186124564",
"folderless": true,
"authentication": "oAuth2",
"additionalFields": {
"content": "={{ $json.description }}"
}
},
"credentials": {
"clickUpOAuth2Api": {
"id": "Jn8b0merOlvQNjtt",
"name": "ClickUp account"
}
},
"typeVersion": 1
},
{
"id": "5670023a-e340-4b7b-bffd-0554b16f6530",
"name": "Envoyer un message",
"type": "n8n-nodes-base.slack",
"position": [
1680,
64
],
"webhookId": "77447ec8-609b-4e5d-b59c-5186610f6f28",
"parameters": {
"text": "={{ $json.summary }}",
"select": "channel",
"channelId": {
"__rl": true,
"mode": "list",
"value": "C099QR902TU",
"cachedResultName": "all-core47-n8n-assg"
},
"otherOptions": {},
"authentication": "oAuth2"
},
"credentials": {
"slackOAuth2Api": {
"id": "igVBzPC1MIDhRun9",
"name": "Slack account"
}
},
"typeVersion": 2.3
},
{
"id": "2e2a301a-1175-4656-bb28-eab29eb5e9f9",
"name": "Firefly Webhook",
"type": "n8n-nodes-base.webhook",
"position": [
-48,
0
],
"webhookId": "9a5c2814-1ee3-468f-9d96-80251fdab64d",
"parameters": {
"path": "fireflies-n8n-core47-agent",
"options": {},
"httpMethod": "POST"
},
"typeVersion": 2.1
},
{
"id": "89652b55-db7a-4f51-a3ad-5334666c3b81",
"name": "Générateur de résumé",
"type": "@n8n/n8n-nodes-langchain.agent",
"position": [
832,
0
],
"parameters": {
"text": "=Please generate a summary of this meeting transcript in 5-6 lines maximum. the main purpose is that, summary should be sent to team in simple and easy words with a medium length text, not very long, not very short.\n\nAlso Create a list of action items from the meeting and output it named description. Also give under 100 character title of each action item that i will use as name .\n\nHere is the meeting Transcript:\n\n{{ $json.raw_text }}\n\nReturn your answer as JSON with keys",
"options": {},
"promptType": "define"
},
"typeVersion": 2.2
},
{
"id": "4aa09be4-1238-4e40-8c48-94b8d263c845",
"name": "Note adhésive",
"type": "n8n-nodes-base.stickyNote",
"position": [
-112,
-208
],
"parameters": {
"width": 416,
"height": 448,
"content": "## Webhook + Transcript Retrieval\n\nWebhook: Trigger when Fireflies finishes a meeting transcription. Receives meetingId.\n\nGet a transcript: Fetches the full transcript from Fireflies using the provided meetingId."
},
"typeVersion": 1
},
{
"id": "b4c88cf8-6982-42bb-97fc-cb2aa88b73f8",
"name": "Note adhésive1",
"type": "n8n-nodes-base.stickyNote",
"position": [
336,
-208
],
"parameters": {
"width": 400,
"height": 448,
"content": "## Transcript Processing\n\nSplit Out: Splits transcript into individual sentences (data.sentences).\n\nAggregate: Rejoins sentences into one block of raw text for summarization."
},
"typeVersion": 1
},
{
"id": "61ddd015-7544-4152-9926-49fcb87aba36",
"name": "Note adhésive2",
"type": "n8n-nodes-base.stickyNote",
"position": [
768,
-304
],
"parameters": {
"width": 400,
"height": 656,
"content": "## AI Processing\n\nSummary Generator: Sends transcript text to the LLM with instructions to generate:\n\n◉ A summary (5–6 lines, simple wording).\n\n◉ A list of action items (each with a short title and description).\n\nGoogle Gemini Chat Model: Connected as the LLM provider to power the AI Agent."
},
"typeVersion": 1
},
{
"id": "11b0737f-b6e8-4693-9df2-bba289d9e8e4",
"name": "Note adhésive3",
"type": "n8n-nodes-base.stickyNote",
"position": [
1200,
-304
],
"parameters": {
"width": 400,
"height": 544,
"content": "## Post-processing AI Output\n\nCleans AI response: Cleans AI response (parses JSON, removes code fences).\n\nExtracts action items: Extracts each action item, ensuring format {title, description} for tasks."
},
"typeVersion": 1
},
{
"id": "6dd82eea-0258-4015-9b43-6f268befbe98",
"name": "Note adhésive4",
"type": "n8n-nodes-base.stickyNote",
"position": [
1632,
-288
],
"parameters": {
"width": 352,
"height": 528,
"content": "## Outputs\nSlack (Send a message): Posts the meeting summary directly to the team channel.\n\nClickUp (Create a task): Creates tasks in ClickUp for each action item generated by AI."
},
"typeVersion": 1
},
{
"id": "4e61f900-30b2-4ced-9a81-793ecb920e7e",
"name": "Nettoyer la réponse IA",
"type": "n8n-nodes-base.code",
"position": [
1248,
0
],
"parameters": {
"jsCode": "return [\n {\n json: JSON.parse(\n $input.first().json.output.replace(/```json|```/g, '')\n )\n }\n];\n"
},
"typeVersion": 2
},
{
"id": "071da1de-13c4-421d-ac4b-81850456d535",
"name": "Extraire les points d'action",
"type": "n8n-nodes-base.code",
"position": [
1440,
-112
],
"parameters": {
"jsCode": "const items = $input.first().json.action_items || [];\n\nif (!Array.isArray(items) || items.length === 0) {\n return [];\n}\n\n// Convert each {name, description} into {title, description}\nreturn items.map(ai => ({\n json: {\n title: ai.name || \"Untitled\",\n description: ai.description || \"\"\n }\n}));\n"
},
"typeVersion": 2
}
],
"active": true,
"pinData": {
"Firefly Webhook": [
{
"json": {
"body": {
"eventType": "Transcription completed",
"meetingId": "01K3AGDJE5CAA7NG808VBVM2Y6"
},
"query": {},
"params": {},
"headers": {
"host": "n8n-tdiaavaa.ap-southeast-1.clawcloudrun.com",
"accept": "application/json, text/plain, */*",
"baggage": "sentry-environment=production,sentry-release=1.60.15,sentry-public_key=010261725034495cbd9605cd1d3c1a2d,sentry-trace_id=f9f8fc006a1f4552ac19271681483483",
"x-real-ip": "34.132.160.96",
"user-agent": "axios/1.6.8",
"content-type": "application/json",
"sentry-trace": "f9f8fc006a1f4552ac19271681483483-9a09f8ae726ac277-0",
"x-request-id": "ff152b33-eecd-48cc-8c8b-a6beeb490b1e",
"content-length": "80",
"req-start-time": "1755921039693",
"accept-encoding": "gzip, compress, deflate, br",
"x-forwarded-for": "34.132.160.96",
"x-forwarded-proto": "https",
"x-envoy-attempt-count": "1",
"x-envoy-original-host": "n8n-tdiaavaa.ap-southeast-1.clawcloudrun.com",
"x-envoy-external-address": "34.132.160.96",
"x-envoy-route-identifier": "true",
"x-envoy-decorator-operation": "n8n-ffktpwvb.ns-fq1b7jfh.svc.cluster.local:5678/()(.*).*"
},
"webhookUrl": "https://n8n-tdiaavaa.ap-southeast-1.clawcloudrun.com/webhook/fireflies-n8n-core47-agent",
"executionMode": "production"
}
}
]
},
"settings": {
"executionOrder": "v1"
},
"versionId": "c7cd452b-e5ef-48f7-a9f1-6621a02656c7",
"connections": {
"0e051340-786e-4456-bb32-c5a07b061bb3": {
"main": [
[
{
"node": "89652b55-db7a-4f51-a3ad-5334666c3b81",
"type": "main",
"index": 0
}
]
]
},
"9b985620-7817-4373-8e75-46b8173a9e82": {
"main": [
[
{
"node": "0e051340-786e-4456-bb32-c5a07b061bb3",
"type": "main",
"index": 0
}
]
]
},
"7c5fa1fc-b40e-4816-bbe1-82bd7e829230": {
"main": [
[]
]
},
"2e2a301a-1175-4656-bb28-eab29eb5e9f9": {
"main": [
[
{
"node": "fef065fe-db8a-4a0b-a44f-10aa28285924",
"type": "main",
"index": 0
}
]
]
},
"fef065fe-db8a-4a0b-a44f-10aa28285924": {
"main": [
[
{
"node": "9b985620-7817-4373-8e75-46b8173a9e82",
"type": "main",
"index": 0
}
]
]
},
"89652b55-db7a-4f51-a3ad-5334666c3b81": {
"main": [
[
{
"node": "4e61f900-30b2-4ced-9a81-793ecb920e7e",
"type": "main",
"index": 0
}
]
]
},
"4e61f900-30b2-4ced-9a81-793ecb920e7e": {
"main": [
[
{
"node": "5670023a-e340-4b7b-bffd-0554b16f6530",
"type": "main",
"index": 0
},
{
"node": "071da1de-13c4-421d-ac4b-81850456d535",
"type": "main",
"index": 0
}
]
]
},
"071da1de-13c4-421d-ac4b-81850456d535": {
"main": [
[
{
"node": "7c5fa1fc-b40e-4816-bbe1-82bd7e829230",
"type": "main",
"index": 0
}
]
]
},
"4de50ee3-ca4d-4db3-bcfd-648cb4485708": {
"ai_languageModel": [
[
{
"node": "89652b55-db7a-4f51-a3ad-5334666c3b81",
"type": "ai_languageModel",
"index": 0
}
]
]
}
}
}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é ?
Intermédiaire - Divers, Résumé IA, IA Multimodale
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.
Workflows recommandés
Hashir Bin Waseem
@hashirxn8nPartager ce workflow