Integrations
KubeSense supports multiple notification channels for delivering alerts to your team. Configure one or more channels and associate them with alert rules for flexible routing.
Creating a Notification Channel
Navigate to Alerts in the sidebar and open the notification channel settings. Click to add a new channel.

| Field | Description |
|---|---|
| Name | A unique name for the channel |
| Matching Labels | Optional key-value matchers for label-based routing (e.g., severity = critical) |
| Type | The channel type — Slack, Microsoft Teams, Email, PagerDuty, or Webhook |
After selecting a type, provide the required configuration fields (see below), then save the channel.
Supported Channels
Slack
Send alert notifications to a Slack channel via an incoming webhook.
| Field | Required | Description |
|---|---|---|
| Webhook URL | Yes | Slack incoming webhook URL |
| Channel | No | Override the default channel |
Slack messages include alert name, status (firing/resolved), severity, value, threshold, description, labels, and a link to open the alert in KubeSense. When multiple alerts are batched, the title shows firing and resolved counts (e.g., [FIRING:6, RESOLVED:1] Logs Availability).
Microsoft Teams
Send alert notifications to a Microsoft Teams channel via a webhook connector.
| Field | Required | Description |
|---|---|---|
| Webhook URL | Yes | Teams incoming webhook URL (from a Teams Workflow or Power Automate connector) |
Teams messages use Adaptive Card formatting with the same information as Slack — alert name, status, severity, value, threshold, labels, and timestamps.
Deliver alert notifications via SMTP email to one or more recipients.
| Field | Required | Description |
|---|---|---|
| SMTP Host | Yes | SMTP server hostname (e.g., smtp.gmail.com, smtp.office365.com) |
| SMTP Port | Yes | SMTP port (typically 587 for TLS, 465 for SSL) |
| Username | Yes | SMTP authentication username |
| Password | Yes | SMTP authentication password or app-specific password |
| From Email | Yes | Sender email address |
| To Emails | Yes | List of recipient email addresses |
| Use TLS | No | Enable TLS encryption (recommended) |
PagerDuty
Create incidents in PagerDuty when alerts fire, and auto-resolve when alerts recover.
| Field | Required | Description |
|---|---|---|
| Integration Key | Yes | PagerDuty service integration key (Events API v2) |
Alert severity is mapped to PagerDuty severity levels. Resolved alerts automatically resolve the corresponding PagerDuty incident.
Webhook
Send alert payloads as HTTP requests to any endpoint — useful for custom integrations, ChatOps bots, ticketing systems, or internal tooling.
| Field | Required | Description |
|---|---|---|
| URL | Yes | Target HTTP endpoint |
| Method | No | HTTP method (defaults to POST) |
| Headers | No | Custom HTTP headers (e.g., Authorization: Bearer <token>) |
| Timeout | No | Request timeout in seconds |
The payload contains the full alert context including name, status, severity, value, threshold, labels, and annotations.
Alert Routing
There are two ways to route alerts to notification channels:
Direct Assignment
When creating an alert rule, select a specific notification channel from the Notification Channel dropdown in the Alert Routing section. All alerts from that rule are sent to the selected channel.
Label-Based Routing (Notification Channel Policy)
Configure Matching Labels on a notification channel to enable automatic routing. When an alert fires, its labels are compared against the matching labels of all channels. If a channel's matchers match the alert's labels, that channel receives the notification.
This enables patterns like:
- Channel with
severity = criticalreceives all critical alerts - Channel with
team = platformreceives all alerts labeled for the platform team - Channel with no matchers acts as a catch-all for unmatched alerts
Multiple channels can match a single alert, allowing you to send the same alert to both Slack and PagerDuty simultaneously.
Testing Channels
After creating a notification channel, use the Test action to send a test notification and verify connectivity before associating it with alert rules.
Notification Content
All notification channels receive the same core alert information:
| Field | Description |
|---|---|
| Alert Name | Name of the alert rule |
| Status | firing or resolved |
| Severity | critical, warning, or info |
| Value | The evaluated metric value that triggered the alert |
| Threshold | The configured threshold and operator (e.g., greater_than 100) |
| Description | Alert description text |
| Labels | All labels attached to the alert (including group-by values for multi-series alerts) |
| Started | Timestamp when the alert started firing |
| Link | Direct link to view the alert in KubeSense |
For batched notifications (multiple alerts grouped together), the title includes firing and resolved counts — for example, [FIRING:6, RESOLVED:1] Logs Availability.