Include Slack Message Information in sendAndWait Response Output

I was about to make a new post for this same concept. I’ll repost here and upvote your topic instead.


The idea is:

Improve the Human in the Loop Slack integration by including the Channel ID and Message Timestamp in the output, allowing users to update the original Slack message after an approval/decline action.


My use case:

When using the Human in the Loop node in n8n to send Slack messages with “Approve” or “Decline” buttons, the response webhook only returns a boolean (approved: true/false). It does not provide the original message’s Channel ID or Timestamp, so there’s no way to update the message in Slack after a button is pressed.


I think it would be beneficial to add this because:

Without the ability to update the message, users are left with stale messages in Slack that continue to show “Approve” or “Decline” buttons—even after an action has been taken. Worse, Slack displays an error saying “Slack cannot handle payload”. This degrades the user experience and creates confusion.

By providing the Channel ID and Message Timestamp, workflow creators could cleanly update or replace the Slack message to indicate the decision has been made.


Any resources to support this?

  • Slack message update API: chat.update method | Slack

  • Example error message from Slack: “Slack cannot handle payload”

  • n8n forum posts related to similar complaints (can be added here if you have links)


Are you willing to work on this?

Yes, if guidance is provided on how to extend the output from the Human in the Loop node or access underlying message metadata.

2 Likes