Skip to content

Operate

Slack alerts

Connect a Slack channel so refresh, data source, billing and platform alerts post there, pick the channel, test it, and fix a connection that stopped working.

Dashies posts the same alerts to Slack that it sends by email. One Slack channel is connected per workspace.

Email is addressed to a person and Slack is addressed to a channel, so the two are controlled at different levels. There is no per-person Slack switch, because a channel is not a person.

Connect a channel

1. Open the workspace's Notifications pane

Open Settings, then Notifications under that workspace's group. Only an admin of the workspace can connect Slack to it.

It needs a paid plan on that workspace. On a free plan the install refuses with Alerts are a Pro feature. Upgrade this space to connect Slack.

2. Press Add to Slack

The card reads:

Not connected. Alerts for this workspace go to email only.
Connecting posts technical alerts into one public channel, which you pick on Slack's own screen. Dashies asks for permission to post messages, to list public channels, and for the channel webhook Slack requires before it will show you that picker. Dashies posts with its bot token and never uses that webhook.

The button takes you to Slack's own Allow screen. Dashies asks for four bot permissions and no others: post messages, post into public channels it has not been invited to, list public channels, and the channel webhook. The card's "post messages" covers the first two of those.

The fourth is asked for so that Slack asks the question, not to gain a way in. Slack shows its channel dropdown only to an app that requests the channel webhook, which is the whole reason that permission is on the list. Dashies never reads, stores or posts through the webhook URL Slack hands back: every message goes through the Slack API with the bot token.

Granting it does make Slack create a webhook in your own workspace, and Slack gives you its configuration page. So there is nothing on the Dashies side to rotate, and the webhook Slack mints sits unused in your Slack app's own settings, where you can see it and remove it like any other.

3. Pick the channel on Slack's screen, and allow it

The Allow screen carries a channel dropdown. Choose the channel there and press Allow. The install comes back with the channel already set, so there is nothing left to do on this side. The card reads:

Slack is connected.

and its summary line reads Alerts for this space post to Slack.

4. Change the channel later

Press Change channel on the card. The picker lists public channels only, newest page first, with a search box and a Load more button. Search narrows what has been loaded; Load more widens it. If nothing matches, the picker says which of the two you need:

No match in the channels loaded so far. Load more to widen the search.

Dashies cannot see private channels at all, so a private one never appears.

5. Send a test message

Press Send test message. It posts immediately and touches no dashboard:

This is a test message. Technical alerts for this space will arrive in this channel.

The pane confirms with Test message sent. Check the channel.

A connection can still have nowhere to post

Three ways to get there, and only the first is history. Dashies began asking Slack for the channel recently, so an install made before that can sit connected with no channel. Slack can hand back no channel at all. And a brand new install can reach it too: storing the channel is deliberately allowed to fail without failing the install, because answering with an error over a channel that did not save would send you to reinstall something that worked. In all three the card says so rather than looking healthy: it carries an amber No channel pill and, in place of its summary line, a warning that cannot be dismissed.

Connected, but alerts have nowhere to post.
Slack is installed for this space. Until a channel is picked, every alert that would have gone to Slack is dropped and nothing says so.

Press Choose a channel on the card, or Pick a channel on the warning itself. Coming back from Slack into this state opens the picker for you, and while it is open the warning's own button is hidden and the card's control reads Close. The picker opens with a line saying what it is for:

Alerts post to one public channel. Pick the one this space should use.

A channel's membership is Slack's, not this workspace's

The pane says this on the card, once, because the admin choosing the channel is the only person who can weigh it:

Anyone in the channel can read these alerts, including people who are not members of this workspace.

Alerts carry dashboard names, data source names and classified error reasons. Because Dashies asks for permission to post into public channels it has not joined, nobody in the channel had to admit the app for that to happen. This is inherent to a Slack integration rather than a defect: pick the channel accordingly.

What posts where

The same category matrix decides both channels. Each category on the Notifications pane has a switch for email and a switch for Slack, and they are independent: a workspace can send refresh failures to Slack and nothing else, or send everything by email and nothing to Slack.

A Slack destination belongs to a workspace, not to a person or a dashboard. It receives alerts about every dashboard in that workspace and about that workspace's data sources, plan and query hosts, whoever created them.

Your own switch is the other half and it is not a destination. Email me about my dashboards, on Settings then Alerts, is your account's delivery preference: it covers alerts about every workspace you belong to, and turning it off stops every one of those EMAILS, whatever a workspace admin has set here.

It does not reach Slack. The switch is applied to EMAIL recipients only, so turning it off silences your inbox and leaves this channel posting about the same dashboards. That is the rule this page opens with, seen from the other side: a channel is not a person, so a person's switch has nothing to act on.

