Alert channel IDs are UUIDs. The CLI validates the format locally before calling the API. Get IDs from
devhelm alert-channels list.Commands
| Command | Description |
|---|---|
devhelm alert-channels list | List all alert channels |
devhelm alert-channels get <id> | Get channel details |
devhelm alert-channels create | Create an alert channel |
devhelm alert-channels update <id> | Update a channel |
devhelm alert-channels delete <id> | Delete a channel |
devhelm alert-channels test <id> | Send a test notification |
alert-channels list
| Flag | Type | Default | Description |
|---|---|---|---|
--page-size | integer | 200 | Number of items per API request (1–200) |
alert-channels get
alert-channels create
Create a new alert channel.| Flag | Type | Required | Description |
|---|---|---|---|
--name | string | Yes | Channel display name |
--type | string | Yes | Channel type (lowercase): email, webhook, slack, pagerduty, opsgenie, teams, discord, telegram, google_chat, pushover, mattermost, splunk_oncall, pushbullet, linear, incident_io, rootly, zapier, datadog, jira, gitlab |
--webhook-url | string | — | Webhook URL (used by webhook, slack, discord, teams channel types) |
--config | string | — | Channel-specific configuration as JSON (see note below) |
Channel type values are lowercase everywhere — in the CLI
--type flag, in --config JSON, and in the YAML channelType field. Both surfaces validate against the same OpenAPI enum and reject uppercase values.Examples by type
Configuring channels that need extra fields
For channels that need more than a webhook URL, pass the configuration as a JSON string with--config. The CLI validates the JSON locally against the matching schema for these 7 types only: email, webhook, slack, pagerduty, opsgenie, teams, discord.
For the remaining types (telegram, google_chat, pushover, mattermost, splunk_oncall, pushbullet, linear, incident_io, rootly, zapier, datadog, jira, gitlab), the --config flag rejects the payload before it reaches the API, and there are no dedicated flags for their fields (bot tokens, API keys, project IDs, …). Configure those channels via config-as-code or the dashboard instead:
Config-as-code
alert-channels update
create (--name, --type, --config, --webhook-url), all optional.
alert-channels delete
Prompts for confirmation; pass--yes (-y) in scripts and CI.
alert-channels test
Send a test notification through the channel to verify the configuration.Next steps
Alert channels reference
Detailed configuration for each channel type.
Integrations
Setup guides for Slack, PagerDuty, OpsGenie, and more.