Slack "Send and Wait for Response" node sends message but returns no output, workflow stops

I’ve been running a workflow for many months without any issues, but recently the Slack “Send and Wait for Response” node stopped working some times.

What’s happening:

  • The node successfully sends the approval message to our Slack channel (with Approve/Decline buttons)

  • But the node shows “No output data returned” and the workflow just stops there

  • No error message is thrown — it simply hangs with no output

  • and in execution history it shows as cancelled .

n8n Version: 2.10.3

{
“nodes”: [
{
“parameters”: {
“operation”: “sendAndWait”,
“select”: “channel”,
“channelId”: {
“__rl”: true,
“value”: “C098DFS7B0F”,
“mode”: “list”,
“cachedResultName”: “lead-endorsement”
},
“message”: “=━━━━━━━━━━━━━━━━━━━━ \n:tada: :medal: Lead endorsement needed \n\n LNM has pushed a new lead. \nClick Approve to endorse, or Decline to handle it yourself. \nIf you decline, the lead will stay in the Nurturing Process stage. \n\nClient details \n• Client: {{ $(‘Webhook’).item.json.body[’ Account Name’] }} \n• Sender profile: {{ $(‘Webhook’).item.json.body[‘Sender Profile’] }} \n\nLead details \n• Dashboard Conversation Thread: <https://app.getlia.io/app/inbox/{{ $(‘Webhook’).item.json.body.Sender_Id }}/{{ encodeURIComponent($(‘Webhook’).item.json.body.Conversation_id) }}|Thread>\n• Campaign: {{ $(‘Webhook’).item.json.body[‘Campaign Name’] }} \n• Company: {{ $(‘Webhook’).item.json.body[‘Company Name’] }} \n• Lead: {{ $(‘Webhook’).item.json.body[‘Full Name’] }} — {{ $(‘Webhook’).item.json.body[‘Job Title’] }} \n• LinkedIn: <{{ $(‘Webhook’).item.json.body[‘LN Link’] }}|Profile> \n• Dashboard: {{ $(‘Webhook’).item.json.body.Dashboard }} \n\nLead task link: {{ $(‘Create lead in click up1’).item.json.url }} \n━━━━━━━━━━━━━━━━━━━━\n”,
“approvalOptions”: {
“values”: {
“approvalType”: “double”
}
},
“options”: {
“limitWaitTime”: {
“values”: {
“resumeAmount”: 24
}
},
“appendAttribution”: false
}
},
“type”: “n8n-nodes-base.slack”,
“typeVersion”: 2.3,
“position”: [
3392,
-160
],
“id”: “596db1ce-5e76-4839-be1c-416fc91366c6”,
“name”: “Get approval to endorse lead1”,
“webhookId”: “4b6aa535-e868-4243-a8e4-4a086165099b”,
“retryOnFail”: true,
“waitBetweenTries”: 5000,
“maxTries”: 5,
“credentials”: {
“slackApi”: {
“id”: “OQwQbFggNXaeKjR0”,
“name”: “Amit Slack account”
}
},
“notes”: “This node will send a slack message to a group channel in Slack and ask permission from CM before endorsing lead (next steps)”
}
],
“connections”: {
“Get approval to endorse lead1”: {
“main”: [

]
}
},
“pinData”: {},
“meta”: {
“templateCredsSetupCompleted”: true,
“instanceId”: “1f4ccba3ce9c117ce59f62a29c3b414377336e3a8a224b2e116163fe92a1778b”
}
}

usually happens when the webhook response times out or the approval buttons aren’t properly configured in your slack credential. couple things to check: are the workflow permissions set correctly for the slackapi credential? and does the bot have the right scopes (chat:write, reactions:add)? also try extending the wait timeout from 24h to something like 48h just to rule out the timing issue.

it’s working for months so I don’t think bot scopes can be the issue or buttons. We usually approve it within an hour or two so timeout is also not a factor, I just added it incase this automation run on weekend and if no one approve it then it auto progress and that was also working fine and we tested it.

You can see it’s working fine, just those two cases where it gave error. (Attached)

Hi @amit.kalawani i think you should try recreating the BOT and then try using that also.. if we get into some inner configuration then there are some things to check so basically make sure you have this “Interactivity & Shortcuts” checked in your slack app maybe this be causing some issue, and i suppose as it was working all good back then which means your token rotation is enabled, let me know if this works.

Hi @amit.kalawani
I would recommend updating your n8n instance to the latest stable version (2.15) and testing again. This behavior looks more related to how the Slack “Send and Wait for Response” is handled rather than an issue in your workflow configuration.

I’d also check whether the execution is being cancelled due to a timeout or an instance restart while waiting for the Slack callback. In these cases, executions can appear as “cancelled” and return no output.

This issue has been documented before and is caused by the sendAndWait node losing tits webhook resume link. Some of the causes of this can be:

-Retry on Fail is still enabled, this can sometimes cause multiple webhooks to get registered, this confuses the wait mechanism. You can try to disable the “retryOnFail” on the sendAndWait node which could help.

-Duplicate executions where your workflow is being triggered more than once for the same event. The second execution overwrites the Webhook ID so when you click the button there is nothing to resume.

-Your execution may have timed out. If your execution times hits 24 hours before someone responds, it will cancel silently. Check to see if responses are taking more than 24 hours to come in and if so, try increasing the limit.

Hopefully some of these tips can point you in the right direction and fix your issues.