Skip to main content
A Slack endpoint posts each event to one Slack channel as a short message: what happened, one sentence of detail and a link to the right page in Runcrate. You need no server. You need permission to add apps to your Slack workspace.

Get a webhook URL from Slack

1

Create a Slack app

Go to api.slack.com/apps and select Create New App, then From scratch. Name it (for example Runcrate), pick your Slack workspace and select Create App.
2

Turn on incoming webhooks

In the app’s menu, open Incoming Webhooks and switch Activate Incoming Webhooks on.
3

Add a webhook to a channel

Select Add New Webhook to Workspace, pick the channel the messages should go to and select Allow.
4

Copy the URL

Back under Incoming Webhooks, find the new row and select Copy next to its Webhook URL. It looks like https://hooks.slack.com/services/T.../B.../....
If your Slack workspace requires approval for apps, an admin approves the app before the webhook works. One app can hold webhooks for several channels: repeat the last two steps for each.

Add it to Runcrate

1

Add an endpoint

In Settings > Webhooks, select Add endpoint and choose Slack.
2

Paste the URL

Paste it into Slack webhook URL. Runcrate accepts only https://hooks.slack.com/services/... URLs (and hooks.slack-gov.com for GovSlack).
3

Choose events and test

Pick All events or Choose events, then select Send a test event. A message titled “Test from Runcrate” appears in the channel.

What the message looks like

Each message is built with Slack’s Block Kit:
  • Title in bold, for example “production used 80% of its monthly budget”.
  • One sentence with the detail and what happens next.
  • Open in Runcrate, a link to the page where you act on it (the instances list, billing, environments, or webhook settings).
  • Fields below, side by side, such as Environment, Month to date and Budget.
The notification preview on phones and desktops shows the title. This is the exact body Runcrate posts for a budget.threshold_reached event:
What arrives in the endpoint drawer shows this for any event before you save.

The URL is the secret

Slack signs nothing. Anyone who has the webhook URL can post to your channel, so treat it like a password:
  • Do not paste it into tickets, chat or a repository.
  • Runcrate stores it encrypted and only ever shows its host and last four characters, for example hooks.slack.com/...Xy9Q.
  • If it leaks, remove the webhook in the Slack app (under Incoming Webhooks), make a new one and paste the new URL into the endpoint with Edit.

When a message does not arrive

The delivery log shows each attempt with a sentence about what went wrong. For Slack it reads Slack’s answer and says it plainly: Failed messages are retried on the same schedule as any webhook. See retries.

Discord

The same events in a Discord channel.

Events

What each event means and when it is sent.