Chat delivery

Deliver matched events straight into Slack, Microsoft Teams, or Discord, with rich formatting where the platform supports it, so a match becomes a message where your team already works.

Not every consumer is a server. A match is often most useful as a message in the channel your team already watches. Hypeline delivers matched events directly into chat, so you can go from a source to a Slack message without writing a consumer.

Supported destinations

DestinationFormatting
SlackNative Block Kit messages via chat.postMessage.
DiscordNative rich embeds.
Microsoft TeamsFormatted message cards.

Several other destinations are supported through the same delivery lane, including Telegram, Matrix, Google Chat, ntfy, Pushover, and Gotify. Slack and Discord get first-class native formatting; the rest receive a clean formatted message.

How it works

Chat delivery is driven by the same matching that powers the stream. You define an alert (a keyword or Boolean filter, optionally narrowed to specific sources or tags), add a chat destination to it, and every event that matches is delivered as a message. Because delivery rides on matching, you only ever get the events you asked for, not the whole stream.

Create an alert and add a chat destination to it from the dashboard at app.hypeline.io. Slack and Discord are connected accounts: you link a workspace or server over OAuth, so Hypeline posts as an app with a token you can revoke at any time from the platform side, and every alert can route to a channel on that connected account.

Chat and webhooks are the same lane, different shape

Chat and webhooks are two shapes of one delivery lane. Use chat when a human should see the match; use a webhook when a service should act on it. The same alert can drive both.

When to reach for a webhook instead

Chat is for people. When a system needs to act on a match (open a ticket, kick off a workflow, write to a database), deliver to a webhook instead: it is retried until it succeeds, signed with HMAC so you can verify it came from us, and carries the full StreamEvent body rather than a formatted summary.