# Slack Webhook Trigger: Challenge Not Sent

**URL:** <https://community.n8n.io/t/slack-webhook-trigger-challenge-not-sent/176049>\
**Category:** Questions\
**Tags:** cloud, slack\
**Created:** [August 26, 2025, 12:27pm UTC](https://community.n8n.io/t/slack-webhook-trigger-challenge-not-sent/176049 "2025-08-26T12:27:07Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![JasonBroderick](https://dub1.discourse-cdn.com/n8n/user_avatar/community.n8n.io/jasonbroderick/32/113768_2.png) [@JasonBroderick](https://community.n8n.io/u/JasonBroderick)\
**Post date:** [August 26, 2025, 12:27pm UTC](https://community.n8n.io/t/slack-webhook-trigger-challenge-not-sent/176049/1 "2025-08-26T12:27:07Z")

</div>

Hey folks, I’ve followed all the guides for configuring Slack to trigger workflows via webhook, but I’m stuck at the step to enable Event Subscriptions with my Webhook URL.

I have tried everything, read all the forum posts, nothing works:

1. My workflow is active when testing the production URL
2. My trigger is listening when testing the test url
3. I have tried several http methods - POST, GET
4. I have tested the webhook url with reqbin to confirm it is publicly accessible

In the response I see it looks like Slack isn’t sending a Challenge value?

I am using n8n cloud v 1.108.1

 ![image](https://europe1.discourse-cdn.com/n8n/original/3X/3/3/33d5c5374571856fb1241b9d06bce12f3e820212.png)

---

<div class="post-metadata">

**Author:** ![jabbson](https://dub1.discourse-cdn.com/n8n/user_avatar/community.n8n.io/jabbson/32/87328_2.png) [@jabbson](https://community.n8n.io/u/jabbson)\
**Post date:** [August 26, 2025, 2:56pm UTC](https://community.n8n.io/t/slack-webhook-trigger-challenge-not-sent/176049/2 "2025-08-26T14:56:20Z")

</div>

Hey @JasonBroderick hope all is good. Welcome to the community.

> [@JasonBroderick](#):
>
> I have tried several http methods - POST, GET

Can you expand on how exactly you tried multiple methods?

---

<div class="post-metadata">

**Author:** ![AlvLeoAI](https://dub1.discourse-cdn.com/n8n/user_avatar/community.n8n.io/alvleoai/32/84645_2.png) [@AlvLeoAI](https://community.n8n.io/u/AlvLeoAI)\
**Post date:** [August 27, 2025, 1:33pm UTC](https://community.n8n.io/t/slack-webhook-trigger-challenge-not-sent/176049/3 "2025-08-27T13:33:54Z")

</div>

Hi Jason, how are you doing?

Slack’s Events API requires your endpoint to pass a **url\_verification** handshake: the very first request Slack sends contains a JSON body like

```auto
{
  "type": "url_verification",
  "token": "…",
  "challenge": "random‑string"
}

```

and Slack expects the endpoint to respond with that `challenge` string within a few seconds. n8n will only handle this automatically if you use the **Slack Trigger** node’s production URL. A recent forum thread with the same “challenge\_failed” error explains that when you paste the Slack trigger’s production URL into Slack’s Event Subscriptions page the platform takes care of the handshake for you. [community.n8n.io](http://community.n8n.io/t/slack-url-verification-fails-on-production-url-but-works-with-test-url/175872#:~:text=Hello%2C).

Here are a few tips to get it working:

- **Use the Slack Trigger node, not a generic Webhook.** Drag a Slack Trigger node into your workflow, select the events you want, activate the workflow and copy the **Production Webhook URL** shown in the node. Paste **that** URL into Slack’s Event Subscriptions “Request URL” field. n8n will return the challenge automatically[community.n8n.io](http://community.n8n.io/t/slack-url-verification-fails-on-production-url-but-works-with-test-url/175872#:~:text=Hello%2C). The test URL (`…/webhook-test/…`) is only for testing workflows in the editor; Slack’s verification will fail if you use it.

- If you prefer to use a generic **Webhook** + **Respond to Webhook** combination, you must handle the handshake yourself. Add an IF node that checks `{{$json.body.type}} === 'url_verification'`, then send a plain‑text response with `{{$json.body.challenge}}` in the Respond to Webhook node. Only after the URL verification succeeds should you enable events and let Slack call your workflow normally.

- Ensure your Slack app is set to send events via **POST** and that it has the required scopes for the events you subscribe to.

- If your workflow works when you hit it with curl but Slack still can’t verify it, double‑check that you’re using the production URL and that your workflow is active. n8n Cloud automatically provides a valid HTTPS endpoint, so you don’t need to configure certificates yourself.

Once Slack accepts the URL verification, you can subscribe to message events and other events and n8n will process them through the Slack Trigger node.

---

<div class="post-metadata">

**Author:** ![system](https://dub1.discourse-cdn.com/n8n/user_avatar/community.n8n.io/system/32/195824_2.png) [@system](https://community.n8n.io/u/system)\
**Post date:** [November 25, 2025, 1:34pm UTC](https://community.n8n.io/t/slack-webhook-trigger-challenge-not-sent/176049/4 "2025-11-25T13:34:54Z")

</div>

Closed on November 25, 2025, 1:34pm UTC

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.
