Notification Channels
Overview
A Notification Channel is a delivery endpoint that WEDA uses to send alert notifications.
Alert Policies reference channels by channelId. When an alert triggers, WEDA dispatches a message
to every channel listed in the policy.
Notification channels and templates are managed at the Org level and can be referenced by Alert Policies within that Org. Four channel types are supported:
| Type | Delivery method | Config highlights |
|---|---|---|
email | SMTP email | Host, port, TLS/SSL, sender address, optional recipients |
linemessage | LINE Messaging API | Channel access token |
teams | Microsoft Teams Workflows webhook | Webhook URL |
webhook | Generic HTTP request | URL, method, content type |
Channel Concepts
Channel and Template
A channel defines where to send the notification and how to connect. The template defines
what to send — the message content with {variable} placeholders filled in at dispatch time.
When an alert policy fires, it supplies:
channelIds— which channels to deliver totemplateId— which template to renderrecipients— any additional recipients (e.g. email addresses for an email channel)variables— key/value pairs to substitute into the template
Delivery Settings
Each channel can define optional commonSettings that control delivery behavior:
| Setting | Purpose |
|---|---|
timeout | Maximum time to wait for the delivery attempt |
retryAttempts | Number of retries on failure (0–10) |
retryDelay | Wait time between retries |
Channel Lifecycle
A channel can be enabled or disabled. Disabling a channel prevents it from being used for notification delivery without deleting its configuration. Enable it again to resume delivery.
Email Channel
Sends notifications via SMTP.
See Create Channel for full field reference. Required config fields:
host, port, username, password, and senderEmail; senderName and secure are optional.
Use secure to configure whether the SMTP connection uses TLS/SSL. The selected port must match the
SMTP server configuration.
Sensitive values such as the SMTP password are never returned in API responses.
Default Recipients
An email channel can define default recipients in its config. For a default recipient, target must
be a valid email address and type must be to or cc.
Recipients supplied per-notification by an Alert Policy are handled separately from the channel's default recipients — see Alert Policies.
LINE Channel (linemessage)
Sends notifications via the LINE Messaging API. Requires a LINE Official Account and a channel access token from the LINE Developer Console.
See Create Channel for full field reference. The accessToken is never
returned in API responses.
Send modes (sendMode):
| Mode | Description |
|---|---|
push | Send to one or more specified recipients |
multicast | Send a single request to multiple specified recipients |
Set target on each recipient to the identifier required by the LINE Messaging API.
Microsoft Teams Channel (teams)
Sends notifications to a configured Microsoft Teams Workflows webhook URL.
See Create Channel for full field reference. The only required config
field is url, which must be a Microsoft Teams Workflows HTTPS webhook URL.
A Teams channel sends the rendered notification content to that webhook URL. Templates targeting
Teams use only content — the template subject is not used for Teams.
Webhook Channel
Sends notifications as an HTTP request to any custom endpoint.
See Create Channel for full field reference. Required config fields:
url— the target endpointmethod—GET,POST,PUT, orDELETEcontentType— one of the values below
Content type values:
| Config value | HTTP Content-Type |
|---|---|
applicationJson | application/json |
applicationFormUrlEncoded | application/x-www-form-urlencoded |
textPlain | text/plain |
Templates
Templates define message content. They use {variableName} syntax for variable substitution:
Subject: [{severity}] Alert on {deviceName}
Content: Device {deviceName} triggered {eventType} at {timestamp}. Value: {value}
Provide values for all variables referenced by the selected template.
Template field limits: name up to 200 characters, subject up to 500 characters (email only),
content up to 50,000 characters.
Template–Channel Type Binding
The channelTypes field is required — a template must declare one or more channel types it
targets, for example:
["email", "teams"]
Using a template with a channel whose type is not in its channelTypes list fails at dispatch time.
Note that the subject field is used only by the email channel type; teams, linemessage, and
webhook use content only.
Operations
Channels
| Operation | API | Description |
|---|---|---|
| Create Channel | POST /api/v1/orgs/{orgId}/notifications/channels | Create a notification channel |
| List Channels | GET /api/v1/orgs/{orgId}/notifications/channels | List all channels |
| Get Channel | GET /api/v1/orgs/{orgId}/notifications/channels/{channelId} | Get channel configuration |
| Update Channel | PATCH /api/v1/orgs/{orgId}/notifications/channels/{channelId} | Update config, recipients, or linked template |
| Enable / Disable | PUT /api/v1/orgs/{orgId}/notifications/channels/{channelId}/status | Enable or disable delivery |
| Delete Channel | DELETE /api/v1/orgs/{orgId}/notifications/channels/{channelId} | Remove the channel |
| List Available Types | GET /api/v1/orgs/{orgId}/notifications/channels/registry-info/types | All available channel types and their status |
| Get Channel Type Info | GET /api/v1/orgs/{orgId}/notifications/channels/registry-info/types/{channelType} | The configSchema and examples for one channel type |
Templates
| Operation | API | Description |
|---|---|---|
| Create Template | POST /api/v1/orgs/{orgId}/notifications/templates | Create a message template |
| List Templates | GET /api/v1/orgs/{orgId}/notifications/templates | List all templates |
| Get Template | GET /api/v1/orgs/{orgId}/notifications/templates/{templateId} | Get template detail |
| Update Template | PATCH /api/v1/orgs/{orgId}/notifications/templates/{templateId} | Modify template content |
| Delete Template | DELETE /api/v1/orgs/{orgId}/notifications/templates/{templateId} | Remove a template |
Delivery Status
| Operation | API | Description |
|---|---|---|
| List Messages | GET /api/v1/orgs/{orgId}/notifications/messages | List notification delivery records |
| Get Message Status | GET /api/v1/orgs/{orgId}/notifications/messages/{messageId} | Check delivery status of a specific message |
A single message can be dispatched to multiple channels, so its overall status reflects the
combined result: a partial status means some — but not all — of the target channels were
delivered successfully.
Scenario
A system integrator creates an email channel and a Teams channel, then attaches both to a temperature Alert Policy:
Constraints
- Sensitive values such as SMTP passwords and LINE access tokens are never returned in API responses
- Channel names must be unique within the Org (max 100 characters, no whitespace)
- A disabled channel is not used for notification delivery
emailchannels require a valid SMTP server reachable from the WEDA Cloud network
Related
- Attach channels to a monitoring policy: Alert Policies