Notification Domain
The Notification domain handles the creation, formatting, and delivery of notifications within the Control Plane. It supports multiple delivery channels and uses admin-defined templates so that notification content can be customized without changing application code.
Custom Resources
Notification
Notification is the Schema for the notifications API
Group: notification.cp.ei.telekom.de · Version: v1 · Scope: Namespaced
NotificationSpec
Appears in: Notification
spec defines the desired state of Notification
| Field | Type | Default | Validation |
|---|---|---|---|
channels | Channels[] | — | Optional |
properties | object | — | Optional |
purpose | string | — | Required, minLength: 1, maxLength: 63 |
sender | Sender | — | Required |
Channels
Appears in: NotificationSpec
Channels defines the channels to send the notification to.
| Field | Type | Default | Validation |
|---|---|---|---|
name | string | — | Required |
namespace | string | — | Required |
uid | string | — | Optional |
Sender
Appears in: NotificationSpec
Sender contains the information about the entity that is sending the notification
| Field | Type | Default | Validation |
|---|---|---|---|
name | string | — | Required, minLength: 1, maxLength: 63 |
type | string | — | Required, Enum: User \| System |
NotificationStatus
Appears in: Notification
status defines the observed state of Notification
| Field | Type | Default | Validation |
|---|---|---|---|
conditions | Condition[] | — | Optional |
states | map<string, object> | — | Optional |
Condition
Appears in: NotificationStatus, NotificationChannelStatus
Conditions represent the latest available observations of the Rover's state
| Field | Type | Default | Validation |
|---|---|---|---|
lastTransitionTime | string | — | Required, Format: date-time |
message | string | — | Required, maxLength: 32768 |
observedGeneration | integer | — | Optional, Format: int64, minimum: 0 |
reason | string | — | Required, minLength: 1, maxLength: 1024, pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ |
status | string | — | Required, Enum: True \| False \| Unknown |
type | string | — | Required, maxLength: 316, pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$ |
NotificationChannel
NotificationChannel is the Schema for the notificationchannels API
Group: notification.cp.ei.telekom.de · Version: v1 · Scope: Namespaced
NotificationChannelSpec
Appears in: NotificationChannel
spec defines the desired state of NotificationChannel
| Field | Type | Default | Validation |
|---|---|---|---|
email | — | Optional | |
ignore | string[] | — | Optional, maxItems: 100 |
msTeams | MsTeams | — | Optional |
webhook | Webhook | — | Optional |
Email
Appears in: NotificationChannelSpec
Mail configuration, required if Type is Mail
| Field | Type | Default | Validation |
|---|---|---|---|
authentication | Authentication | — | Optional |
from | string | — | Optional, Format: email |
recipients | string[] | — | Required |
Authentication
Appears in: Email, MsTeams, Webhook
Authentication configuration
| Field | Type | Default | Validation |
|---|---|---|---|
none | object | — | Optional |
oauth2 | Oauth2 | — | Optional |
Oauth2
Appears in: Authentication
| Field | Type | Default | Validation |
|---|---|---|---|
clientId | string | — | Required |
clientSecret | string | — | Required |
scopes | string[] | — | Optional |
tokenUrl | string | — | Required, pattern: ^https?://[^\s/$.?#].[^\s]*$ |
MsTeams
Appears in: NotificationChannelSpec
Chat configuration, required if Type is Chat
| Field | Type | Default | Validation |
|---|---|---|---|
authentication | Authentication | — | Optional |
webhookUrl | string | — | Required, Format: uri |
Webhook
Appears in: NotificationChannelSpec
Callback configuration, required if Type is Callback
| Field | Type | Default | Validation |
|---|---|---|---|
authentication | Authentication | — | Optional |
headers | map<string, string> | — | Optional |
method | string | POST | Required, Enum: POST |
url | string | — | Required, pattern: ^https?://[^\s/$.?#].[^\s]*$ |
NotificationChannelStatus
Appears in: NotificationChannel, NotificationTemplate
status defines the observed state of NotificationChannel
| Field | Type | Default | Validation |
|---|---|---|---|
conditions | Condition[] | — | Optional |
NotificationTemplate
NotificationTemplate is the Schema for the notificationtemplates API
Group: notification.cp.ei.telekom.de · Version: v1 · Scope: Namespaced
NotificationTemplateSpec
Appears in: NotificationTemplate
spec defines the desired state of NotificationTemplate
| Field | Type | Default | Validation |
|---|---|---|---|
channelType | string | — | Required, Enum: Email \| MsTeams \| Webhook |
purpose | string | — | Required, minLength: 1, maxLength: 63 |
schema | object | — | Optional |
subjectTemplate | string | — | Optional |
template | string | — | Required |
Domain Interactions
- Organization domain — Automatically creates a NotificationChannel for each team.
- Approval domain — Creates Notification resources for approval lifecycle events.
- All domains — Any domain can trigger notifications by creating Notification resources.