Slack
Posts ticket events to a Slack channel. With a bot token it also keeps a thread per ticket, adds Resolve and Assign to me buttons, and answers the /stoneity command.
Simple setup: Incoming Webhook
- In Slack, create an Incoming Webhook for the channel you want (Slack → Apps → Incoming Webhooks → Add to Slack) and copy the URL. It starts with
https://hooks.slack.com/services/. - In Stoneity open Settings → Apps → Marketplace → Slack → Install.
- Paste the webhook URL, choose the events and optionally the boards to watch, then save.
- Under Installed apps click Test to send a sample message.
This mode only sends. For threads, buttons and the slash command, use a bot token instead.
Full setup: bot token
- Create a Slack app at
api.slack.com/apps→ From scratch, in your workspace. - Under OAuth & Permissions add the bot scopes
chat:write,commandsandusers:read.email, then Install to Workspace and copy the Bot User OAuth Token (xoxb-…). - Invite the bot to the channel (
/invite @YourApp) and copy the channel ID from the channel details. - Under Basic Information copy the Signing Secret.
- Install the app in Stoneity with the bot token, the channel ID and the signing secret. Leave the webhook URL empty.
- Copy the inbound address from Installed apps → Slack → Settings and register it in your Slack app:
- Slash Commands → new command
/stoneity, request URL<inbound address>/command - Interactivity & Shortcuts → on, request URL
<inbound address>/interactive
- Slash Commands → new command
Shortcut: the app manifest
Step 6 can be skipped. Installed apps → Slack → Settings also shows a ready Slack app manifest with your inbound address already filled in. Copy it and paste it into Slack under Settings → App Manifest on an existing app, or Create New App → From an app manifest for a new one. It sets the scopes, the /stoneity command and the interactivity URL in one go.
The manifest cannot be used before the first install, because the inbound address only exists once the app is installed. So for a brand-new Slack app the order is: create a minimal app, copy the bot token, install here, then paste the manifest back into Slack.
What you get
| Feature | Incoming Webhook | Bot token |
|---|---|---|
| Event messages in the channel | yes | yes |
| One thread per ticket | no | yes |
| Resolve / Assign to me buttons | no | with signing secret |
/stoneity command | no | with signing secret |
Comments land in the ticket's thread; state and assignment changes are also broadcast to the channel.
Commands
/stoneity new Printer on floor 3 is down
/stoneity INC-1042
/stoneity helpnew uses the board set as Board for /stoneity new in the installation settings.
Notes
- Tokens and secrets are stored encrypted and never returned by the API.
- Slack answers a bad channel or a revoked token with
200 OKand an error body. Stoneity reads that body, so such deliveries are correctly shown as failed and are not retried. - Buttons and commands are only accepted when the request carries a valid Slack signature that is at most five minutes old.