Slack
Create tasks from /denly commands or reactions, route them by Slack user, and receive Denly notifications.
1. Create a Slack app
In Slack apps create an app. Copy its Signing Secret, create the /denly slash command, enable Event Subscriptions with reaction_added, and install the app to copy the bot token.
2. Create the Denly connection
Open Workspace → Integrations → Connect → Slack.
- External workspace or repository: the Slack team ID.
- Bot token: the token from installing the app.
- Slack signing secret: the Signing Secret from step 1. This is what every request is verified against – the secret Denly generates is unused for Slack, so a connection without it rejects everything.
- Slash-command aliases:
/denly. Optionally set a Reaction trigger (robot_faceby default) and map channels to projects.
Routing is optional. Leave Default Denly assignee blank for unassigned tasks, or choose one workspace member to own everything from this connection.
For per-person routing use Route by external assignee: each row pairs one person in the provider (left) with a workspace member (right), and + adds another row. Routing follows the item's assignee in the provider, not whoever created it, and a matching row beats the default above.
The left-hand value must be the identifier the provider actually sends, which the field's placeholder names for you. Matching ignores surrounding spaces and letter case, but nothing else: a near-miss routes nothing and looks the same as a broken integration.
Map keys are Slack member IDs (U012ABCDEF), which is what command and reaction payloads carry – not display names.
3. Configure Slack URLs
- Set the slash-command Request URL to Denly’s generated URL.
- Set the Events API Request URL to the same URL.
- Subscribe to
reaction_added. - Grant channel read permissions for reaction enrichment and
chat:writefor notifications.
4. Test and troubleshoot
Run /denly fix the failing test in a mapped channel or add the configured reaction. Processed creates a task; Skipped means the command, reaction, channel or project mapping did not match. Failed on a reaction usually means the bot cannot read the message it was added to. An empty list means the Signing Secret does not match.
Denly