Using Slack+N8N Cloud, why does the webhook receive interactions from message buttons but not from buttons in modals?

I’m struggling to troubleshoot this issue. I have a Slack+N8n Cloud setup, correctly configured to receive payloads through the Request URL configured on Slack under the Interactivity page and pointing to the N8N webhook. As long as I click a button inside a Slack message, everything works: N8N receives a payload and I can respond.

I use this flow to open a modal and here starts the problem: no matter what I do, I can’t seem to receive the payload coming from the modal. It either says App has not been configured for this feature or it loads and then claim connectivity problems.

At the moment I’m troubleshooting using this modal from the documentation

{
  "trigger_id": "{{ $('Get Payload').item.json.body.payload.trigger_id }}",
  "view": {
  "type": "modal",
  "title": {
    "type": "plain_text",
    "text": "Modal title"
  },
  "blocks": [
    {
      "type": "section",
      "text": {
        "type": "mrkdwn",
        "text": "It's Block Kit...but _in a modal_"
      },
      "block_id": "section1",
      "accessory": {
        "type": "button",
        "text": {
          "type": "plain_text",
          "text": "Click me"
        },
        "action_id": "button_abc",
        "value": "Button value",
        "style": "danger"
      }
    },
    {
      "type": "input",
      "label": {
        "type": "plain_text",
        "text": "Input label"
      },
      "element": {
        "type": "plain_text_input",
        "action_id": "input1",
        "placeholder": {
          "type": "plain_text",
          "text": "Type in here"
        },
        "multiline": false
      },
      "optional": false
    }
  ],
  "close": {
    "type": "plain_text",
    "text": "Cancel"
  },
  "submit": {
    "type": "plain_text",
    "text": "Save"
  },
  "private_metadata": "Shh",
  "callback_id": "view_identifier_12"
}
}

Interestlingly enough the button “Click Me” says App has not been configured for this feature while the Save button loads for some seconds and then fails.

According to the documentation, the Request URL should be the same for both actions in messages and actions in modals, so I’m very confused by what I’m seeing. Any hint?

This issue typically occurs because Slack requires separate permissions and configurations for modals compared to message buttons. You’ll need to ensure your Slack app has the `views` scope enabled in OAuth & Permissions, and that your Request URL is correctly set under both the Interactivity and Shortcuts sections in Slack’s app configuration.

Also, verify that your modal’s `callback_id` matches what n8n expects to handle the interaction. If you’re still seeing connectivity issues, double-check Slack’s App Manifest to ensure all required permissions are present.

Would you mind sharing your Slack app’s permission settings? That might help pinpoint the exact configuration gap.