Slack integration
Quick answer
Bring ServiceNow approvals, notifications and major-incident swarming into Slack in real time using the Slack spoke and Flow Designer.
Key takeaways
- Prerequisites
- Step 1, Create a Slack app
- Step 2, Connection & alias
- Step 3, Notifications flow
- Step 4, Approvals in Slack (interactive)
Bring ServiceNow approvals, notifications and major-incident swarming into Slack in real time using the Slack spoke and Flow Designer.
Prerequisites
- ServiceNow:
admin, IntegrationHub, and the Slack spoke from the Store. - Slack: a workspace admin to install/approve the app and grant scopes.
Step 1, Create a Slack app
- At api.slack.com/apps → Create New App, add Bot Token Scopes:
chat:write,channels:manage,commands,users:read. - Install to the workspace and copy the Bot User OAuth Token (
xoxb-...).
Step 2, Connection & alias
- Store the bot token as an API Key/OAuth credential and attach it to the Slack spoke's Connection alias (base
https://slack.com/api).
Step 3, Notifications flow
- Build a flow on incident create where
priority=1. - Add Slack → Post Message to your ops channel with the incident number, short description and a link back.
Step 4, Approvals in Slack (interactive)
- Post an interactive message with Approve/Reject buttons (Block Kit) for a change approval.
- Set the Slack app's Interactivity Request URL to a ServiceNow Scripted REST API that records the decision on the approval record.
// Scripted REST (Slack interactivity) - pseudocode
var payload = JSON.parse(request.body.data.payload);
var action = payload.actions[0].value; // "approve" | "reject"
var sysId = payload.actions[0].action_id;
var ap = new GlideRecord("sysapproval_approver");
if (ap.get(sysId)) { ap.state = (action=="approve") ? "approved" : "rejected"; ap.update(); }Step 5, Major incident swarm
- On P1 declaration, use Slack → Create Channel and invite the assignment group, then post the incident summary.
Test & troubleshoot
- Raise a P1 and confirm the message/channel appears instantly.
not_in_channel: invite the bot to the channel.invalid_auth: token revoked/rotated, update the credential.
Verify Slack's signing secret on inbound requests so only Slack can post to your endpoint.
Want to learn this properly?
Our live, instructor-led ServiceNow Training covers this hands-on, with real projects and a certification path.
Check your understanding
What orchestrates Slack actions from ServiceNow?
- A. Flow Designer + Slack spoke
- B. A client script
- C. A report
Show answer
A. Flow Designer + Slack spoke
The Slack spoke runs in flows.
What can run conversationally inside Slack?
- A. Virtual Agent
- B. GlideRecord
- C. ATF
Show answer
A. Virtual Agent
Virtual Agent can operate in Slack.
Frequently asked questions
What does the term - Slack integration refer to in ServiceNow?
Bring ServiceNow approvals, notifications and major-incident swarming into Slack in real time using the Slack spoke and Flow Designer.
What is the ITSM role of - Slack integration?
Post an interactive message with Approve/Reject buttons (Block Kit) for a change approval. Set the Slack app's Interactivity Request URL to a ServiceNow Scripted REST API that records the decision on the approval record.
What is another point to note about - Slack integration?
ServiceNow: admin, IntegrationHub, and the Slack spoke from the Store. Slack: a workspace admin to install/approve the app and grant scopes.