I received some messages of Slack and I want to react to them and once I do I wanted to update in the Google sheet where these original messages came from
Process looks like this
- data in google sheet with a follow up date
- when follow up date is reached, slack will send message (this part I completed no problem on n8n)
- react to the message with a checkmark and n8n will see this reaction and update google sheet cell by 30 days for next follow up
I’m stuck on step 3
When I react to the message, the slack workflow doesn’t react, I tried in test and live mode
I’m running slack on self hosted vps. n8n 2.1.0
I gave it the necessary permission in slack API website.
The AI bot is already in the Slack channel because it is already sending me reminders.
It just cannot seem to detect reactions that I have given messages.
**I WONDER IF I CAN KEEP BOTH WORKFLOWS IN THE SAME CANVAS OR NEED A SECOND WORKFLOW, I TRIED TO COPY AND PASTE THE BOTTOM FLOW INTO ANOTHER CANVAS
AND
TRIED TO PUBLISH IT SAID I HAD THE SAME URL WHICH MAKES ME THINK I HAVE TO GENERATE A SECOND URL FOR THE TRIGGER WORKFLOW IN A SEPARATE CANVAS BUT I’M NOT SURE HOW.**
The permission I have given for subscribe to bot events is
reaction_added A member has added an emoji reaction to an item reactions:read
**IN THE FIRST WORKNODE I NOTICED THE PRODUCT URL IS STILL LOCALHOST BUT IN SLACK IT IS SHOWING MY ACTUAL DOMAIN, BUT THE WORKFLOW IS WORKING FOR N8N NOTIFYING ME WHEN SOME ITEMS ARE PASSD DUE, IS THIS NORMAL?
Slack page
Please share your workflow
{
“nodes”: [
{
“parameters”: {
“resource”: “reaction”,
“operation”: “get”,
“channelId”: {
“__rl”: true,
“value”: “C0A241Z29U0”,
“mode”: “list”,
“cachedResultName”: “googlesheet-whatsapp-updates”
},
“timestamp”: “={{ $json.item.ts }}”
},
“type”: “n8n-nodes-base.slack”,
“typeVersion”: 2.4,
“position”: [
736,
224
],
“id”: “6eabf723-aca8-428c-8c3e-d492d3361073”,
“name”: “Get a reaction”,
“webhookId”: “f33ba70f-851e-43dd-8aec-ccd6efdc521d”,
“credentials”: {
“slackApi”: {
“id”: “cIAudsHpRpwtP7LN”,
“name”: “Slack account”
}
}
},
{
“parameters”: {
“trigger”: [
“reaction_added”
],
“channelId”: {
“__rl”: true,
“value”: “C0A241Z29U0”,
“mode”: “list”,
“cachedResultName”: “googlesheet-whatsapp-updates”
},
“options”: {}
},
“type”: “n8n-nodes-base.slackTrigger”,
“typeVersion”: 1,
“position”: [
304,
224
],
“id”: “3528d7e4-076d-4967-9bfb-36c122e4ed65”,
“name”: “Slack Trigger”,
“webhookId”: “3fb58b78-0bc1-4f66-bff1-39db4dab5194”,
“credentials”: {
“slackApi”: {
“id”: “cIAudsHpRpwtP7LN”,
“name”: “Slack account”
}
}
},
{
“parameters”: {
“conditions”: {
“options”: {
“caseSensitive”: true,
“leftValue”: “”,
“typeValidation”: “strict”,
“version”: 3
},
“conditions”: [
{
“id”: “d3c62eef-5cee-4d53-bf2b-cb53d3324ff5”,
“leftValue”: “={{ $json.reaction }}”,
“rightValue”: “white_check_mark”,
“operator”: {
“type”: “string”,
“operation”: “equals”,
“name”: “filter.operator.equals”
}
}
],
“combinator”: “and”
},
“options”: {}
},
“type”: “n8n-nodes-base.if”,
“typeVersion”: 2.3,
“position”: [
496,
224
],
“id”: “190f3ad5-8ddf-440d-ab5d-f7a07d9f98c6”,
“name”: “If”
},
{
“parameters”: {
“operation”: “update”,
“documentId”: {
“__rl”: true,
“value”: “1Z0VDl2Lv-BgF0kbrFn2DhdbKiZQLF9-RsjfntAq41Ec”,
“mode”: “list”,
“cachedResultName”: “DAILY WORK DATABASE LEADS”,
“cachedResultUrl”: “https://docs.google.com/spreadsheets/d/1Z0VDl2Lv-BgF0kbrFn2DhdbKiZQLF9-Rsj452Aq41Ec/edit?usp=drivesdk”
},
“sheetName”: {
“__rl”: true,
“value”: 1838061850,
“mode”: “list”,
“cachedResultName”: “Leads”,
“cachedResultUrl”: “https://docs.google.com/spreadsheets/d/1Z0VDl2Lv-BgF0kbrFn2DhdbKiZQLF9-Rsjfn452q41Ec/edit#gid=1838061850”
},
“columns”: {
“mappingMode”: “defineBelow”,
“value”: {
“Future Contact”: “{{ $now.plus({days: 30}).toFormat(‘yyyy-MM-dd’) }}”,
“Number”: “={{ $json.phoneNumber }}”
},
“matchingColumns”: [
“Number”
],
“schema”: [
{
“id”: “Opportunity”,
“displayName”: “Opportunity”,
“required”: false,
“defaultMatch”: false,
“display”: true,
“type”: “string”,
“canBeUsedToMatch”: true
},
{
“id”: “Source”,
“displayName”: “Source”,
“required”: false,
“defaultMatch”: false,
“display”: true,
“type”: “string”,
“canBeUsedToMatch”: true
},
{
“id”: “Reddit Username”,
“displayName”: “Reddit Username”,
“required”: false,
“defaultMatch”: false,
“display”: true,
“type”: “string”,
“canBeUsedToMatch”: true
},
{
“id”: “Name”,
“displayName”: “Name”,
“required”: false,
“defaultMatch”: false,
“display”: true,
“type”: “string”,
“canBeUsedToMatch”: true
},
{
“id”: “Email”,
“displayName”: “Email”,
“required”: false,
“defaultMatch”: false,
“display”: true,
“type”: “string”,
“canBeUsedToMatch”: true
},
{
“id”: “Number”,
“displayName”: “Number”,
“required”: false,
“defaultMatch”: false,
“display”: true,
“type”: “string”,
“canBeUsedToMatch”: true,
“removed”: false
},
{
“id”: “Referal Hide”,
“displayName”: “Referal Hide”,
“required”: false,
“defaultMatch”: false,
“display”: true,
“type”: “string”,
“canBeUsedToMatch”: true
},
{
“id”: “WA Link”,
“displayName”: “WA Link”,
“required”: false,
“defaultMatch”: false,
“display”: true,
“type”: “string”,
“canBeUsedToMatch”: true
},
{
“id”: “WA Sent”,
“displayName”: “WA Sent”,
“required”: false,
“defaultMatch”: false,
“display”: true,
“type”: “string”,
“canBeUsedToMatch”: true
},
{
“id”: “Replied”,
“displayName”: “Replied”,
“required”: false,
“defaultMatch”: false,
“display”: true,
“type”: “string”,
“canBeUsedToMatch”: true
},
{
“id”: “Lead Feels”,
“displayName”: “Lead Feels”,
“required”: false,
“defaultMatch”: false,
“display”: true,
“type”: “string”,
“canBeUsedToMatch”: true
},
{
“id”: “Sales Stage”,
“displayName”: “Sales Stage”,
“required”: false,
“defaultMatch”: false,
“display”: true,
“type”: “string”,
“canBeUsedToMatch”: true
},
{
“id”: “Quoted”,
“displayName”: “Quoted”,
“required”: false,
“defaultMatch”: false,
“display”: true,
“type”: “string”,
“canBeUsedToMatch”: true
},
{
“id”: “Last Follow Up”,
“displayName”: “Last Follow Up”,
“required”: false,
“defaultMatch”: false,
“display”: true,
“type”: “string”,
“canBeUsedToMatch”: true
},
{
“id”: “Follow Up Need”,
“displayName”: “Follow Up Need”,
“required”: false,
“defaultMatch”: false,
“display”: true,
“type”: “string”,
“canBeUsedToMatch”: true
},
{
“id”: “Future Contact”,
“displayName”: “Future Contact”,
“required”: false,
“defaultMatch”: false,
“display”: true,
“type”: “string”,
“canBeUsedToMatch”: true
},
{
“id”: “Notes”,
“displayName”: “Notes”,
“required”: false,
“defaultMatch”: false,
“display”: true,
“type”: “string”,
“canBeUsedToMatch”: true
},
{
“id”: “row_number”,
“displayName”: “row_number”,
“required”: false,
“defaultMatch”: false,
“display”: true,
“type”: “number”,
“canBeUsedToMatch”: true,
“readOnly”: true,
“removed”: true
}
],
“attemptToConvertTypes”: false,
“convertFieldsToString”: false
},
“options”: {}
},
“type”: “n8n-nodes-base.googleSheets”,
“typeVersion”: 4.7,
“position”: [
1200,
224
],
“id”: “1a715f0c-de79-444f-9c93-d36102fc6c2b”,
“name”: “Update row in sheet”,
“credentials”: {
“googleSheetsOAuth2Api”: {
“id”: “xsBeroWgnEr8CvUG”,
“name”: “Google Sheets account”
}
}
},
{
“parameters”: {
“jsCode”: “// Changed "Slack" to "Get a reaction" to match your node name\nconst message = $node["Get a reaction"].json["text"];\nconst match = message.match(/WhatsApp: ([0-9]+)/);\nreturn { phoneNumber: match ? match[1] : null };”
},
“type”: “n8n-nodes-base.code”,
“typeVersion”: 2,
“position”: [
944,
224
],
“id”: “d0273fda-8f5e-4c6e-8fc9-e99c86b8d2a0”,
“name”: “Code in JavaScript”
}
],
“connections”: {
“Get a reaction”: {
“main”: [
[
{
“node”: “Code in JavaScript”,
“type”: “main”,
“index”: 0
}
]
]
},
“Slack Trigger”: {
“main”: [
[
{
“node”: “If”,
“type”: “main”,
“index”: 0
}
]
]
},
“If”: {
“main”: [
[
{
“node”: “Get a reaction”,
“type”: “main”,
“index”: 0
}
]
]
},
“Code in JavaScript”: {
“main”: [
[
{
“node”: “Update row in sheet”,
“type”: “main”,
“index”: 0
}
]
]
}
},
“pinData”: {},
“meta”: {
“templateCredsSetupCompleted”: true,
“instanceId”: “296e6cc8a58e3c74d3b02e577223b5a9443313a173504ed35f8cc3e9a8d2b550”
}
}




