Skip to Content
Rius

How do I send Rius alerts to a webhook?

Rius sends alerts to a webhook through a webhook channel, which POSTs one JSON body per firing to an HTTPS URL you provide. You add the channel once on the Alerts page, attach it to each alert from that alert’s details page, and confirm delivery from the firing’s page. Channels are admin-only, so you need admin rights in the workspace.

How it works

A webhook channel is a destination you define once per workspace. While an alert is enabled, every firing goes to each of its attached, enabled channels. For a webhook, Rius POSTs a JSON payload to your HTTPS URL.

You can add request headers, for example an Authorization token your receiver expects. Header values are stored encrypted and are write-only. Rius never shows them again, in the console or over MCP, so keep the token somewhere you can copy it from if you need to re-enter it.

Deliveries are per firing, not batched. A noisy alert posts once per firing. If that is too much, tune the alert’s thresholds rather than muting the channel.

The payload has a render-ready text line, so the same body works for a generic receiver and for chat webhooks. Other fields are present when the detector attaches them:

  • service, step and error describe where the failure happened.
  • labels repeats those values plus detector-specific keys such as tool or trace_id.
  • sample_trace_ids holds at most 10 trace IDs. It is a sample, never the full list.
  • url links to the full firing. For a Consistent Error Pattern firing, that page lists every trace the firing counted.
  • first_seen and last_seen are RFC3339 timestamps in UTC.

For the other channel types and every channel setting, see Distribution channels.

Set it up

  1. Open the Alerts page and find the Distribution channels section. If you do not see it, you are a member, not an admin, and an admin has to add the channel.
  2. Open the new channel dialog and choose the webhook type. Enter your HTTPS URL, and add any headers your receiver expects, such as an Authorization token.
  3. Open the details page of the alert you want to route. In the Delivers to section, attach the webhook channel. Repeat for each alert that should reach it. The same channel can serve any alert in the workspace, including rules from Alerts.
  4. Check that both the alert and the channel are enabled. Delivery only happens to attached channels that are enabled, from an alert that is enabled.
  5. Make sure your receiver accepts a POST with a JSON body shaped like this one, and returns a success response:
{ "text": "Consistent Error Pattern: TimeoutError: model call exceeded 60s", "alert_id": "01J9…", "workspace_id": "01J8…", "kind": "consistent_error_pattern", "service": "support-bot", "step": "llm.call", "error": "TimeoutError: model call exceeded 60s", "title": "TimeoutError: model call exceeded 60s", "labels": { "service": "support-bot", "step": "llm.call" }, "occurrences": 14, "runs": 5, "first_seen": "2026-09-03T14:02:11Z", "last_seen": "2026-09-03T15:27:40Z", "sample_trace_ids": ["9f3a2c81…", "b04e11d9…"], "url": "https://eu.console.rius-glassflow.com/…" }
  1. Verify delivery when the alert next fires. Open the firing’s page, which shows the outcome of every delivery attempt. On the Alerts page, the channel row shows a warning if deliveries are failing.

What you get

  • Each firing arrives at your receiver as one JSON body with a one-line text, the service, step and error, counts, timestamps and a link back to the firing in Rius.
  • Failure signals you can act on. A failing channel row shows the number of failures in a row, the hint check the receiver, and the last error your receiver returned, word for word, with the time it happened.
  • Automatic protection from a dead endpoint. After five failed deliveries in a row, Rius disables the channel so it stops retrying a destination that is not answering. The last error stays on the disabled row so you can see why. Fix the cause, then enable the channel again.
  • A warning and error that clear on the next successful delivery.
  • One channel reused across every alert in the workspace.

When something else fits

  • If you want alerts in a chat tool or an inbox, the same Alerts page offers Slack and email channels, with their own setup steps.
  • If a webhook receiver is too noisy, adjust the alert’s thresholds instead of removing the channel.

Still stuck? Get help

Last updated on