See also: Notifications concept and configuration for what this API powers, when to call it, and how it is configured.
X-Tenant-Id or authenticated session)
and the X-Requested-With: XMLHttpRequest header on mutating requests.
GET /api/v1/notifications/providers
List all notification destinations for the tenant. Secrets are redacted (••••••••) in the returned config blobs.
RBAC: viewer, editor, or admin.
Response
POST /api/v1/notifications/providers
Create a new destination. Admin only.Request Body
Config shapes
kind: slack
kind: slack
kind: teams
kind: teams
kind: webhook
kind: webhook
secret and headers are optional. When secret is present, each POST
includes X-Kaireon-Signature: sha256=<hex> over the body.kind: ops_email
kind: ops_email
email integration.Response (201)
Returns the created record (without theconfig blob — call GET :id for the redacted view).
Errors
422—configfailed the adapter’s schema (e.g., non-HTTPS webhook URL).400—kindis not a recognized adapter.
GET /api/v1/notifications/providers/:id
Read one destination. Returns the redacted config. RBAC: viewer, editor, or admin.PATCH /api/v1/notifications/providers/:id
Partial update. Admin only.Request Body
When updating
config, supply only the fields that changed. Unsupplied
fields keep their current value. Secret-like fields left as the ••••••••
placeholder are ignored.
DELETE /api/v1/notifications/providers/:id
Delete a destination. Admin only. Returns204 on success.
Alert rules that reference the deleted destination continue to evaluate but
will log delivery_failed on their next fire.
POST /api/v1/notifications/providers/:id/test
Fire a connection probe against the configured provider. Admin only.Response (200 on success, 502 on adapter failure)
POST /api/v1/notifications/send
Dispatch an ad-hoc notification to one or more destinations. Used by the alert-rule evaluator and scheduled reports; also callable by admins for testing. Admin only.Request Body
Notification payload
severity is one of info, warning, critical. fields and
sourceUrl are optional.
Response
200 when at least one provider accepted the dispatch, 502 when every
provider failed: