Slack
Set up Slack as an integration recipient for incident notifications.
Send Xyte incident notifications straight to a Slack channel. Setup is a short wizard — Connect → Channel → Enable — with an optional Messages stage for tailoring the notification text, followed by optional per-space routing.
Requirements
- Company Slack Administrator access (needed to authorize the Xyte app).
- Your workspace's Slack URL (for example,
company-workspace.slack.com). - A public Slack channel to receive notifications (for example,
tech_support).
Open the Slack integration
Go to Settings → Integrations to open the Outbound integrations catalog. Under Messaging, click the Slack card.

This opens the Slack settings page on the Messaging Platforms tab, where setup runs as a wizard: Connect → Channel → Enable. An optional Messages stage (between Channel and Enable) lets you customize the notification text — see the Customize messages tab.

Step 1 — Connect
On the Connect stage, click Add to Slack.
Slack opens an authorization screen. Select your Workspace, review the permissions the Xyte app requests, and click Allow.

You're returned to Xyte and the wizard advances to the Channel stage.
Step 2 — Channel
Open the Default Channel (Public channels) dropdown and choose the channel that should receive notifications (for example, tech_support). Then click Next.

Only public channels are listed. To post to a private channel, invite the Xyte app to that channel in Slack first.
Step 3 — Enable
On the Enable stage the integration starts as Disabled. Click Activate.

The status changes to Active and a confirmation message appears. To turn the integration off later, click Disable on this same stage.

Step 4 — Test the integration
Once the integration is Active, confirm everything is wired up by sending a test incident. No real fault is needed — pick any device and use its Report Incident capability to raise one. Xyte posts the test incident to your selected channel exactly like a live one.
Report the incident from the device, then open your Slack channel. You should see a New Incident message with all of its details — ID, Title, Description, Priority, Opened at, Device, Model, and Space:
If the message appears in the channel, the integration is working. If nothing arrives, check that the integration shows Active, that the correct channel is selected, and (for private channels) that the Xyte app has been invited to the channel.

Customize the message (templates)
You control exactly what the Slack messages say. On the Slack settings page, open the Messages stage (between Channel and Enable). There are two independent templates:
- Incident opened message — sent when an incident is raised.
- Incident closed message — sent when it is resolved.
Each is free text with {placeholder} tokens that are replaced with the incident's values when the message is sent. Both fields start pre-filled with the default template — the standard message with every field, ending with a link back to this settings page. Edit the text and click Save templates, or click Reset to default to restore the original.
- A placeholder whose value is empty for a given incident is left blank; an unrecognized
{token}is sent as-is. - Slack formatting works: wrap text in
*asterisks*for bold, and use<{url}|Open in Xyte>for a labeled link. - Click any placeholder chip below a field to insert it at the end of that template.
Available placeholders
| Placeholder | Description | Example | Opened | Closed |
|---|---|---|---|---|
{title} | Incident title | Camera offline | ✅ | ✅ |
{space} | Full space path of the device | HQ / Floor 3 / Room 301 | ✅ | ✅ |
{description} | Incident description | Device stopped responding | ✅ | |
{priority} | Priority — Critical, High, Moderate, Low, or Planning | High | ✅ | |
{opened_at} | When the incident opened (device time zone) | 05/06/2026 16:26 UTC | ✅ | |
{device} | Device name | Front Lobby Camera | ✅ | ✅ |
{model} | Vendor / model | Axis / P3245 | ✅ | |
{incident_id} | Short incident ID | 4821 | ✅ | ✅ |
{assignee} | Assigned user | Jane Doe | ✅ | ✅ |
{organization} | Organization name | Acme Corp | ✅ | |
{customer} | Customer (top-level space) name | Acme Retail | ✅ | |
{opened_by} | Who or what opened the incident | Monitoring | ✅ | |
{url} | Link to the incident in Xyte | https://app.xyte.io/incident/… | ✅ | ✅ |
{closed_reason} | Why the incident closed | Device back online | ✅ | |
{duration} | How long the incident was open | about 2 hours | ✅ | |
{closed_by} | Who or what closed the incident | System | ✅ | |
{closed_method} | How it was closed (for example, manually or automatically) | automatically | ✅ |
A placeholder used outside its scope (for example {closed_reason} in the opened message) simply renders blank.
Example
Opened-message template:
🔴 *{title}*
Priority *{priority}* at {space}
Device: {device} ({model})
<{url}|Open in Xyte>Posts to Slack as:
Camera offlinePriority High at HQ / Floor 3 / Room 301
Device: Front Lobby Camera (Axis / P3245)
Open in Xyte
Routing notifications (per space)
Each space's Routing settings control where that space's notifications are sent.
- Inherit events from parent — when enabled, the space uses its parent space's routing, and the recipient cards are read-only.
- For each recipient (Email, Slack), use the Off / On switch to enable it. Turn Inherit settings off to override the inherited configuration, then choose the Channel and click Update.
When Inherit events from parent is on, the Email and Slack cards are locked to the parent's values.

Having trouble with the Slack integration? See the Slack troubleshooting guide.
Updated 16 days ago
