alertChannels section of devhelm.yml defines where incident notifications are sent. Each channel has a type and type-specific configuration.
Common fields
| Field | Type | Required | Description |
|---|---|---|---|
name | string | Yes | Unique channel name (used to reference from monitors and policies) |
type | string | Yes | Channel type (see below) |
config | object | Yes | Type-specific configuration |
Channel types
Slack
| Config field | Required | Description |
|---|---|---|
webhookUrl | Yes | Slack incoming webhook URL |
mentionText | — | Text to mention (e.g., @channel, @here, <@U123>) |
PagerDuty
| Config field | Required | Description |
|---|---|---|
routingKey | Yes | PagerDuty Events API v2 routing key |
severityOverride | — | Override severity sent to PagerDuty |
OpsGenie
| Config field | Required | Description |
|---|---|---|
apiKey | Yes | OpsGenie API integration key |
region | — | OpsGenie region: us or eu |
Discord
| Config field | Required | Description |
|---|---|---|
webhookUrl | Yes | Discord webhook URL |
mentionRoleId | — | Discord role ID to mention |
Microsoft Teams
| Config field | Required | Description |
|---|---|---|
webhookUrl | Yes | Teams incoming webhook URL |
| Config field | Required | Description |
|---|---|---|
recipients | Yes | List of email addresses (non-empty) |
Webhook
| Config field | Required | Description |
|---|---|---|
url | Yes | HTTP endpoint URL |
signingSecret | — | HMAC signing secret for payload verification |
customHeaders | — | Custom headers sent with each request |
Referencing channels
Monitors and notification policies reference channels by name:Using environment variables
Store sensitive values (webhook URLs, API keys, routing keys) as environment variables and reference them with${VAR} syntax. Set them in your shell or CI secrets — they’re resolved at deploy time.
Next steps
Notification policies
Route incidents through escalation chains.
Integrations
Setup guides for each channel type.