Automatisation de l'engagement complet basé sur le compte, avec le moteur de contexte Octave
Ceci est unLead Nurturing, Multimodal AIworkflow d'automatisation du domainecontenant 19 nœuds.Utilise principalement des nœuds comme Filter, Webhook, SplitOut, Octave, HttpRequest. Utiliser Octave, l'IA et Instantly.ai pour automatiser le processus de la recherche ABM à l'engagement
- •Point de terminaison HTTP Webhook (généré automatiquement par n8n)
- •Peut nécessiter les informations d'identification d'authentification de l'API cible
- •Clé API Anthropic
Nœuds utilisés (19)
Catégorie
{
"name": "Complete account-based outreach automation with Octave context engine",
"tags": [],
"nodes": [
{
"id": "sticky-note-main",
"name": "Note - Aperçu Principal",
"type": "n8n-nodes-base.stickyNote",
"position": [
600,
-750
],
"parameters": {
"color": 1,
"width": 450,
"height": 520,
"content": "🎯 COMPLETE ACCOUNT-BASED OUTREACH PIPELINE\n\nFOR: Revenue teams, ABM professionals, growth\noperators ready for integrated, context-aware GTM.\n\nSOLVES: Disconnected tools that lose context at\neach step. Octave centralizes typically fragmented\ncontext (ICP, personas, value props) so all agents\noperate from the same unified market understanding.\n\nWORKS:\n1. Webhook receives account data\n2. External research gathers context\n3. Company qualification filters accounts\n4. Prospector finds relevant contacts\n5. Split contacts for individual processing\n6. Generate contextualized sequences\n7. Deploy to email campaigns\n\nSETUP: Account input + external data source +\nOctave agents (qualify, prospect, sequence) +\nemail platform credentials\n\nCUSTOMIZE: Replace research source, configure\nqualification criteria, set prospecting personas,\nadjust runtime context integration."
},
"typeVersion": 1
},
{
"id": "sticky-note-webhook",
"name": "Note - Saisie des Comptes",
"type": "n8n-nodes-base.stickyNote",
"position": [
40,
-150
],
"parameters": {
"color": 2,
"width": 180,
"height": 100,
"content": "🚀 ACCOUNT INPUT\nWebhook for accounts.\nReplace with your source."
},
"typeVersion": 1
},
{
"id": "sticky-note-research",
"name": "Note - Recherche Contextuelle",
"type": "n8n-nodes-base.stickyNote",
"position": [
240,
-150
],
"parameters": {
"color": 4,
"width": 180,
"height": 100,
"content": "🔍 CONTEXT RESEARCH\nExternal data gathering.\nReplace with data source."
},
"typeVersion": 1
},
{
"id": "sticky-note-qualify",
"name": "Note - Qualification de l'Entreprise",
"type": "n8n-nodes-base.stickyNote",
"position": [
640,
-150
],
"parameters": {
"color": 5,
"width": 180,
"height": 100,
"content": "🏢 COMPANY QUALIFICATION\nProduct + Segment fit.\nConfigure agent ID."
},
"typeVersion": 1
},
{
"id": "sticky-note-filter",
"name": "Note - Filtre",
"type": "n8n-nodes-base.stickyNote",
"position": [
840,
-150
],
"parameters": {
"color": 3,
"width": 180,
"height": 100,
"content": "🔍 FILTER\nRemoves low scores.\nAdjust threshold."
},
"typeVersion": 1
},
{
"id": "sticky-note-prospector",
"name": "Note - Prospecteur",
"type": "n8n-nodes-base.stickyNote",
"position": [
1040,
-150
],
"parameters": {
"color": 6,
"width": 180,
"height": 100,
"content": "👥 PROSPECTOR\nFind relevant contacts.\nConfigure personas."
},
"typeVersion": 1
},
{
"id": "sticky-note-split",
"name": "Note - Séparation des Contacts",
"type": "n8n-nodes-base.stickyNote",
"position": [
1240,
-150
],
"parameters": {
"color": 2,
"width": 180,
"height": 100,
"content": "📋 SPLIT CONTACTS\nIndividual processing.\nHandles multiple contacts."
},
"typeVersion": 1
},
{
"id": "sticky-note-sequence",
"name": "Note - Génération de Séquence",
"type": "n8n-nodes-base.stickyNote",
"position": [
1440,
-150
],
"parameters": {
"color": 4,
"width": 180,
"height": 100,
"content": "⚡ RUNTIME SEQUENCES\nContext + personalization.\nConfigure agent ID."
},
"typeVersion": 1
},
{
"id": "sticky-note-deploy",
"name": "Note - Déploiement de Campagne",
"type": "n8n-nodes-base.stickyNote",
"position": [
1640,
-150
],
"parameters": {
"color": 5,
"width": 180,
"height": 100,
"content": "📧 CAMPAIGN DEPLOY\nAutomated outreach.\nUpdate platform & ID."
},
"typeVersion": 1
},
{
"id": "sticky-note-llm",
"name": "Note - Modèle LLM",
"type": "n8n-nodes-base.stickyNote",
"position": [
140,
-300
],
"parameters": {
"color": 3,
"width": 180,
"height": 100,
"content": "🧠 LLM MODEL\nContext processing.\nOptional for testing."
},
"typeVersion": 1
},
{
"id": "14bf51ef-8396-41e5-955d-47c6e1098ae6",
"name": "Account Data Webhook",
"type": "n8n-nodes-base.webhook",
"position": [
120,
0
],
"webhookId": "your-webhook-id-here",
"parameters": {
"path": "your-webhook-path-here",
"options": {}
},
"typeVersion": 2
},
{
"id": "531d7403-6ea3-4ff9-82a5-43ca23058519",
"name": "Recherche de Contexte Externe",
"type": "@n8n/n8n-nodes-langchain.agent",
"position": [
320,
0
],
"parameters": {
"text": "=Output the name of an open role that {{ $json.body.companyDomain }} is hiring for. If you can't find a role they are hiring for, make up a basic one that would make sense for them to hire for. Normalize the job title to something that would be used in an internal email (i.e \"software engineer\" instead of \"Sr. Software Engineer II\"). Output just the name of the role and nothing else, with no pretext or posttext. Do NOT make any justification if you can't find a role, just give a dummy role and nothing else. No \"I wasn't able to find...\" BS.",
"options": {},
"promptType": "define"
},
"typeVersion": 2.1
},
{
"id": "57ef7b44-6c4f-4712-9ca3-32681ca974a7",
"name": "LLM Model",
"type": "@n8n/n8n-nodes-langchain.lmChatAnthropic",
"position": [
220,
200
],
"parameters": {
"model": {
"__rl": true,
"mode": "list",
"value": "your-llm-model",
"cachedResultName": "Your LLM Model"
},
"options": {}
},
"credentials": {
"anthropicApi": {
"name": "Your LLM API Credentials"
}
},
"typeVersion": 1.3
},
{
"id": "6a3a0248-24fc-4060-9525-3a40b5b5fcfe",
"name": "Qualifier l'Entreprise avec Octave",
"type": "n8n-nodes-octavehq.octave",
"position": [
720,
0
],
"parameters": {
"agentOId": "your-octave-company-qualification-agent-id",
"operation": "qualifyCompany",
"companyName": "={{ $('Account Data Webhook').item.json.body.companyName }}",
"companyDomain": "={{ $('Account Data Webhook').item.json.body.companyDomain }}",
"runtimeContext": ""
},
"credentials": {
"octaveApi": {
"name": "Octave API Credentials"
}
},
"typeVersion": 1
},
{
"id": "779f6a70-90e7-4f5d-b5a1-706001d4bf86",
"name": "Filtrer les Entreprises Qualifiées",
"type": "n8n-nodes-base.filter",
"position": [
920,
0
],
"parameters": {
"options": {},
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "a28bb3f4-fb9c-4fb8-985e-9a4cd45be865",
"operator": {
"type": "number",
"operation": "gt"
},
"leftValue": "={{ $json.score }}",
"rightValue": 1
}
]
}
},
"typeVersion": 2.2
},
{
"id": "f93081d6-d31f-4367-b80c-db3657d9c71d",
"name": "Découvrir les Contacts Pertinents",
"type": "n8n-nodes-octavehq.octave",
"position": [
1120,
0
],
"parameters": {
"agentOId": "your-octave-prospector-agent-id",
"operation": "runProspector",
"companyDomain": "={{ $json.company.domain }}"
},
"credentials": {
"octaveApi": {
"name": "Octave API Credentials"
}
},
"typeVersion": 1
},
{
"id": "afd4f2df-07d8-4176-9dbd-023ca62999f8",
"name": "Séparer les Contacts pour le Traitement",
"type": "n8n-nodes-base.splitOut",
"position": [
1320,
0
],
"parameters": {
"options": {},
"fieldToSplitOut": "contacts"
},
"typeVersion": 1
},
{
"id": "87d07490-c82e-4d6c-9f71-b2e543925949",
"name": "Générer des Séquences Contextualisées",
"type": "n8n-nodes-octavehq.octave",
"position": [
1520,
0
],
"parameters": {
"agentOId": "your-octave-sequence-agent-id",
"jobTitle": "={{ $json.contact.title }}",
"firstName": "={{ $json.contact.firstName }}",
"operation": "runSequence",
"companyName": "={{ $json.contact.companyName }}",
"companyDomain": "={{ $json.contact.companyDomain }}",
"linkedInProfile": "={{ $json.contact.profileUrl }}",
"runtimeContextStep1": "=they are hiring a {{ $('Research External Context').item.json.output }}",
"runtimeInstructionsStep1": "mention the role they're hiring for and tie it into why you are reaching out"
},
"credentials": {
"octaveApi": {
"name": "Octave API Credentials"
}
},
"typeVersion": 1
},
{
"id": "90e13ffe-5012-42bb-b9eb-0e4574abd5fc",
"name": "Déployer vers la Campagne Email",
"type": "n8n-nodes-base.httpRequest",
"position": [
1720,
0
],
"parameters": {
"url": "https://api.instantly.ai/api/v2/leads",
"method": "POST",
"options": {},
"sendBody": true,
"sendHeaders": true,
"authentication": "genericCredentialType",
"bodyParameters": {
"parameters": [
{
"name": "campaign",
"value": "your-campaign-id-here"
},
{
"name": "email",
"value": "={{ $('Split Contacts for Processing').item.json.contact.email || 'demo_' + $('Split Contacts for Processing').item.json.contact.slug + '@example.com' }}"
},
{
"name": "first_name",
"value": "={{ $('Split Contacts for Processing').item.json.contact.firstName }}"
},
{
"name": "last_name",
"value": "={{ $('Split Contacts for Processing').item.json.contact.lastName }}"
},
{
"name": "company_name",
"value": "={{ $('Split Contacts for Processing').item.json.contact.companyName }}"
},
{
"name": "custom_variables",
"value": "={{ { \"email1\": $json.emails[0].email || \"\", \"subject1\": $json.emails[0].subject || \"\", \"email2\": $json.emails[1].email || \"\", \"subject2\": $json.emails[1].subject || \"\", \"email3\": $json.emails[2].email || \"\", \"subject3\": $json.emails[2].subject || \"\" } }}"
}
]
},
"genericAuthType": "httpBearerAuth",
"headerParameters": {
"parameters": [
{
"name": "Content-Type",
"value": "application/json"
}
]
}
},
"credentials": {
"httpBearerAuth": {
"name": "Email Platform API Key"
}
},
"typeVersion": 4.2
}
],
"active": false,
"pinData": {},
"settings": {
"executionOrder": "v1"
},
"connections": {
"57ef7b44-6c4f-4712-9ca3-32681ca974a7": {
"ai_languageModel": [
[
{
"node": "531d7403-6ea3-4ff9-82a5-43ca23058519",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"14bf51ef-8396-41e5-955d-47c6e1098ae6": {
"main": [
[
{
"node": "531d7403-6ea3-4ff9-82a5-43ca23058519",
"type": "main",
"index": 0
}
]
]
},
"531d7403-6ea3-4ff9-82a5-43ca23058519": {
"main": [
[
{
"node": "6a3a0248-24fc-4060-9525-3a40b5b5fcfe",
"type": "main",
"index": 0
}
]
]
},
"f93081d6-d31f-4367-b80c-db3657d9c71d": {
"main": [
[
{
"node": "afd4f2df-07d8-4176-9dbd-023ca62999f8",
"type": "main",
"index": 0
}
]
]
},
"779f6a70-90e7-4f5d-b5a1-706001d4bf86": {
"main": [
[
{
"node": "f93081d6-d31f-4367-b80c-db3657d9c71d",
"type": "main",
"index": 0
}
]
]
},
"6a3a0248-24fc-4060-9525-3a40b5b5fcfe": {
"main": [
[
{
"node": "779f6a70-90e7-4f5d-b5a1-706001d4bf86",
"type": "main",
"index": 0
}
]
]
},
"afd4f2df-07d8-4176-9dbd-023ca62999f8": {
"main": [
[
{
"node": "87d07490-c82e-4d6c-9f71-b2e543925949",
"type": "main",
"index": 0
}
]
]
},
"87d07490-c82e-4d6c-9f71-b2e543925949": {
"main": [
[
{
"node": "90e13ffe-5012-42bb-b9eb-0e4574abd5fc",
"type": "main",
"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é ?
Avancé - Nurturing de leads, 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
Nalin
@nalinkrishnanPartager ce workflow