Chorus -> HubSpot - Anrufzusammenfassungsübertragung
Dies ist ein CRM, Multimodal AI-Bereich Automatisierungsworkflow mit 18 Nodes. Hauptsächlich werden If, Code, Filter, HttpRequest, ManualTrigger und andere Nodes verwendet. Automatische Übertragung von Anrufzusammenfassungen von Chorus AI zu HubSpot CRM
- •Möglicherweise sind Ziel-API-Anmeldedaten erforderlich
Verwendete Nodes (18)
{
"id": "M3e7JbXymYbkSURp",
"meta": {
"instanceId": "e9a659fdd706cf3d380b323218bd2519d25aad8cc08445f565501acde8554789",
"templateCredsSetupCompleted": true
},
"name": "Chorus -> HubSpot - Transfer Summarization of Calls",
"tags": [],
"nodes": [
{
"id": "590ade85-9a23-4136-b70b-3fc282d2efd3",
"name": "Chorus-Engagements des letzten Tages abrufen",
"type": "n8n-nodes-base.httpRequest",
"position": [
-48,
-96
],
"parameters": {
"url": "https://chorus.ai/v3/engagements",
"options": {
"response": {
"response": {
"responseFormat": "json"
}
},
"pagination": {
"pagination": {
"parameters": {
"parameters": [
{
"name": "continuation_key",
"value": "={{ $response.body.continuation_key }}"
}
]
},
"maxRequests": 15,
"requestInterval": 250,
"limitPagesFetched": true,
"completeExpression": "={{ $response.body.engagements?.length === 0 }}",
"paginationCompleteWhen": "other"
}
}
},
"sendQuery": true,
"authentication": "genericCredentialType",
"genericAuthType": "httpHeaderAuth",
"queryParameters": {
"parameters": [
{
"name": "min_date",
"value": "={{ $now.minus(1, 'day').toUTC().toISO() }}"
}
]
}
},
"credentials": {
"httpHeaderAuth": {
"id": "TGNtxPoeqfuBtUeE",
"name": "Chorus.AI - API Token"
}
},
"typeVersion": 4.2
},
{
"id": "e703addd-f6ab-4762-b1fc-129c28c6d952",
"name": "Haftnotiz",
"type": "n8n-nodes-base.stickyNote",
"position": [
-128,
-256
],
"parameters": {
"width": 656,
"height": 400,
"content": "## Chorus.AI\nThis part of code will ask Chorus AI about new engagements per last 1 day and load it with pagination and filter items which not contains information about summary.\n"
},
"typeVersion": 1
},
{
"id": "feb3bf00-ad3a-4636-8a71-02a8c036ccfb",
"name": "Paginierte Engagements zusammenführen",
"type": "n8n-nodes-base.code",
"position": [
160,
-96
],
"parameters": {
"jsCode": "let engagements = []\n\nfor (const item of $input.all()) {\n engagements = engagements.concat(item.json.engagements)\n console.log(engagements)\n}\n\nreturn engagements;"
},
"typeVersion": 2
},
{
"id": "9aaef85b-d612-4842-9373-232d3eb0e7d3",
"name": "Einträge ohne meeting_summary filtern",
"type": "n8n-nodes-base.filter",
"position": [
352,
-96
],
"parameters": {
"options": {},
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "04f7da95-b5b4-47a8-8f46-bb715b8bdbe6",
"operator": {
"type": "string",
"operation": "notEmpty",
"singleValue": true
},
"leftValue": "={{ $json.meeting_summary }}",
"rightValue": ""
}
]
}
},
"typeVersion": 2.2
},
{
"id": "a9678b63-5230-4339-af34-236bc8c5ac60",
"name": "Unternehmen in HubSpot nach Namen suchen",
"type": "n8n-nodes-base.httpRequest",
"position": [
944,
-176
],
"parameters": {
"url": "https://api.hubapi.com/crm/v3/objects/companies/search",
"method": "POST",
"options": {},
"jsonBody": "={\n \"filterGroups\": [{\n \"filters\": [{\n \"propertyName\": \"name\",\n \"operator\": \"EQ\",\n \"value\": \"{{ $json.account_name }}\"\n }]\n }],\n \"properties\": [\"name\", \"domain\", \"hs_object_id\"],\n \"limit\": 1\n}",
"sendBody": true,
"specifyBody": "json",
"authentication": "predefinedCredentialType",
"nodeCredentialType": "hubspotAppToken"
},
"credentials": {
"hubspotAppToken": {
"id": "pZe6yTkF8VqPifNB",
"name": "HubSpot App Token account"
}
},
"retryOnFail": true,
"typeVersion": 4.2,
"waitBetweenTries": 3000
},
{
"id": "01b8ba7d-fa0b-4d5b-a273-89548f625d68",
"name": "Haftnotiz1",
"type": "n8n-nodes-base.stickyNote",
"position": [
624,
-576
],
"parameters": {
"width": 1760,
"height": 752,
"content": "## HubSpot \nHere we will search company in HubSpot by full equal name between Chorus.AI account_name and HubSpot Company Name.\nIf matched company exists, we will check if current engagement already present in notes.\nIf such engagement not present in notes, we creating it.\n"
},
"typeVersion": 1
},
{
"id": "66a686e5-2dca-459c-bd2d-f01150f4d9fc",
"name": "Wenn Unternehmen existiert",
"type": "n8n-nodes-base.if",
"position": [
1136,
-176
],
"parameters": {
"options": {},
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "13106367-6866-44c3-8404-9767e67753b4",
"operator": {
"type": "string",
"operation": "exists",
"singleValue": true
},
"leftValue": "={{ $json.results[0].id }}",
"rightValue": ""
}
]
}
},
"typeVersion": 2.2
},
{
"id": "a2c7b0fc-3b9b-4700-92cb-8a54609dc53c",
"name": "Notizen suchen",
"type": "n8n-nodes-base.httpRequest",
"position": [
1424,
-240
],
"parameters": {
"url": "https://api.hubapi.com/crm/v3/objects/notes/search",
"method": "POST",
"options": {},
"jsonBody": "={\n \"filterGroups\": [{\n \"filters\": [\n {\n \"propertyName\": \"hs_note_body\",\n \"operator\": \"CONTAINS_TOKEN\",\n \"value\": \"{{ $('Loop Over Engagements').item.json.engagement_id }}\"\n },\n {\n \"propertyName\": \"associations.company\",\n \"operator\": \"EQ\",\n \"value\": \"{{ $json.results[0].id }}\"\n }\n ]\n }],\n \"properties\": [\"hs_note_body\",\"hs_timestamp\"],\n \"limit\": 25\n }",
"sendBody": true,
"specifyBody": "json",
"authentication": "predefinedCredentialType",
"nodeCredentialType": "hubspotAppToken"
},
"credentials": {
"hubspotAppToken": {
"id": "pZe6yTkF8VqPifNB",
"name": "HubSpot App Token account"
}
},
"retryOnFail": true,
"typeVersion": 4.2
},
{
"id": "9176cd7a-8133-4e3d-bad2-ba4d7a6c61ae",
"name": "Engagements durchlaufen",
"type": "n8n-nodes-base.splitInBatches",
"position": [
720,
-192
],
"parameters": {
"options": {}
},
"typeVersion": 3
},
{
"id": "a6582225-17c5-4e69-aad5-1c8288ad63ae",
"name": "Wenn Notiz nicht existiert",
"type": "n8n-nodes-base.if",
"position": [
1632,
-176
],
"parameters": {
"options": {},
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "8897f49e-83ba-4d8d-950b-b2317958f9fb",
"operator": {
"type": "array",
"operation": "empty",
"singleValue": true
},
"leftValue": "={{ $json.results }}",
"rightValue": ""
}
]
}
},
"typeVersion": 2.2
},
{
"id": "a80f3f6b-18b4-4d2f-a1e6-e492b80f904a",
"name": "Überspringen, wenn Unternehmen nicht gefunden",
"type": "n8n-nodes-base.noOp",
"position": [
1344,
-32
],
"parameters": {},
"typeVersion": 1
},
{
"id": "d1254ac5-fc4e-451b-b611-a8d3e134b327",
"name": "Überspringen, wenn Notiz bereits existiert",
"type": "n8n-nodes-base.noOp",
"position": [
1840,
-32
],
"parameters": {},
"typeVersion": 1
},
{
"id": "f673fac3-18b7-4294-b6ba-6fb674e9671a",
"name": "Notiz-Payload erstellen",
"type": "n8n-nodes-base.code",
"position": [
1840,
-304
],
"parameters": {
"jsCode": "const callSecondsDateTime = $('Loop Over Engagements').first().json.date_time;\nvar callDateTime = new Date(callSecondsDateTime * 1000)\n\nconst callSummary = $('Loop Over Engagements').first().json.meeting_summary;\nconst callLink = $('Loop Over Engagements').first().json.url;\nconst callId = $('Loop Over Engagements').first().json.engagement_id;\n\nvar note_body = `\n<b>Call Date/Time: ${callDateTime.toLocaleString()}</b> \n<br><br>\n<b>Summary body:</b><br> ${callSummary}\"\n<br><br>\n<b>Link to call recording:</b> <a href=\"${callLink}\" target=\"_blank\">${callLink}</a>\n<br>\n<b>Chorus Engagement ID:</b> ${callId}\n`\n\nreturn {\n \"json\": {\n \"properties\": {\n \"hs_timestamp\": callDateTime.toISOString(),\n \"hs_note_body\": note_body,\n },\n \"associations\": [\n {\n \"to\": {\n \"id\": $('Search Company In HubSpot By Name').first().json.results[0].id\n },\n \"types\": [\n {\n \"associationCategory\": \"HUBSPOT_DEFINED\",\n \"associationTypeId\": 190\n }\n ]\n }\n ]\n } \n};"
},
"typeVersion": 2
},
{
"id": "63016a15-dbad-48d3-bae1-b5a30a88e845",
"name": "Notiz erstellen",
"type": "n8n-nodes-base.httpRequest",
"position": [
2032,
-304
],
"parameters": {
"url": "https://api.hubspot.com/crm/v3/objects/notes",
"method": "POST",
"options": {},
"jsonBody": "={{ $json }}",
"sendBody": true,
"specifyBody": "json",
"authentication": "predefinedCredentialType",
"nodeCredentialType": "hubspotAppToken"
},
"credentials": {
"hubspotAppToken": {
"id": "pZe6yTkF8VqPifNB",
"name": "HubSpot App Token account"
}
},
"typeVersion": 4.2
},
{
"id": "9ea518e1-f7c4-4aea-9900-e43d45167f51",
"name": "Fortfahren",
"type": "n8n-nodes-base.noOp",
"position": [
2192,
-32
],
"parameters": {},
"typeVersion": 1
},
{
"id": "c9e6cf34-de5b-46b0-beff-662ee49e9bfa",
"name": "Stündlich ausführen",
"type": "n8n-nodes-base.scheduleTrigger",
"position": [
-432,
-192
],
"parameters": {
"rule": {
"interval": [
{
"field": "hours"
}
]
}
},
"typeVersion": 1.2
},
{
"id": "c12c466a-8acd-4723-8454-57fc87756752",
"name": "Bei Klick auf 'Workflow ausführen'",
"type": "n8n-nodes-base.manualTrigger",
"position": [
-432,
0
],
"parameters": {},
"typeVersion": 1
},
{
"id": "28c8e238-a8b1-4135-967e-7380d92baa1e",
"name": "Haftnotiz2",
"type": "n8n-nodes-base.stickyNote",
"position": [
-512,
-352
],
"parameters": {
"width": 272,
"height": 528,
"content": "## Triggers\nHere we are declaring how this workflow can be started"
},
"typeVersion": 1
}
],
"active": true,
"pinData": {},
"settings": {
"executionOrder": "v1"
},
"versionId": "5c4b90f9-61ad-42ab-8592-e688cd689d57",
"connections": {
"9ea518e1-f7c4-4aea-9900-e43d45167f51": {
"main": [
[
{
"node": "9176cd7a-8133-4e3d-bad2-ba4d7a6c61ae",
"type": "main",
"index": 0
}
]
]
},
"63016a15-dbad-48d3-bae1-b5a30a88e845": {
"main": [
[
{
"node": "9ea518e1-f7c4-4aea-9900-e43d45167f51",
"type": "main",
"index": 0
}
]
]
},
"a2c7b0fc-3b9b-4700-92cb-8a54609dc53c": {
"main": [
[
{
"node": "a6582225-17c5-4e69-aad5-1c8288ad63ae",
"type": "main",
"index": 0
}
]
]
},
"c9e6cf34-de5b-46b0-beff-662ee49e9bfa": {
"main": [
[
{
"node": "590ade85-9a23-4136-b70b-3fc282d2efd3",
"type": "main",
"index": 0
}
]
]
},
"66a686e5-2dca-459c-bd2d-f01150f4d9fc": {
"main": [
[
{
"node": "a2c7b0fc-3b9b-4700-92cb-8a54609dc53c",
"type": "main",
"index": 0
}
],
[
{
"node": "a80f3f6b-18b4-4d2f-a1e6-e492b80f904a",
"type": "main",
"index": 0
}
]
]
},
"a6582225-17c5-4e69-aad5-1c8288ad63ae": {
"main": [
[
{
"node": "f673fac3-18b7-4294-b6ba-6fb674e9671a",
"type": "main",
"index": 0
}
],
[
{
"node": "d1254ac5-fc4e-451b-b611-a8d3e134b327",
"type": "main",
"index": 0
}
]
]
},
"f673fac3-18b7-4294-b6ba-6fb674e9671a": {
"main": [
[
{
"node": "63016a15-dbad-48d3-bae1-b5a30a88e845",
"type": "main",
"index": 0
}
]
]
},
"9176cd7a-8133-4e3d-bad2-ba4d7a6c61ae": {
"main": [
[],
[
{
"node": "a9678b63-5230-4339-af34-236bc8c5ac60",
"type": "main",
"index": 0
}
]
]
},
"a80f3f6b-18b4-4d2f-a1e6-e492b80f904a": {
"main": [
[
{
"node": "9176cd7a-8133-4e3d-bad2-ba4d7a6c61ae",
"type": "main",
"index": 0
}
]
]
},
"feb3bf00-ad3a-4636-8a71-02a8c036ccfb": {
"main": [
[
{
"node": "9aaef85b-d612-4842-9373-232d3eb0e7d3",
"type": "main",
"index": 0
}
]
]
},
"d1254ac5-fc4e-451b-b611-a8d3e134b327": {
"main": [
[
{
"node": "9176cd7a-8133-4e3d-bad2-ba4d7a6c61ae",
"type": "main",
"index": 0
}
]
]
},
"a9678b63-5230-4339-af34-236bc8c5ac60": {
"main": [
[
{
"node": "66a686e5-2dca-459c-bd2d-f01150f4d9fc",
"type": "main",
"index": 0
}
]
]
},
"590ade85-9a23-4136-b70b-3fc282d2efd3": {
"main": [
[
{
"node": "feb3bf00-ad3a-4636-8a71-02a8c036ccfb",
"type": "main",
"index": 0
}
]
]
},
"c12c466a-8acd-4723-8454-57fc87756752": {
"main": [
[
{
"node": "590ade85-9a23-4136-b70b-3fc282d2efd3",
"type": "main",
"index": 0
}
]
]
},
"9aaef85b-d612-4842-9373-232d3eb0e7d3": {
"main": [
[
{
"node": "9176cd7a-8133-4e3d-bad2-ba4d7a6c61ae",
"type": "main",
"index": 0
}
]
]
}
}
}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 - Kundenbeziehungsmanagement, Multimodales KI
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.
Verwandte Workflows
Rivers Colyer
@riverscolyerAgency technology director and automation enthusiast + workflow architect. Specializing in creating powerful integrations that simplify business processes. My team designs and delivers custom workflows that connect SaaS platforms, empowering teams to save time and boost productivity. DM me on LinkedIn if you'd like us to set up an automation for your business.
Diesen Workflow teilen