Slack Node: "Send and Wait for Response" messages in DMs appear only in Bot History/App Home, not in the active chat flow

Describe the problem/error/question

I am encountering an issue with the Slack node when using the “Send and Wait for Response” operation (and standard “Send a Message” in some cases).

The Scenario:

  1. I send a Direct Message (DM) to my Slack Bot.
  2. An n8n Trigger (Slack Trigger) detects the message and captures the sender’s username(user_resolved).
  3. I use the Slack Node with the operation “Send and Wait for Response”.
  4. I set the configuration to “Send Message - To User - By Username” using the username captured in step 2.

The Bug:
The workflow executes successfully, but the message from the bot does not appear in the active DM conversation stream. Instead, it only appears in the “History” tab within the Bot’s channel, making it invisible to the user unless they specifically check the Bot’s channel.

Additional Findings:

  • The same behavior occurs when using “Send Message - To Channel - By ID” (using the DM channel ID).
  • The standard “Send a Message” operation exhibits the same behavior (message goes to History).
    • However, if I use “Send a Message” and specifically enable the “Reply to a Message” option and map the Message Timestamp to Reply To, the message correctly appears in the flow.
  • The “Send and Wait for Response” operation does not seem to have an “Reply to Timestamp” option, causing the prompt to be “lost” to the user.

I expected the “Send and Wait for Response” message to appear directly in the DM chat where the trigger occurred, similar to how a standard user reply works.

What is the error message (if any)?

There is no error message. The node execution status is Success.

Please share your workflow

Share the output returned by the last node

As a result, the message does not appear in the main Chat tab; it is only visible if the user manually navigates to the History tab to check it.

Information on your n8n setup

  • n8n version:2.3.5
  • Cloud: Starter plan

You nailed it with your findings! The issue is that Slack treats non-threaded bot messages differently in DMs.

For “Send and Wait for Response” to show in the active chat, you need to make sure you’re using the channel from the trigger properly.

Try this:

  1. In your “Send and Wait for Response” node, use “Send Message - To Channel - By ID”
  2. For the Channel field, use the channel from your Slack Trigger: {{ $json.event.channel }}
  3. Make sure your Slack app has the right scopes (chat:write, im:write)

The key difference from what you tried: when you use “To User - By Username”, Slack might be opening a different DM channel context. Using the exact channel ID from the trigger keeps everything in the same conversation thread.

If that still puts it in History, there might be a Slack API quirk with the starter plan or app permissions. Have you checked if your bot has the chat:write scope enabled in your Slack app settings?

Thanks for the suggestion!

I tried following your advice exactly, but unfortunately, the issue persists.

  • I switched the node configuration to “Send Message - To Channel - By ID”.

  • I mapped the Channel field to {{ $(“Slack Trigger”).first().json.channel }}.

However, the result is the same: the message is successfully sent but still appears only in the History tab, not in the active DM chat flow.

Regarding the permissions, I have confirmed that my Slack app has both chat:write and im:write scopes enabled.

Do you have any other ideas on what might be causing this?

@hrtechsystem Then I am not sure what exactly happening.