Chorus -> HubSpot - コールサマリーの転送

上級

これはCRM, Multimodal AI分野の自動化ワークフローで、18個のノードを含みます。主にIf, Code, Filter, HttpRequest, ManualTriggerなどのノードを使用。 Chorus AI から HubSpot CRM への自動通話要約の転送

前提条件
  • ターゲットAPIの認証情報が必要な場合あり
ワークフロープレビュー
ノード接続関係を可視化、ズームとパンをサポート
ワークフローをエクスポート
以下のJSON設定をn8nにインポートして、このワークフローを使用できます
{
  "id": "M3e7JbXymYbkSURp",
  "meta": {
    "instanceId": "e9a659fdd706cf3d380b323218bd2519d25aad8cc08445f565501acde8554789",
    "templateCredsSetupCompleted": true
  },
  "name": "Chorus -> HubSpot - Transfer Summarization of Calls",
  "tags": [],
  "nodes": [
    {
      "id": "590ade85-9a23-4136-b70b-3fc282d2efd3",
      "name": "最終日ごとのChorusエンゲージメント取得",
      "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": "付箋",
      "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": "ページネーションされたエンゲージメントを結合",
      "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": "会議要約が空のアイテムをフィルタリング",
      "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": "HubSpotで会社名を検索",
      "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": "付箋1",
      "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": "会社が存在する場合",
      "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": "ノートを検索",
      "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": "エンゲージメントをループ処理",
      "type": "n8n-nodes-base.splitInBatches",
      "position": [
        720,
        -192
      ],
      "parameters": {
        "options": {}
      },
      "typeVersion": 3
    },
    {
      "id": "a6582225-17c5-4e69-aad5-1c8288ad63ae",
      "name": "ノートが存在しない場合",
      "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": "会社が見つからない場合はスキップ",
      "type": "n8n-nodes-base.noOp",
      "position": [
        1344,
        -32
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "d1254ac5-fc4e-451b-b611-a8d3e134b327",
      "name": "ノートが既に存在する場合はスキップ",
      "type": "n8n-nodes-base.noOp",
      "position": [
        1840,
        -32
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "f673fac3-18b7-4294-b6ba-6fb674e9671a",
      "name": "ノートペイロードを作成",
      "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": "ノートを作成",
      "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": "続行",
      "type": "n8n-nodes-base.noOp",
      "position": [
        2192,
        -32
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "c9e6cf34-de5b-46b0-beff-662ee49e9bfa",
      "name": "1時間ごとに実行",
      "type": "n8n-nodes-base.scheduleTrigger",
      "position": [
        -432,
        -192
      ],
      "parameters": {
        "rule": {
          "interval": [
            {
              "field": "hours"
            }
          ]
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "c12c466a-8acd-4723-8454-57fc87756752",
      "name": "「ワークフロー実行」をクリック時",
      "type": "n8n-nodes-base.manualTrigger",
      "position": [
        -432,
        0
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "28c8e238-a8b1-4135-967e-7380d92baa1e",
      "name": "付箋2",
      "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
          }
        ]
      ]
    }
  }
}
よくある質問

このワークフローの使い方は?

上記のJSON設定コードをコピーし、n8nインスタンスで新しいワークフローを作成して「JSONからインポート」を選択、設定を貼り付けて認証情報を必要に応じて変更してください。

このワークフローはどんな場面に適していますか?

上級 - 顧客管理, マルチモーダルAI

有料ですか?

このワークフローは完全無料です。ただし、ワークフローで使用するサードパーティサービス(OpenAI APIなど)は別途料金が発生する場合があります。

ワークフロー情報
難易度
上級
ノード数18
カテゴリー2
ノードタイプ9
難易度説明

上級者向け、16ノード以上の複雑なワークフロー

作成者
Rivers Colyer

Rivers Colyer

@riverscolyer

Agency 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.

外部リンク
n8n.ioで表示

このワークフローを共有

カテゴリー

カテゴリー: 34