Slack

๐Ÿ“‚ Getting Started

๐Ÿ“‚ Integrations

๐Ÿ“‚ Setup & Configuration

๐Ÿ“‚ Ticket Management

๐Ÿ“‚ Email & Notifications

๐Ÿ“‚ Reports & Analytics

๐Ÿ“‚ Migration

๐Ÿ“‚ Troubleshooting & Support

Home ยป Integrations ยป Slack

Post new tickets, customer replies, assignments and alerts to a Slack channel, threaded per ticket โ€” so the team notices without keeping wp-admin open. Slack has no ticket logic of its own; everything it posts is a subscription to the same event feed Webhooks uses.

Where the screen is

NiroHelp โ†’ Integrations โ†’ Slack. Same as the rest of Integrations, it needs the manage_options capability.

Bring your own Slack app

A plugin installed on thousands of sites canโ€™t share one Slack app โ€” Slack requires every redirect URL to be registered on the app itself, so thereโ€™s no โ€œAdd to Slackโ€ button backed by an app NiroHelp owns. Instead, you create your own app from a manifest NiroHelp generates, and paste its credentials back in.

One workspace per site.

Step 1 โ€” create the app

  1. On the Slack card, click Show the manifest to see it, or Copy manifest to copy it straight away.
  2. Click Create Slack app, which opens Slackโ€™s app-creation page.
  3. Paste the manifest in. It requests exactly the scopes NiroHelp needs โ€” see below โ€” nothing more.

Step 2 โ€” install it to your workspace

From the new appโ€™s Install App page, install it to the workspace you want NiroHelp posting into.

Step 3 โ€” paste its credentials

Back on the Slack card:

  1. Bot User OAuth Token โ€” from the appโ€™s OAuth & Permissions page. Starts with xoxb-.
  2. Signing Secret โ€” from the appโ€™s Basic Information page.
  3. Click Connect.

The token is checked against Slackโ€™s own auth.test before anything is saved, so a token Slack refuses never replaces one that already works โ€” if itโ€™s rejected, youโ€™ll see Slackโ€™s own reason.

Once connected, the card shows Connected to your workspace name, and a Disconnect button.

Bot scopes

The manifest asks for:

ScopeWhat itโ€™s for
chat:writePosting messages.
chat:write.publicPosting to a public channel the app hasnโ€™t been invited to. A private channel still needs /invite @NiroHelp.
channels:readListing public channels, for the channel pickers.
groups:readListing private channels the app has been invited to.
users:readMatching agents to Slack accounts.
users:read.emailSame, by email address.
team:readConfirming which workspace the token belongs to.
im:writeOnly while Send the assignee a direct message is on โ€” needed to open a DM.

What gets posted, and when

Under Notifications, each of these is its own on/off switch:

NotificationFires whenOn by default
New ticketA ticket is submitted, or created in wp-admin. Imported tickets are never posted.Yes
Customer replyThe customer replies. Replies from agents and the AI are not posted.Yes
AssignmentA ticket is assigned or reassigned.Yes
Overdue ticketA ticket has waited on the desk longer than Overdue after in the ticket settings.Yes
AI escalationThe AI auto responder held an answer back, or couldnโ€™t answer.Yes
Negative sentimentA ticket turns negative. The blocker summary is included when message text is.Yes
Urgent ticketA ticket is created with, or raised to, High or Severe urgency.Yes
ResolvedA ticket is resolved. Posted in the ticketโ€™s thread only, never as a new message.No

One thread per ticket, per channel. The first message about a ticket opens a thread; every later notification about that same ticket โ€” including

Resolved โ€” replies in it instead of adding a new message to the channel.

Routing

  • Default channel โ€” where notifications go if nothing more specific applies.
  • Product channels โ€” under Product channels, click Add rule to send a specific productโ€™s tickets to a different channel instead. Each rule picks a product and a channel; remove one with the rowโ€™s remove button.
  • Also post urgent alerts to the channel โ€” off by default. Urgent, overdue, negative-sentiment and AI-escalation notifications normally stay inside the ticketโ€™s own thread; turning this on also posts them as a new message in the channel, so theyโ€™re seen without opening the thread.

Message content

  • Include message text โ€” up to 300 characters of the ticket, the reply, or the blocker summary. Off, only the title and the ticketโ€™s status are sent. Private notes are never sent, regardless of this setting.
  • Include the customerโ€™s email address โ€” shown next to the customerโ€™s name on each ticketโ€™s message. Off by default.
  • @mention the assignee โ€” pings the assigned agentโ€™s Slack account in the message, when NiroHelp can match them by email.
  • Send the assignee a direct message โ€” sends the same notification to the assignee as a DM as well as the channel. Needs the im:write scope, requested only while this is on.

Sending a test message

Click Send test on the connected card to post a sample message to the default channel right away, so you can confirm the app is actually able to post before relying on it.

Disconnecting

Click Disconnect and confirm. This revokes the bot token with Slack and clears everything this integration stored โ€” the token, the signing secret, the connected workspace, and every routing and message-content setting.

Reconnecting starts from the defaults above, not from what you had.

Troubleshooting

  • โ€œThat is not a bot token.โ€ โ€” the token doesnโ€™t start with xoxb-. Copy the Bot User OAuth Token from the appโ€™s OAuth & Permissions page, not the App-Level Token or Client Secret.
  • โ€œThat is not a signing secret.โ€ โ€” copy the Signing Secret from the appโ€™s Basic Information page; it should be 16โ€“128 alphanumeric characters.
  • Slack rejects the token (auth.test fails) โ€” the card shows Slackโ€™s own reason. A token can be revoked from the Slack side (someone uninstalled the app, or rotated it) without NiroHelp knowing until the next attempt.
  • A channel is missing from the picker โ€” for a private channel, invite the app to it first (/invite @NiroHelp in Slack); channels:read only sees public channels the app hasnโ€™t joined.
  • Nothing posts โ€” check Send notifications is on, the specific notification is switched on under Notifications, and the ticket actually matches โ€” for example, Resolved only ever updates an existing thread, so a ticket that never had an earlier notification produces nothing when it resolves.

Was this doc helpful?

Scroll to Top
Sponsor
SponsoredKunjungi sekarang
Promo