The workflow JSON
Copy or download the full n8n JSON below. Paste it into a new n8n workflow, add your credentials, activate. Full import guide →
{
"meta": {
"versionId": "1.0.0",
"createdAt": "2025-09-29T07:07:47.260148",
"updatedAt": "2025-09-29T07:07:47.260169",
"owner": "n8n-user",
"license": "MIT",
"category": "automation",
"status": "active",
"priority": "high",
"environment": "production"
},
"nodes": [
{
"id": "1f578b25-ab5b-40f3-9ccc-7f5975959073",
"name": "Could not find user",
"type": "n8n-nodes-base.noOp",
"position": [
1620,
560
],
"parameters": {},
"typeVersion": 1,
"notes": "This noOp node performs automated tasks as part of the workflow."
},
{
"id": "236436e0-1fc9-4411-b34c-946246ecbe19",
"name": "On Webhook event from Intercom",
"type": "n8n-nodes-base.webhook",
"position": [
700,
500
],
"parameters": {
"path": "your-webhook-path",
"options": {},
"httpMethod": "POST"
},
"typeVersion": 1.1,
"notes": "This webhook node performs automated tasks as part of the workflow."
},
{
"id": "10e2e89c-6ea2-4888-99c8-2f5d99cb1a1d",
"name": "set key fields",
"type": "n8n-nodes-base.set",
"position": [
1120,
340
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "3631124b-89e3-49b5-a792-36264eb502f0",
"name": "user_id",
"type": "string",
"value": "={{ $json.body.data.item.id }}"
},
{
"id": "3c2a877d-186b-4a26-86f2-d686e5630e42",
"name": "email",
"type": "string",
"value": "={{ $json.body.data.item.email }}"
}
]
}
},
"typeVersion": 3.3,
"notes": "This set node performs automated tasks as part of the workflow."
},
{
"id": "078945ff-7c7a-4b45-9f8b-773827b9eb30",
"name": "Update data in Intercom",
"type": "n8n-nodes-base.httpRequest",
"position": [
1900,
140
],
"parameters": {
"url": "{{ $env.BASE_URL }}",
"method": "PUT",
"options": {},
"sendBody": true,
"sendHeaders": true,
"authentication": "{{ $credentials.genericCredentialType }}",
"bodyParameters": {
"parameters": [
{
"name": "email",
"value": "={{ $json.result.current_work_email }} {{ $json.result.full_name }}"
},
{
"name": "name",
"value": "={{ $json.result.full_name }}"
},
{
"name": "phone",
"value": "={{ $json.result.phone_numbers?.[0]?.E164 }}"
},
{
"name": "avatar",
"value": "={{ $json.result.employment?.profile_pic_url }}"
},
{
"name": "social_profiles",
"value": "={{ $json.social_profiles }}"
},
{
"name": "location",
"value": "={{ $json.location }}"
}
]
},
"genericAuthType": "httpHeaderAuth",
"headerParameters": {
"parameters": [
{
"name": "Intercom-Version",
"value": "2.10"
}
]
}
},
"credentials": {
"httpHeaderAuth": {
"name": "<your credential>"
}
},
"typeVersion": 4.1,
"notes": "This httpRequest node performs automated tasks as part of the workflow."
},
{
"id": "4ca65df4-7244-485f-8c6c-bb1ae4cd84a8",
"name": "Other event",
"type": "n8n-nodes-base.noOp",
"position": [
1120,
680
],
"parameters": {},
"typeVersion": 1,
"notes": "This noOp node performs automated tasks as part of the workflow."
},
{
"id": "87b12749-b81e-460b-97bb-b25b59f303df",
"name": "Intercom",
"type": "n8n-nodes-base.intercom",
"disabled": true,
"position": [
1900,
-60
],
"parameters": {
"operation": "update",
"additionalFields": {}
},
"credentials": {
"intercomApi": {
"name": "<your credential>"
}
},
"typeVersion": 1,
"notes": "This intercom node performs automated tasks as part of the workflow."
},
{
"id": "ddb1dbb6-3f20-480f-9f49-641d40d9953a",
"name": "massage data",
"type": "n8n-nodes-base.code",
"position": [
1660,
140
],
"parameters": {
"mode": "runOnceForEachItem",
"jsCode": "// Add social profiles\n$input.item.json.social_profiles = $input.item.json.result.social_profiles.map((profile) => {\n return {\n type: 'social_profile',\n name : profile.network,\n url: profile.url,\n }\n});\n\n$input.item.json.location = {\n country: $input.item.json.result.location?.country,\n city: $input.item.json.result.location?.city,\n region: $input.item.json.result.location?.region,\n}\n\nreturn $input.item;"
},
"typeVersion": 2,
"notes": "This code node performs automated tasks as part of the workflow."
},
{
"id": "c490bb0d-ec6a-4a9a-9915-dd65ab669873",
"name": "Sticky Note",
"type": "n8n-nodes-base.stickyNote",
"position": [
660,
240
],
"parameters": {
"width": 377.10487444608555,
"height": 609.3353028064989,
"content": "## On User created event in Intercom\n\n1. Setup webhook url in intercom\n2. Make sure `contact.user.created` is enabled"
},
"typeVersion": 1,
"notes": "This stickyNote node performs automated tasks as part of the workflow."
},
{
"id": "3e866480-4ec8-4a27-b946-43d6358edfec",
"name": "On user created",
"type": "n8n-nodes-base.switch",
"position": [
880,
500
],
"parameters": {
"rules": {
"values": [
{
"outputKey": "YOUR_CREDENTIAL_HERE",
"conditions": {
"options": {
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"operator": {
"type": "string",
"operation": "equals"
},
"leftValue": "={{ $json.body.topic }}",
"rightValue": "contact.user.created"
}
]
},
"renameOutput": true
}
]
},
"options": {
"fallbackOutput": "extra"
}
},
"typeVersion": 3,
"notes": "This switch node performs automated tasks as part of the workflow."
},
{
"id": "e9efb8f5-8f97-476f-9d60-09a24b4f656a",
"name": "Sticky Note1",
"type": "n8n-nodes-base.stickyNote",
"position": [
1260,
20
],
"parameters": {
"color": 3,
"width": 275.71639586410623,
"height": 609.3353028064989,
"content": "## Enrich data from ExactBuyer\n\n1. Add api key from Exact buyer\n2. Use email as identifier to match user\n\nUse API Guide here {{ $env.WEBHOOK_URL }}"
},
"typeVersion": 1,
"notes": "This stickyNote node performs automated tasks as part of the workflow."
},
{
"id": "4a86d237-0908-4a79-9ebf-42711f850b3e",
"name": "Sticky Note2",
"type": "n8n-nodes-base.stickyNote",
"position": [
1600,
-280
],
"parameters": {
"width": 562.599704579025,
"height": 763.7223042836036,
"content": "## Update user in Intercom\n\n1. Set Http node and generic header API Key using this guide {{ $env.WEBHOOK_URL }}\n2. Update data in intercom using this guide\n{{ $env.API_BASE_URL }}"
},
"typeVersion": 1,
"notes": "This stickyNote node performs automated tasks as part of the workflow."
},
{
"id": "44eb44fc-9376-4c64-9561-3d9b585eb51f",
"name": "Sticky Note3",
"type": "n8n-nodes-base.stickyNote",
"position": [
540,
-320
],
"parameters": {
"color": 4,
"width": 623.6113141433334,
"height": 390.44782241577565,
"content": "# Enrich new Intercom users with contact details from ExactBuyer\n\n## This workflow aims to enrich new contacts in Intercom. The more relevant the Intercom profile, the more useful it is. Once active, this n8n workflow will update the social profiles, contact data (phone, email) as well as location data from ExactBuyer.\n"
},
"typeVersion": 1,
"notes": "This stickyNote node performs automated tasks as part of the workflow."
},
{
"id": "fc9755ae-07ed-4151-bab0-4dc9b6c2408f",
"name": "Enrich user from ExactBuyer",
"type": "n8n-nodes-base.httpRequest",
"onError": "continueErrorOutput",
"position": [
1340,
340
],
"parameters": {
"url": "{{ $env.API_BASE_URL }}",
"options": {
"redirect": {
"redirect": {}
}
},
"sendQuery": true,
"authentication": "{{ $credentials.genericCredentialType }}",
"genericAuthType": "httpHeaderAuth",
"queryParameters": {
"parameters": [
{
"name": "email",
"value": "={{ $json.email }}"
},
{
"name": "required",
"value": "work_email,personal_email,email"
}
]
}
},
"credentials": {
"httpHeaderAuth": {
"name": "<your credential>"
}
},
"typeVersion": 4.1,
"notes": "This httpRequest node performs automated tasks as part of the workflow."
}
],
"connections": {
"On Webhook event from Intercom": {
"main": [
[],
[],
[],
[],
[],
[],
[],
[],
[]
]
},
"Update data in Intercom": {
"main": [
[],
[],
[],
[],
[],
[],
[],
[],
[]
]
},
"Enrich user from ExactBuyer": {
"main": [
[],
[],
[],
[],
[],
[],
[],
[],
[]
]
}
},
"name": "Noop Workflow",
"settings": {
"executionOrder": "v1",
"saveManualExecutions": true,
"callerPolicy": "workflowsFromSameOwner",
"errorWorkflow": null,
"timezone": "UTC",
"executionTimeout": 3600,
"maxExecutions": 1000,
"retryOnFail": true,
"retryCount": 3,
"retryDelay": 1000
},
"description": "Automated workflow: Noop Workflow. This workflow integrates 9 different services: webhook, stickyNote, httpRequest, code, intercom. It contains 19 nodes and follows best practices for error handling and security.",
"notes": "Excellent quality workflow: Noop Workflow. This workflow has been optimized for production use with comprehensive error handling, security, and documentation.",
"id": "wf40d1acc08e7e"
}
Credentials you'll need
Each integration node will prompt for credentials when you import. We strip credential IDs before publishing — you'll add your own.
httpHeaderAuthintercomApi
For the full experience including quality scoring and batch install features for each workflow upgrade to Pro
About this workflow
Noop Workflow. Uses httpRequest, intercom. Webhook trigger; 13 nodes.
Source: https://github.com/basictechorg/n8n-messaging-support/blob/main/workflows/customer-support/0413_Intercom_Code_Create_Webhook.json — original creator credit. Request a take-down →
Related workflows
Workflows that share integrations, category, or trigger type with this one. All free to copy and import.
This workflow aims to enrich new contacts in Intercom. The more relevant the Intercom profile, the more useful it is. Once active, this n8n workflow will update contact data (phone, email) as well as
This n8n template provides enterprise-level version control for your workflows using GitHub integration. Stop losing hours to broken workflows and manual exports – get proper commit history, visual di
This flow creates dummy files for every item added in your *Arrs (Radarr/Sonarr) with the tag .
eek-Go v2 (Batch-Then-Review). Uses httpRequest. Webhook trigger; 75 nodes.
This workflow receives webhook requests from a content calendar and uses the X API v2 to publish text posts, threads, image/video posts, and polls, as well as delete existing posts and run a credentia