Until a channel is connected the Slack column is switched off, and the matrix says which of the two reasons applies:

Slack is not connected for this workspace, so its column is off. It turns on once a Slack channel is connected here.
Slack is connected but no channel is picked, so its column is off. Pick a channel in the Slack card above.

The second is the one worth reading twice. Nothing is broken and reinstalling repairs nothing, so it is easy to miss if you only read the matrix, and every alert that would have gone to Slack is dropped until a channel is picked. The Slack card sits above the matrix on the same pane and says it louder, with an amber No channel pill and a warning that cannot be dismissed.

A Slack message carries the same paragraphs as the email and one button to the page that can answer the next question.

Its heading is the email's headline rather than the whole subject. Most subjects read <what happened>: <what it happened to>, and where the half after the colon is the name of a dashboard, a data source or a workspace, the heading keeps the first half and a small line under the paragraphs names the thing instead, so one string is not repeated three times down the message. Two shapes keep the whole subject: one with no colon at all, such as Payment failed for <plan>, and the workspace security notice, whose second half says what changed rather than naming anything.

The full subject still travels with an opening message as its notification preview, which is what Slack shows in the sidebar and what a screen reader announces. A thread reply carries its own resolution line there instead.

A Slack message carries no addresses, no tokens and no numbers the email does not carry.

Recoveries reply in the thread

A message that CLOSES a situation posts as a thread reply under the message that opened it, so an outage and its recovery stay together rather than arriving as two unrelated posts days apart.

ReplyThreads under
Refresh recoveredRefresh failing, Still failing, Refresh delayed on our side, Refresh suspended
Refresh back on scheduleRefresh overdue, Refresh not scheduled
Data source recoveredData source failing
Query host answering againQuery host not answering
Payment receivedPayment failed
Refresh resumedRefresh paused
Up to dateShowing data as of <date>

A closing message only threads under an opener of its own family and about the same subject. Where no opening message can be found, it posts as a normal message rather than threading under something unrelated.

A reply is shorter than the message it answers. It carries the resolution line and nothing else: no heading, no button, and no repeat of the line naming the dashboard, because all three are already in the message above it.

When Slack stops accepting messages

If Slack refuses, the card's pill turns red and reads broken, with the reason:

Dashies cannot post to Slack right now.
Slack stopped accepting messages from Dashies: <reason from Slack>.

Two different things break, and they have different fixes:

  • The install is dead. Somebody removed the Dashies app from the Slack workspace, or the token was revoked. Nothing works until it is installed again. Press Reconnect to Slack on the card and go through the Allow screen.
  • The channel is gone. The channel was archived, deleted, or is one Dashies can no longer reach. The install is fine. Press Change channel and pick another one.

Send test message is hidden while the card is broken, because a test that cannot pass tells you nothing you did not already know. Disconnect stays available in both states.

Alerts are not lost while Slack is broken. A message that cannot be sent is retried on a widening ladder, and the run page records every attempt. See If a message cannot be delivered.

Disconnect

Disconnect revokes the token with Slack and stops the channel receiving anything. The card returns to Not connected. Alerts for this workspace go to email only. and the Slack column in the matrix switches off.

Disconnecting changes nothing about email, and it changes nothing about your dashboards.

If the install does not finish

Slack returns to the pane with a reason, shown as a sentence:

What the pane saysWhat happened
The install was cancelled on Slack, so nothing changed.You pressed Cancel on the Allow screen.
Alerts are a Pro feature. Upgrade this space to connect Slack.The space has no paid plan.
Only an admin of this workspace can connect Slack to it.You are a member rather than an admin.
Slack sent us back without an authorization code. Try connecting again.The round trip lost its code. Start again.
Slack approved the install but Dashies could not record it. Try again.Slack said yes and our write failed. Nothing was stored, so retrying is safe.
The Slack app is not configured on this deployment.The deployment has no Slack credentials.
Slack support is not finished rolling out here yet. Try again shortly.The route answered before this deployment carried Slack support. Try again.
The Slack install did not finish.Slack came back with no reason at all.

Anything else is shown as the token Slack returned, because that is more use than a generic apology.

Check it worked

  1. The card shows the Slack workspace name and the channel as #name, with a green active pill.
  2. Send test message posts and the pane says Test message sent. Check the channel.
  3. The Notifications matrix shows a live Slack switch on every category the space is entitled to.
  4. On the next real alert, the message appears in the channel with a heading, the same paragraphs as the email and one button, and its recovery arrives as a reply in the same thread.