Notify API Reference
| Field | Value |
|---|---|
| Source spec | notify/openapi/v1.json |
| OpenAPI version | 3.1.1 |
| API version | 1.0.0 |
| Operations | 198 |
| Path filter | All paths |
Operations
GET /api/v1/assurance/reporting-timeline-profiles
Lists assurance reporting timeline profiles
Returns pack-owned reporting profile metadata that maps NIS2 and CRA workflows onto the shared Notify incident reporting timeline.
| Property | Value |
|---|---|
| Operation ID | ListAssuranceReportingTimelineProfiles |
| Tags | Assurance Reporting Timeline Profiles |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
frameworkId | query | no | |
reportType | query | no |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v1/assurance/reporting-timeline-profiles/{timelineProfileId}
Gets an assurance reporting timeline profile
| Property | Value |
|---|---|
| Operation ID | GetAssuranceReportingTimelineProfile |
| Tags | Assurance Reporting Timeline Profiles |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
timelineProfileId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v1/assurance/reporting-timeline-profiles/{timelineProfileId}/readiness
Gets redacted setup readiness for an assurance reporting timeline profile
Reports stable reason codes for operator handoff and auto-submit readiness without exposing secret values.
| Property | Value |
|---|---|
| Operation ID | GetAssuranceReportingTimelineProfileReadiness |
| Tags | Assurance Reporting Timeline Profiles |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
timelineProfileId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v1/buildinfo
API alias for /buildinfo.json (same payload).
| Property | Value |
|---|---|
| Operation ID | StellaOpsBuildInfoApi |
| Tags | StellaOps.Notify.WebService |
| Auth | Not declared |
| Request body | - |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
POST /api/v1/events/{producer}
| Property | Value |
|---|---|
| Operation ID | - |
| Tags | Events |
| Auth | Not declared |
| Request body | application/json |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
producer | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v1/notify/anomaly-subscriptions
List tenant-scoped Timeline anomaly notification subscriptions.
| Property | Value |
|---|---|
| Operation ID | ListNotifyAnomalySubscriptions |
| Tags | Notify Anomaly Subscriptions |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
enabled | query | no |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
POST /api/v1/notify/anomaly-subscriptions
Create or replace a tenant-scoped Timeline anomaly notification subscription.
| Property | Value |
|---|---|
| Operation ID | CreateNotifyAnomalySubscription |
| Tags | Notify Anomaly Subscriptions |
| Auth | Not declared |
| Request body | application/json |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
PUT /api/v1/notify/anomaly-subscriptions/{id}
Update a tenant-scoped Timeline anomaly notification subscription.
| Property | Value |
|---|---|
| Operation ID | UpdateNotifyAnomalySubscription |
| Tags | Notify Anomaly Subscriptions |
| Auth | Not declared |
| Request body | application/json |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
id | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
DELETE /api/v1/notify/anomaly-subscriptions/{id}
Delete a tenant-scoped Timeline anomaly notification subscription.
| Property | Value |
|---|---|
| Operation ID | DeleteNotifyAnomalySubscription |
| Tags | Notify Anomaly Subscriptions |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
id | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v1/notify/audit
notify.audit.list_description
| Property | Value |
|---|---|
| Operation ID | NotifyListAuditEntries |
| Tags | StellaOps.Notify.WebService |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
actorId | query | no | |
correlationId | query | no | |
cursor | query | no | |
endDate | query | no | |
limit | query | no | |
offset | query | no | |
resourceId | query | no | |
resourceType | query | no | |
startDate | query | no |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
POST /api/v1/notify/audit
notify.audit.create_description
| Property | Value |
|---|---|
| Operation ID | NotifyCreateAuditEntry |
| Tags | StellaOps.Notify.WebService |
| Auth | Not declared |
| Request body | application/json |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v1/notify/channels
notify.channels.list_description
| Property | Value |
|---|---|
| Operation ID | NotifyListChannels |
| Tags | StellaOps.Notify.WebService |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
purpose | query | no |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
POST /api/v1/notify/channels
notify.channels.upsert_description
| Property | Value |
|---|---|
| Operation ID | NotifyUpsertChannel |
| Tags | StellaOps.Notify.WebService |
| Auth | Not declared |
| Request body | application/json |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v1/notify/channels/{channelId}
notify.channels.get_description
| Property | Value |
|---|---|
| Operation ID | NotifyGetChannel |
| Tags | StellaOps.Notify.WebService |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
channelId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
DELETE /api/v1/notify/channels/{channelId}
notify.channels.delete_description
| Property | Value |
|---|---|
| Operation ID | NotifyDeleteChannel |
| Tags | StellaOps.Notify.WebService |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
channelId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v1/notify/channels/{channelId}/health
Returns connector diagnostics for the specified channel.
| Property | Value |
|---|---|
| Operation ID | NotifyGetChannelHealth |
| Tags | StellaOps.Notify.WebService |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
channelId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
POST /api/v1/notify/channels/{channelId}/test
notify.channels.test_description
| Property | Value |
|---|---|
| Operation ID | NotifyTestChannel |
| Tags | StellaOps.Notify.WebService |
| Auth | Not declared |
| Request body | application/json |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
channelId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v1/notify/deliveries
notify.deliveries.list_description
| Property | Value |
|---|---|
| Operation ID | NotifyListDeliveries |
| Tags | StellaOps.Notify.WebService |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
channelId | query | no | |
correlationId | query | no | |
cveId | query | no | |
eventType | query | no | |
fixtureId | query | no | |
limit | query | no | |
offset | query | no | |
since | query | no | |
status | query | no | |
until | query | no |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
POST /api/v1/notify/deliveries
notify.deliveries.create_description
| Property | Value |
|---|---|
| Operation ID | NotifyCreateDelivery |
| Tags | StellaOps.Notify.WebService |
| Auth | Not declared |
| Request body | application/json |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
DELETE /api/v1/notify/deliveries
Delete tenant-scoped Notify deliveries matching cleanup filters
| Property | Value |
|---|---|
| Operation ID | NotifyDeleteDeliveries |
| Tags | StellaOps.Notify.WebService |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
correlationId | query | no | |
cveId | query | no | |
fixtureId | query | no | |
tenant | query | no |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v1/notify/deliveries/{deliveryId}
notify.deliveries.get_description
| Property | Value |
|---|---|
| Operation ID | NotifyGetDelivery |
| Tags | StellaOps.Notify.WebService |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
deliveryId | path | yes | |
tenant | query | no |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v1/notify/delivery/stats
Get delivery statistics for the last 24 hours
| Property | Value |
|---|---|
| Operation ID | NotifyDeliveryStats |
| Tags | StellaOps.Notify.WebService |
| Auth | Not declared |
| Request body | - |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
POST /api/v1/notify/digests
notify.digests.upsert_description
| Property | Value |
|---|---|
| Operation ID | NotifyUpsertDigest |
| Tags | StellaOps.Notify.WebService |
| Auth | Not declared |
| Request body | application/json |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v1/notify/digests/{actionKey}
notify.digests.get_description
| Property | Value |
|---|---|
| Operation ID | NotifyGetDigest |
| Tags | StellaOps.Notify.WebService |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
actionKey | path | yes | |
channelId | query | yes | |
recipient | query | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
DELETE /api/v1/notify/digests/{actionKey}
notify.digests.delete_description
| Property | Value |
|---|---|
| Operation ID | NotifyDeleteDigest |
| Tags | StellaOps.Notify.WebService |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
actionKey | path | yes | |
channelId | query | yes | |
recipient | query | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
POST /api/v1/notify/locks/acquire
notify.locks.acquire_description
| Property | Value |
|---|---|
| Operation ID | NotifyAcquireLock |
| Tags | StellaOps.Notify.WebService |
| Auth | Not declared |
| Request body | application/json |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
POST /api/v1/notify/locks/release
notify.locks.release_description
| Property | Value |
|---|---|
| Operation ID | NotifyReleaseLock |
| Tags | StellaOps.Notify.WebService |
| Auth | Not declared |
| Request body | application/json |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v1/notify/rules
notify.rules.list_description
| Property | Value |
|---|---|
| Operation ID | NotifyListRules |
| Tags | StellaOps.Notify.WebService |
| Auth | Not declared |
| Request body | - |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
POST /api/v1/notify/rules
notify.rules.upsert_description
| Property | Value |
|---|---|
| Operation ID | NotifyUpsertRule |
| Tags | StellaOps.Notify.WebService |
| Auth | Not declared |
| Request body | application/json |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v1/notify/rules/{ruleId}
notify.rules.get_description
| Property | Value |
|---|---|
| Operation ID | NotifyGetRule |
| Tags | StellaOps.Notify.WebService |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
ruleId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
DELETE /api/v1/notify/rules/{ruleId}
notify.rules.delete_description
| Property | Value |
|---|---|
| Operation ID | NotifyDeleteRule |
| Tags | StellaOps.Notify.WebService |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
ruleId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v1/notify/templates
notify.templates.list_description
| Property | Value |
|---|---|
| Operation ID | NotifyListTemplates |
| Tags | StellaOps.Notify.WebService |
| Auth | Not declared |
| Request body | - |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
POST /api/v1/notify/templates
notify.templates.upsert_description
| Property | Value |
|---|---|
| Operation ID | NotifyUpsertTemplate |
| Tags | StellaOps.Notify.WebService |
| Auth | Not declared |
| Request body | application/json |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v1/notify/templates/{templateId}
notify.templates.get_description
| Property | Value |
|---|---|
| Operation ID | NotifyGetTemplate |
| Tags | StellaOps.Notify.WebService |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
templateId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
DELETE /api/v1/notify/templates/{templateId}
notify.templates.delete_description
| Property | Value |
|---|---|
| Operation ID | NotifyDeleteTemplate |
| Tags | StellaOps.Notify.WebService |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
templateId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v1/observability/chaos/experiments
Lists chaos experiments
notifier.observability.chaos_list_description
| Property | Value |
|---|---|
| Operation ID | ListChaosExperiments |
| Tags | Observability |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
limit | query | yes | |
status | query | no |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
POST /api/v1/observability/chaos/experiments
Starts a new chaos experiment
notifier.observability.chaos_start_description
| Property | Value |
|---|---|
| Operation ID | StartChaosExperiment |
| Tags | Observability |
| Auth | Not declared |
| Request body | application/json |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v1/observability/chaos/experiments/{experimentId}
Gets a chaos experiment
notifier.observability.chaos_get_description
| Property | Value |
|---|---|
| Operation ID | GetChaosExperiment |
| Tags | Observability |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
experimentId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v1/observability/chaos/experiments/{experimentId}/results
Gets chaos experiment results
notifier.observability.chaos_results_description
| Property | Value |
|---|---|
| Operation ID | GetChaosResults |
| Tags | Observability |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
experimentId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
POST /api/v1/observability/chaos/experiments/{experimentId}/stop
Stops a running chaos experiment
notifier.observability.chaos_stop_description
| Property | Value |
|---|---|
| Operation ID | StopChaosExperiment |
| Tags | Observability |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
experimentId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v1/observability/dead-letters/{tenantId}
Lists dead letter entries for a tenant
notifier.observability.dead_letters_description
| Property | Value |
|---|---|
| Operation ID | GetDeadLetters |
| Tags | Observability |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
tenantId | path | yes | |
limit | query | no | |
offset | query | no |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
DELETE /api/v1/observability/dead-letters/{tenantId}/purge
Purges old dead letter entries
notifier.observability.dead_letter_purge_description
| Property | Value |
|---|---|
| Operation ID | PurgeDeadLetters |
| Tags | Observability |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
tenantId | path | yes | |
olderThanDays | query | no |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v1/observability/dead-letters/{tenantId}/stats
Gets dead letter statistics
notifier.observability.dead_letter_stats_description
| Property | Value |
|---|---|
| Operation ID | GetDeadLetterStats |
| Tags | Observability |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
tenantId | path | yes | |
windowHours | query | no |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v1/observability/dead-letters/{tenantId}/{entryId}
Gets a specific dead letter entry
notifier.observability.dead_letter_get_description
| Property | Value |
|---|---|
| Operation ID | GetDeadLetterEntry |
| Tags | Observability |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
entryId | path | yes | |
tenantId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
POST /api/v1/observability/dead-letters/{tenantId}/{entryId}/discard
Discards a dead letter entry
notifier.observability.dead_letter_discard_description
| Property | Value |
|---|---|
| Operation ID | DiscardDeadLetter |
| Tags | Observability |
| Auth | Not declared |
| Request body | application/json |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
entryId | path | yes | |
tenantId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
POST /api/v1/observability/dead-letters/{tenantId}/{entryId}/retry
Retries a dead letter entry
notifier.observability.dead_letter_retry_description
| Property | Value |
|---|---|
| Operation ID | RetryDeadLetter |
| Tags | Observability |
| Auth | Not declared |
| Request body | application/json |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
entryId | path | yes | |
tenantId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v1/observability/metrics
Gets current metrics snapshot
notifier.observability.metrics_description
| Property | Value |
|---|---|
| Operation ID | GetMetricsSnapshot |
| Tags | Observability |
| Auth | Not declared |
| Request body | - |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v1/observability/metrics/{tenantId}
Gets metrics for a specific tenant
notifier.observability.tenant_metrics_description
| Property | Value |
|---|---|
| Operation ID | GetTenantMetrics |
| Tags | Observability |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
tenantId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
POST /api/v1/observability/retention/execute
Executes retention policies
notifier.observability.retention_execute_description
| Property | Value |
|---|---|
| Operation ID | ExecuteRetention |
| Tags | Observability |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
policyId | query | no |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v1/observability/retention/policies
Lists retention policies
notifier.observability.retention_list_description
| Property | Value |
|---|---|
| Operation ID | ListRetentionPolicies |
| Tags | Observability |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
tenantId | query | no |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
POST /api/v1/observability/retention/policies
Creates a retention policy
notifier.observability.retention_create_description
| Property | Value |
|---|---|
| Operation ID | CreateRetentionPolicy |
| Tags | Observability |
| Auth | Not declared |
| Request body | application/json |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v1/observability/retention/policies/{policyId}
Gets a retention policy
notifier.observability.retention_get_description
| Property | Value |
|---|---|
| Operation ID | GetRetentionPolicy |
| Tags | Observability |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
policyId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
PUT /api/v1/observability/retention/policies/{policyId}
Updates a retention policy
notifier.observability.retention_update_description
| Property | Value |
|---|---|
| Operation ID | UpdateRetentionPolicy |
| Tags | Observability |
| Auth | Not declared |
| Request body | application/json |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
policyId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
DELETE /api/v1/observability/retention/policies/{policyId}
Deletes a retention policy
notifier.observability.retention_delete_description
| Property | Value |
|---|---|
| Operation ID | DeleteRetentionPolicy |
| Tags | Observability |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
policyId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v1/observability/retention/policies/{policyId}/history
Gets retention execution history
notifier.observability.retention_history_description
| Property | Value |
|---|---|
| Operation ID | GetRetentionHistory |
| Tags | Observability |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
policyId | path | yes | |
limit | query | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v1/observability/retention/policies/{policyId}/preview
Previews retention policy effects
notifier.observability.retention_preview_description
| Property | Value |
|---|---|
| Operation ID | PreviewRetention |
| Tags | Observability |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
policyId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
POST /api/v1/qa/fixtures/advanced-assurance-golden/notify-import
Imports the advanced-assurance golden fixture into Notify-owned delivery and reporting timeline rows
| Property | Value |
|---|---|
| Operation ID | ImportAdvancedAssuranceGoldenNotifyFixture |
| Tags | QA Fixtures |
| Auth | Not declared |
| Request body | application/json |
Responses:
| Status | Description | Content types |
|---|---|---|
202 | Accepted | application/json |
400 | Bad Request | application/json |
GET /api/v1/qa/fixtures/advanced-assurance-golden/timeline-readiness
Queries Notify-owned NIS2, DORA, and CRA timeline readiness for a golden-fixture evidence reference
| Property | Value |
|---|---|
| Operation ID | GetAdvancedAssuranceGoldenTimelineReadiness |
| Tags | QA Fixtures |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
evidenceRef | query | no |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | application/json |
400 | Bad Request | application/json |
GET /api/v1/regulatory/reporting-timelines
Queries tenant-scoped incident reporting timelines
Returns deterministic Notify-owned incident reporting timelines with milestone deadlines, payload hashes, signer refs, evidence refs, ledger refs, and audit refs.
| Property | Value |
|---|---|
| Operation ID | QueryRegulatoryReportingTimelines |
| Tags | Regulatory Reporting Timelines |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
active | query | no | |
cursor | query | no | |
evidenceRef | query | no | |
incidentId | query | no | |
limit | query | no | |
regime | query | no | |
state | query | no |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v2/ack
Process an acknowledgment link
notifier.ack.link_description
| Property | Value |
|---|---|
| Operation ID | ProcessAckLink |
| Tags | Acknowledgment |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
token | query | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
POST /api/v2/ack
Process an acknowledgment
notifier.ack.process_description
| Property | Value |
|---|---|
| Operation ID | ProcessAck |
| Tags | Acknowledgment |
| Auth | Not declared |
| Request body | application/json |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
POST /api/v2/ack/webhook/opsgenie/{tenantId}
Process OpsGenie webhook (per-tenant)
notifier.ack.opsgenie_description
| Property | Value |
|---|---|
| Operation ID | OpsGenieWebhook |
| Tags | Acknowledgment - Inbound Webhooks |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
tenantId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
POST /api/v2/ack/webhook/pagerduty/{tenantId}
Process PagerDuty webhook (per-tenant)
notifier.ack.pagerduty_description
| Property | Value |
|---|---|
| Operation ID | PagerDutyWebhook |
| Tags | Acknowledgment - Inbound Webhooks |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
tenantId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v2/escalation-policies
List escalation policies
notifier.escalation_policy.list_description
| Property | Value |
|---|---|
| Operation ID | ListEscalationPolicies |
| Tags | Escalation Policies |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
X-Tenant-Id | header | no |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
POST /api/v2/escalation-policies
Create an escalation policy
notifier.escalation_policy.create_description
| Property | Value |
|---|---|
| Operation ID | CreateEscalationPolicy |
| Tags | Escalation Policies |
| Auth | Not declared |
| Request body | application/json |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
X-Actor | header | no | |
X-Tenant-Id | header | no |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v2/escalation-policies/{policyId}
Get an escalation policy
notifier.escalation_policy.get_description
| Property | Value |
|---|---|
| Operation ID | GetEscalationPolicy |
| Tags | Escalation Policies |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
X-Tenant-Id | header | no | |
policyId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
PUT /api/v2/escalation-policies/{policyId}
Update an escalation policy
notifier.escalation_policy.update_description
| Property | Value |
|---|---|
| Operation ID | UpdateEscalationPolicy |
| Tags | Escalation Policies |
| Auth | Not declared |
| Request body | application/json |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
X-Actor | header | no | |
X-Tenant-Id | header | no | |
policyId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
DELETE /api/v2/escalation-policies/{policyId}
Delete an escalation policy
notifier.escalation_policy.delete_description
| Property | Value |
|---|---|
| Operation ID | DeleteEscalationPolicy |
| Tags | Escalation Policies |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
X-Actor | header | no | |
X-Tenant-Id | header | no | |
policyId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v2/escalations
List active escalations
notifier.escalation.list_description
| Property | Value |
|---|---|
| Operation ID | ListActiveEscalations |
| Tags | Escalations |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
X-Tenant-Id | header | no |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v2/escalations/{incidentId}
Get escalation state for an incident
notifier.escalation.get_description
| Property | Value |
|---|---|
| Operation ID | GetEscalationState |
| Tags | Escalations |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
X-Tenant-Id | header | no | |
incidentId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
POST /api/v2/escalations/{incidentId}/escalate
Manually escalate to next level
notifier.escalation.manual_description
| Property | Value |
|---|---|
| Operation ID | ManualEscalate |
| Tags | Escalations |
| Auth | Not declared |
| Request body | application/json |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
X-Actor | header | no | |
X-Tenant-Id | header | no | |
incidentId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
POST /api/v2/escalations/{incidentId}/start
Start escalation for an incident
notifier.escalation.start_description
| Property | Value |
|---|---|
| Operation ID | StartEscalation |
| Tags | Escalations |
| Auth | Not declared |
| Request body | application/json |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
X-Tenant-Id | header | no | |
incidentId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
POST /api/v2/escalations/{incidentId}/stop
Stop escalation
notifier.escalation.stop_description
| Property | Value |
|---|---|
| Operation ID | StopEscalation |
| Tags | Escalations |
| Auth | Not declared |
| Request body | application/json |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
X-Actor | header | no | |
X-Tenant-Id | header | no | |
incidentId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v2/fallback/chains/{channelType}
Gets the fallback chain for a channel type
notifier.fallback.get_chain_description
| Property | Value |
|---|---|
| Operation ID | GetFallbackChain |
| Tags | Fallback |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
channelType | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
PUT /api/v2/fallback/chains/{channelType}
Sets a custom fallback chain for a channel type
notifier.fallback.set_chain_description
| Property | Value |
|---|---|
| Operation ID | SetFallbackChain |
| Tags | Fallback |
| Auth | Not declared |
| Request body | application/json |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
channelType | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
DELETE /api/v2/fallback/deliveries/{deliveryId}
Clears fallback state for a specific delivery
notifier.fallback.clear_delivery_description
| Property | Value |
|---|---|
| Operation ID | ClearDeliveryFallbackState |
| Tags | Fallback |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
deliveryId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v2/fallback/statistics
Gets fallback handling statistics for a tenant
notifier.fallback.stats_description
| Property | Value |
|---|---|
| Operation ID | GetFallbackStatistics |
| Tags | Fallback |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
windowHours | query | no |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
POST /api/v2/fallback/test
Tests fallback resolution without affecting real deliveries
notifier.fallback.test_description
| Property | Value |
|---|---|
| Operation ID | TestFallback |
| Tags | Fallback |
| Auth | Not declared |
| Request body | application/json |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v2/incidents
Lists notification incidents (deliveries)
notifier.incident.list2_description
| Property | Value |
|---|---|
| Operation ID | ListIncidents |
| Tags | Incidents |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
continuationToken | query | no | |
kind | query | no | |
limit | query | no | |
ruleId | query | no | |
since | query | no | |
status | query | no |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v2/incidents/stats
Gets incident statistics
notifier.incident.stats_description
| Property | Value |
|---|---|
| Operation ID | GetIncidentStats |
| Tags | Incidents |
| Auth | Not declared |
| Request body | - |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v2/incidents/{deliveryId}
Gets an incident by delivery ID
notifier.incident.get2_description
| Property | Value |
|---|---|
| Operation ID | GetIncident |
| Tags | Incidents |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
deliveryId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
POST /api/v2/incidents/{deliveryId}/ack
Acknowledges an incident
notifier.incident.ack2_description
| Property | Value |
|---|---|
| Operation ID | AcknowledgeIncident |
| Tags | Incidents |
| Auth | Not declared |
| Request body | application/json |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
deliveryId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v2/localization/bundles
Lists all localization bundles for a tenant
notifier.localization.list_bundles_description
| Property | Value |
|---|---|
| Operation ID | ListLocalizationBundles |
| Tags | Localization |
| Auth | Not declared |
| Request body | - |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
PUT /api/v2/localization/bundles
Creates or updates a localization bundle
notifier.localization.upsert_bundle_description
| Property | Value |
|---|---|
| Operation ID | UpsertLocalizationBundle |
| Tags | Localization |
| Auth | Not declared |
| Request body | application/json |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
POST /api/v2/localization/bundles/validate
Validates a localization bundle without saving
notifier.localization.validate_bundle_description
| Property | Value |
|---|---|
| Operation ID | ValidateLocalizationBundle |
| Tags | Localization |
| Auth | Not declared |
| Request body | application/json |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
DELETE /api/v2/localization/bundles/{bundleId}
Deletes a localization bundle
notifier.localization.delete_bundle_description
| Property | Value |
|---|---|
| Operation ID | DeleteLocalizationBundle |
| Tags | Localization |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
bundleId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v2/localization/bundles/{locale}
Gets all localized strings for a locale
notifier.localization.get_bundle_description
| Property | Value |
|---|---|
| Operation ID | GetLocalizationBundle |
| Tags | Localization |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
locale | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v2/localization/locales
Gets all supported locales for a tenant
notifier.localization.get_locales_description
| Property | Value |
|---|---|
| Operation ID | GetSupportedLocales |
| Tags | Localization |
| Auth | Not declared |
| Request body | - |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v2/localization/strings/{key}
Gets a single localized string
notifier.localization.get_string_description
| Property | Value |
|---|---|
| Operation ID | GetLocalizedString |
| Tags | Localization |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
key | path | yes | |
locale | query | no |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
POST /api/v2/localization/strings/{key}/format
Gets a localized string with parameter substitution
notifier.localization.format_string_description
| Property | Value |
|---|---|
| Operation ID | FormatLocalizedString |
| Tags | Localization |
| Auth | Not declared |
| Request body | application/json |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
key | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v2/notify/channels
| Property | Value |
|---|---|
| Operation ID | - |
| Tags | Notify Admin Compat |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
enabled | query | no | |
limit | query | no | |
offset | query | no | |
purpose | query | no | |
type | query | no |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v2/notify/channels/{channelId}
| Property | Value |
|---|---|
| Operation ID | - |
| Tags | Notify Admin Compat |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
channelId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
PUT /api/v2/notify/channels/{channelId}
| Property | Value |
|---|---|
| Operation ID | - |
| Tags | Notify Admin Compat |
| Auth | Not declared |
| Request body | application/json |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
channelId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
DELETE /api/v2/notify/channels/{channelId}
| Property | Value |
|---|---|
| Operation ID | - |
| Tags | Notify Admin Compat |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
channelId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v2/notify/deliveries
| Property | Value |
|---|---|
| Operation ID | - |
| Tags | Notify Admin Compat |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
channelId | query | no | |
eventKind | query | no | |
limit | query | no | |
offset | query | no | |
ruleId | query | no | |
since | query | no | |
status | query | no | |
until | query | no |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v2/notify/deliveries/stats
| Property | Value |
|---|---|
| Operation ID | - |
| Tags | Notify Admin Compat |
| Auth | Not declared |
| Request body | - |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v2/notify/deliveries/{deliveryId}
| Property | Value |
|---|---|
| Operation ID | - |
| Tags | Notify Admin Compat |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
deliveryId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
POST /api/v2/notify/deliveries/{deliveryId}/retry
| Property | Value |
|---|---|
| Operation ID | - |
| Tags | Notify Admin Compat |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
deliveryId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v2/notify/escalation-policies
| Property | Value |
|---|---|
| Operation ID | - |
| Tags | Notify Admin Compat |
| Auth | Not declared |
| Request body | - |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v2/notify/escalation-policies/{policyId}
| Property | Value |
|---|---|
| Operation ID | - |
| Tags | Notify Admin Compat |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
policyId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
PUT /api/v2/notify/escalation-policies/{policyId}
| Property | Value |
|---|---|
| Operation ID | - |
| Tags | Notify Admin Compat |
| Auth | Not declared |
| Request body | application/json |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
policyId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
DELETE /api/v2/notify/escalation-policies/{policyId}
| Property | Value |
|---|---|
| Operation ID | - |
| Tags | Notify Admin Compat |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
policyId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v2/notify/inbox
List user in-app inbox messages.
| Property | Value |
|---|---|
| Operation ID | - |
| Tags | Notify |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
cursor | query | no | |
kind | query | no | |
limit | query | no | |
unreadOnly | query | no | |
userId | query | no |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
POST /api/v2/notify/inbox/read-all
Mark all user in-app inbox messages as read.
| Property | Value |
|---|---|
| Operation ID | - |
| Tags | Notify |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
userId | query | no |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v2/notify/inbox/unread-count
Return unread in-app inbox count.
| Property | Value |
|---|---|
| Operation ID | - |
| Tags | Notify |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
userId | query | no |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v2/notify/inbox/{messageId}
Get one in-app inbox message.
| Property | Value |
|---|---|
| Operation ID | - |
| Tags | Notify |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
messageId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
DELETE /api/v2/notify/inbox/{messageId}
Archive one in-app inbox message.
| Property | Value |
|---|---|
| Operation ID | - |
| Tags | Notify |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
messageId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
POST /api/v2/notify/inbox/{messageId}/read
Mark one in-app inbox message as read.
| Property | Value |
|---|---|
| Operation ID | - |
| Tags | Notify |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
messageId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v2/notify/incidents
notifier.incident.list_description
| Property | Value |
|---|---|
| Operation ID | - |
| Tags | Notify |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
cursor | query | no | |
eventKindPrefix | query | no | |
limit | query | no | |
since | query | no | |
status | query | no | |
until | query | no |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
POST /api/v2/notify/incidents/{incidentId}/ack
notifier.incident.ack_description
| Property | Value |
|---|---|
| Operation ID | - |
| Tags | Notify |
| Auth | Not declared |
| Request body | application/json |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
incidentId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
POST /api/v2/notify/incidents/{incidentId}/resolve
notifier.incident.resolve_description
| Property | Value |
|---|---|
| Operation ID | - |
| Tags | Notify |
| Auth | Not declared |
| Request body | application/json |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
incidentId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v2/notify/overrides
| Property | Value |
|---|---|
| Operation ID | - |
| Tags | Notify Admin Compat |
| Auth | Not declared |
| Request body | - |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
POST /api/v2/notify/overrides
| Property | Value |
|---|---|
| Operation ID | - |
| Tags | Notify Admin Compat |
| Auth | Not declared |
| Request body | application/json |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v2/notify/overrides/{overrideId}
| Property | Value |
|---|---|
| Operation ID | - |
| Tags | Notify Admin Compat |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
overrideId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
PUT /api/v2/notify/overrides/{overrideId}
| Property | Value |
|---|---|
| Operation ID | - |
| Tags | Notify Admin Compat |
| Auth | Not declared |
| Request body | application/json |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
overrideId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
DELETE /api/v2/notify/overrides/{overrideId}
| Property | Value |
|---|---|
| Operation ID | - |
| Tags | Notify Admin Compat |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
overrideId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v2/notify/quiet-hours
| Property | Value |
|---|---|
| Operation ID | - |
| Tags | Notify Admin Compat |
| Auth | Not declared |
| Request body | - |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v2/notify/quiet-hours/{quietHoursId}
| Property | Value |
|---|---|
| Operation ID | - |
| Tags | Notify Admin Compat |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
quietHoursId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
PUT /api/v2/notify/quiet-hours/{quietHoursId}
| Property | Value |
|---|---|
| Operation ID | - |
| Tags | Notify Admin Compat |
| Auth | Not declared |
| Request body | application/json |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
quietHoursId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
DELETE /api/v2/notify/quiet-hours/{quietHoursId}
| Property | Value |
|---|---|
| Operation ID | - |
| Tags | Notify Admin Compat |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
quietHoursId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v2/notify/rules
notifier.rule.list_description
| Property | Value |
|---|---|
| Operation ID | - |
| Tags | Notify |
| Auth | Not declared |
| Request body | - |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
POST /api/v2/notify/rules
notifier.rule.create_description
| Property | Value |
|---|---|
| Operation ID | - |
| Tags | Notify |
| Auth | Not declared |
| Request body | application/json |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v2/notify/rules/{ruleId}
notifier.rule.get_description
| Property | Value |
|---|---|
| Operation ID | - |
| Tags | Notify |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
ruleId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
PUT /api/v2/notify/rules/{ruleId}
notifier.rule.update_description
| Property | Value |
|---|---|
| Operation ID | - |
| Tags | Notify |
| Auth | Not declared |
| Request body | application/json |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
ruleId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
DELETE /api/v2/notify/rules/{ruleId}
notifier.rule.delete_description
| Property | Value |
|---|---|
| Operation ID | - |
| Tags | Notify |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
ruleId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
POST /api/v2/notify/simulate
| Property | Value |
|---|---|
| Operation ID | - |
| Tags | Notify Admin Compat |
| Auth | Not declared |
| Request body | application/json |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
POST /api/v2/notify/simulate/event
| Property | Value |
|---|---|
| Operation ID | - |
| Tags | Notify Admin Compat |
| Auth | Not declared |
| Request body | application/json |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v2/notify/templates
notifier.template.list_description
| Property | Value |
|---|---|
| Operation ID | - |
| Tags | Notify |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
channelType | query | no | |
keyPrefix | query | no | |
limit | query | no | |
locale | query | no |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
POST /api/v2/notify/templates
notifier.template.upsert_description
| Property | Value |
|---|---|
| Operation ID | - |
| Tags | Notify |
| Auth | Not declared |
| Request body | application/json |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
POST /api/v2/notify/templates/preview
notifier.template.preview_description
| Property | Value |
|---|---|
| Operation ID | - |
| Tags | Notify |
| Auth | Not declared |
| Request body | application/json |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
POST /api/v2/notify/templates/validate
notifier.template.validate_description
| Property | Value |
|---|---|
| Operation ID | - |
| Tags | Notify |
| Auth | Not declared |
| Request body | application/json |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v2/notify/templates/{templateId}
notifier.template.get_description
| Property | Value |
|---|---|
| Operation ID | - |
| Tags | Notify |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
templateId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
DELETE /api/v2/notify/templates/{templateId}
notifier.template.delete_description
| Property | Value |
|---|---|
| Operation ID | - |
| Tags | Notify |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
templateId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v2/notify/throttle-configs
| Property | Value |
|---|---|
| Operation ID | - |
| Tags | Notify Admin Compat |
| Auth | Not declared |
| Request body | - |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v2/notify/throttle-configs/{throttleId}
| Property | Value |
|---|---|
| Operation ID | - |
| Tags | Notify Admin Compat |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
throttleId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
PUT /api/v2/notify/throttle-configs/{throttleId}
| Property | Value |
|---|---|
| Operation ID | - |
| Tags | Notify Admin Compat |
| Auth | Not declared |
| Request body | application/json |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
throttleId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
DELETE /api/v2/notify/throttle-configs/{throttleId}
| Property | Value |
|---|---|
| Operation ID | - |
| Tags | Notify Admin Compat |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
throttleId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v2/oncall-schedules
List on-call schedules
notifier.oncall_schedule.list_description
| Property | Value |
|---|---|
| Operation ID | ListOnCallSchedules |
| Tags | On-Call Schedules |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
X-Tenant-Id | header | no |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
POST /api/v2/oncall-schedules
Create an on-call schedule
notifier.oncall_schedule.create_description
| Property | Value |
|---|---|
| Operation ID | CreateOnCallSchedule |
| Tags | On-Call Schedules |
| Auth | Not declared |
| Request body | application/json |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
X-Actor | header | no | |
X-Tenant-Id | header | no |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v2/oncall-schedules/{scheduleId}
Get an on-call schedule
notifier.oncall_schedule.get_description
| Property | Value |
|---|---|
| Operation ID | GetOnCallSchedule |
| Tags | On-Call Schedules |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
X-Tenant-Id | header | no | |
scheduleId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
PUT /api/v2/oncall-schedules/{scheduleId}
Update an on-call schedule
notifier.oncall_schedule.update_description
| Property | Value |
|---|---|
| Operation ID | UpdateOnCallSchedule |
| Tags | On-Call Schedules |
| Auth | Not declared |
| Request body | application/json |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
X-Actor | header | no | |
X-Tenant-Id | header | no | |
scheduleId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
DELETE /api/v2/oncall-schedules/{scheduleId}
Delete an on-call schedule
notifier.oncall_schedule.delete_description
| Property | Value |
|---|---|
| Operation ID | DeleteOnCallSchedule |
| Tags | On-Call Schedules |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
X-Actor | header | no | |
X-Tenant-Id | header | no | |
scheduleId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v2/oncall-schedules/{scheduleId}/oncall
Get current on-call users
notifier.oncall_schedule.current_description
| Property | Value |
|---|---|
| Operation ID | GetCurrentOnCall |
| Tags | On-Call Schedules |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
X-Tenant-Id | header | no | |
scheduleId | path | yes | |
atTime | query | no |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
POST /api/v2/oncall-schedules/{scheduleId}/overrides
Create an on-call override
notifier.oncall_schedule.create_override_description
| Property | Value |
|---|---|
| Operation ID | CreateOnCallOverride |
| Tags | On-Call Schedules |
| Auth | Not declared |
| Request body | application/json |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
X-Actor | header | no | |
X-Tenant-Id | header | no | |
scheduleId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
DELETE /api/v2/oncall-schedules/{scheduleId}/overrides/{overrideId}
Delete an on-call override
notifier.oncall_schedule.delete_override_description
| Property | Value |
|---|---|
| Operation ID | DeleteOnCallOverride |
| Tags | On-Call Schedules |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
X-Actor | header | no | |
X-Tenant-Id | header | no | |
overrideId | path | yes | |
scheduleId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v2/overrides
List active operator overrides
notifier.override.list_description
| Property | Value |
|---|---|
| Operation ID | ListOperatorOverrides |
| Tags | Overrides |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
X-Tenant-Id | header | no |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
POST /api/v2/overrides
Create an operator override
notifier.override.create_description
| Property | Value |
|---|---|
| Operation ID | CreateOperatorOverride |
| Tags | Overrides |
| Auth | Not declared |
| Request body | application/json |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
X-Actor | header | no | |
X-Tenant-Id | header | no |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
POST /api/v2/overrides/check
Check for applicable override
notifier.override.check_description
| Property | Value |
|---|---|
| Operation ID | CheckOperatorOverride |
| Tags | Overrides |
| Auth | Not declared |
| Request body | application/json |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
X-Tenant-Id | header | no |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v2/overrides/{overrideId}
Get an operator override
notifier.override.get_description
| Property | Value |
|---|---|
| Operation ID | GetOperatorOverride |
| Tags | Overrides |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
X-Tenant-Id | header | no | |
overrideId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
POST /api/v2/overrides/{overrideId}/revoke
Revoke an operator override
notifier.override.revoke_description
| Property | Value |
|---|---|
| Operation ID | RevokeOperatorOverride |
| Tags | Overrides |
| Auth | Not declared |
| Request body | application/json |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
X-Actor | header | no | |
X-Tenant-Id | header | no | |
overrideId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v2/quiet-hours/calendars
List all quiet hours calendars
notifier.quiet_hours.list_description
| Property | Value |
|---|---|
| Operation ID | ListQuietHoursCalendars |
| Tags | QuietHours |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
X-Tenant-Id | header | no |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
POST /api/v2/quiet-hours/calendars
Create a quiet hours calendar
notifier.quiet_hours.create_description
| Property | Value |
|---|---|
| Operation ID | CreateQuietHoursCalendar |
| Tags | QuietHours |
| Auth | Not declared |
| Request body | application/json |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
X-Actor | header | no | |
X-Tenant-Id | header | no |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v2/quiet-hours/calendars/{calendarId}
Get a quiet hours calendar
notifier.quiet_hours.get_description
| Property | Value |
|---|---|
| Operation ID | GetQuietHoursCalendar |
| Tags | QuietHours |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
X-Tenant-Id | header | no | |
calendarId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
PUT /api/v2/quiet-hours/calendars/{calendarId}
Update a quiet hours calendar
notifier.quiet_hours.update_description
| Property | Value |
|---|---|
| Operation ID | UpdateQuietHoursCalendar |
| Tags | QuietHours |
| Auth | Not declared |
| Request body | application/json |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
X-Actor | header | no | |
X-Tenant-Id | header | no | |
calendarId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
DELETE /api/v2/quiet-hours/calendars/{calendarId}
Delete a quiet hours calendar
notifier.quiet_hours.delete_description
| Property | Value |
|---|---|
| Operation ID | DeleteQuietHoursCalendar |
| Tags | QuietHours |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
X-Actor | header | no | |
X-Tenant-Id | header | no | |
calendarId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
POST /api/v2/quiet-hours/evaluate
Evaluate quiet hours
notifier.quiet_hours.evaluate_description
| Property | Value |
|---|---|
| Operation ID | EvaluateQuietHours |
| Tags | QuietHours |
| Auth | Not declared |
| Request body | application/json |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
X-Tenant-Id | header | no |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v2/rules
Lists all rules for a tenant
notifier.rule.list2_description
| Property | Value |
|---|---|
| Operation ID | ListRules |
| Tags | Rules |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
enabled | query | no | |
keyPrefix | query | no | |
limit | query | no |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
POST /api/v2/rules
Creates a new rule
notifier.rule.create2_description
| Property | Value |
|---|---|
| Operation ID | CreateRule |
| Tags | Rules |
| Auth | Not declared |
| Request body | application/json |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v2/rules/{ruleId}
Gets a rule by ID
notifier.rule.get2_description
| Property | Value |
|---|---|
| Operation ID | GetRule |
| Tags | Rules |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
ruleId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
PUT /api/v2/rules/{ruleId}
Updates an existing rule
notifier.rule.update2_description
| Property | Value |
|---|---|
| Operation ID | UpdateRule |
| Tags | Rules |
| Auth | Not declared |
| Request body | application/json |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
ruleId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
DELETE /api/v2/rules/{ruleId}
Deletes a rule
notifier.rule.delete2_description
| Property | Value |
|---|---|
| Operation ID | DeleteRule |
| Tags | Rules |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
ruleId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
POST /api/v2/security/html/sanitize
Sanitizes HTML content using the specified profile (or the default profile if omitted), removing disallowed tags and attributes.
| Property | Value |
|---|---|
| Operation ID | SanitizeHtml |
| Tags | Security |
| Auth | Not declared |
| Request body | application/json |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
POST /api/v2/security/html/strip
Removes all HTML tags from the input, returning plain text. Useful for generating fallback plain-text notification bodies from HTML templates.
| Property | Value |
|---|---|
| Operation ID | StripHtmlTags |
| Tags | Security |
| Auth | Not declared |
| Request body | application/json |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
POST /api/v2/security/html/validate
Validates HTML content against the specified profile and returns whether it is safe, along with details of any disallowed elements found.
| Property | Value |
|---|---|
| Operation ID | ValidateHtml |
| Tags | Security |
| Auth | Not declared |
| Request body | application/json |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
POST /api/v2/security/keys/rotate
Rotates the active signing key. Previously signed tokens remain verifiable during the overlap window. Old keys are retired after the configured grace period.
| Property | Value |
|---|---|
| Operation ID | RotateSigningKey |
| Tags | Security |
| Auth | Not declared |
| Request body | - |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
POST /api/v2/security/tenants/fuzz-test
Runs automated tenant isolation fuzz tests, exercising cross-tenant access paths to surface potential data-leakage vulnerabilities.
| Property | Value |
|---|---|
| Operation ID | RunTenantFuzzTest |
| Tags | Security |
| Auth | Not declared |
| Request body | application/json |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
POST /api/v2/security/tenants/grants
Grants a target tenant time-bounded access to a resource owned by the owner tenant. Grant records are auditable and expire automatically.
| Property | Value |
|---|---|
| Operation ID | GrantCrossTenantAccess |
| Tags | Security |
| Auth | Not declared |
| Request body | application/json |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
DELETE /api/v2/security/tenants/grants
Revokes a previously granted cross-tenant access grant before its expiry. Revocation is immediate and recorded in the audit log.
| Property | Value |
|---|---|
| Operation ID | RevokeCrossTenantAccess |
| Tags | Security |
| Auth | Not declared |
| Request body | application/json |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
POST /api/v2/security/tenants/validate
Validates whether the calling tenant is permitted to access the specified resource type and ID for the requested operation. Returns a violation record if access is denied.
| Property | Value |
|---|---|
| Operation ID | ValidateTenantAccess |
| Tags | Security |
| Auth | Not declared |
| Request body | application/json |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v2/security/tenants/{tenantId}/violations
Returns recorded tenant isolation violations for the specified tenant, optionally filtered by time range.
| Property | Value |
|---|---|
| Operation ID | GetTenantViolations |
| Tags | Security |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
tenantId | path | yes | |
since | query | no |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
POST /api/v2/security/tokens/sign
notifier.security.sign_description
| Property | Value |
|---|---|
| Operation ID | SignToken |
| Tags | Security |
| Auth | Not declared |
| Request body | application/json |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
POST /api/v2/security/tokens/verify
Verifies a signed token and returns the decoded payload if valid. Returns an error if the token is expired, tampered, or issued by a rotated key.
| Property | Value |
|---|---|
| Operation ID | VerifyToken |
| Tags | Security |
| Auth | Not declared |
| Request body | application/json |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v2/security/tokens/{token}/info
Decodes and returns structural information about a token without performing cryptographic verification. Useful for debugging expired or unknown tokens.
| Property | Value |
|---|---|
| Operation ID | GetTokenInfo |
| Tags | Security |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
token | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
POST /api/v2/security/webhooks
Registers or replaces the webhook security configuration for a channel, including the shared secret and allowed IP ranges.
| Property | Value |
|---|---|
| Operation ID | RegisterWebhookConfig |
| Tags | Security |
| Auth | Not declared |
| Request body | application/json |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
POST /api/v2/security/webhooks/validate
Validates an inbound webhook request against its registered security configuration, verifying the signature and checking the source IP against the allowlist.
| Property | Value |
|---|---|
| Operation ID | ValidateWebhook |
| Tags | Security |
| Auth | Not declared |
| Request body | application/json |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v2/security/webhooks/{tenantId}/{channelId}
Returns the webhook security configuration for a tenant and channel. The secret is not included in the response.
| Property | Value |
|---|---|
| Operation ID | GetWebhookConfig |
| Tags | Security |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
channelId | path | yes | |
tenantId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
PUT /api/v2/security/webhooks/{tenantId}/{channelId}/allowlist
Replaces the IP allowlist for a webhook channel. An empty list removes all IP restrictions.
| Property | Value |
|---|---|
| Operation ID | UpdateWebhookAllowlist |
| Tags | Security |
| Auth | Not declared |
| Request body | application/json |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
channelId | path | yes | |
tenantId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
POST /api/v2/simulate
Simulate rule evaluation against events
Dry-runs rules against provided or historical events without side effects. Returns matched actions with detailed explanations.
| Property | Value |
|---|---|
| Operation ID | SimulateRules |
| Tags | Simulation |
| Auth | Not declared |
| Request body | application/json |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
X-Tenant-Id | header | no |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
POST /api/v2/simulate/validate
Validate a rule definition
Validates a rule definition and returns any errors or warnings.
| Property | Value |
|---|---|
| Operation ID | ValidateRule |
| Tags | Simulation |
| Auth | Not declared |
| Request body | application/json |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
X-Tenant-Id | header | no |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v2/storm-breaker/storms
Lists all active notification storms for a tenant
Returns all currently active notification storms for the tenant. A storm is declared when the same event kind fires at a rate exceeding the configured threshold, triggering suppression.
| Property | Value |
|---|---|
| Operation ID | ListActiveStorms |
| Tags | Storm Breaker |
| Auth | Not declared |
| Request body | - |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v2/storm-breaker/storms/{stormKey}
Gets the current state of a specific storm
Returns the current state of a storm identified by its storm key, including event count, suppressed count, and the time of the last summarization.
| Property | Value |
|---|---|
| Operation ID | GetStormState |
| Tags | Storm Breaker |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
stormKey | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
DELETE /api/v2/storm-breaker/storms/{stormKey}
Clears a storm state manually
Manually clears the storm state for the specified key. Subsequent events of the same kind will be processed normally until a new storm threshold is exceeded.
| Property | Value |
|---|---|
| Operation ID | ClearStorm |
| Tags | Storm Breaker |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
stormKey | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
POST /api/v2/storm-breaker/storms/{stormKey}/summary
Generates a summary for an active storm
Generates and returns a suppression summary notification for the storm, delivering a single digest notification in place of all suppressed individual events.
| Property | Value |
|---|---|
| Operation ID | GenerateStormSummary |
| Tags | Storm Breaker |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
stormKey | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v2/templates
Lists all templates for a tenant
Returns all notification templates for the tenant with optional filtering by key prefix, channel type, and locale. Templates define rendered message bodies used by alert routing rules.
| Property | Value |
|---|---|
| Operation ID | ListTemplates |
| Tags | Templates |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
channelType | query | no | |
keyPrefix | query | no | |
limit | query | no | |
locale | query | no |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
POST /api/v2/templates
Creates a new template
Creates a new notification template. Template body syntax is validated before persisting. Returns conflict if a template with the same ID already exists.
| Property | Value |
|---|---|
| Operation ID | CreateTemplate |
| Tags | Templates |
| Auth | Not declared |
| Request body | application/json |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
POST /api/v2/templates/preview
Previews a template rendering
Renders a template against a sample event payload without sending any notification. Accepts either an existing templateId or an inline templateBody. Returns the rendered body, subject, and any template warnings.
| Property | Value |
|---|---|
| Operation ID | PreviewTemplate |
| Tags | Templates |
| Auth | Not declared |
| Request body | application/json |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v2/templates/{templateId}
Gets a template by ID
Returns a single notification template by its identifier, including body, channel type, locale, render mode, format, and audit metadata.
| Property | Value |
|---|---|
| Operation ID | GetTemplate |
| Tags | Templates |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
templateId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
PUT /api/v2/templates/{templateId}
Updates an existing template
Updates an existing notification template. Template body syntax is validated before persisting. An audit entry is written on update.
| Property | Value |
|---|---|
| Operation ID | UpdateTemplate |
| Tags | Templates |
| Auth | Not declared |
| Request body | application/json |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
templateId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
DELETE /api/v2/templates/{templateId}
Deletes a template
Permanently removes a notification template. Rules referencing this template will fall back to channel defaults on the next delivery. An audit entry is written on deletion.
| Property | Value |
|---|---|
| Operation ID | DeleteTemplate |
| Tags | Templates |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
templateId | path | yes |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /api/v2/throttles/config
Get throttle configuration
Returns the throttle configuration for the tenant, including the default suppression window, per-event-kind overrides, and burst window settings. Returns platform defaults if no custom configuration exists.
| Property | Value |
|---|---|
| Operation ID | GetThrottleConfiguration |
| Tags | Throttles |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
X-Tenant-Id | header | no |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
PUT /api/v2/throttles/config
Update throttle configuration
Creates or replaces the throttle configuration for the tenant. The default duration and optional per-event-kind overrides control how long duplicate notifications are suppressed.
| Property | Value |
|---|---|
| Operation ID | UpdateThrottleConfiguration |
| Tags | Throttles |
| Auth | Not declared |
| Request body | application/json |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
X-Actor | header | no | |
X-Tenant-Id | header | no |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
DELETE /api/v2/throttles/config
Delete throttle configuration
Removes the tenant-specific throttle configuration, reverting all throttle windows to the platform defaults.
| Property | Value |
|---|---|
| Operation ID | DeleteThrottleConfiguration |
| Tags | Throttles |
| Auth | Not declared |
| Request body | - |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
X-Actor | header | no | |
X-Tenant-Id | header | no |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
POST /api/v2/throttles/evaluate
Evaluate throttle duration
Returns the effective throttle duration in seconds for a given event kind, applying the tenant-specific override if present or the default if not.
| Property | Value |
|---|---|
| Operation ID | EvaluateThrottle |
| Tags | Throttles |
| Auth | Not declared |
| Request body | application/json |
Parameters:
| Name | In | Required | Description |
|---|---|---|---|
X-Tenant-Id | header | no |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /buildinfo.json
Image build provenance (module, gitSha, gitCommitTime, imageBuiltAt, branch) for drift detection.
| Property | Value |
|---|---|
| Operation ID | StellaOpsBuildInfoFile |
| Tags | StellaOps.Notify.WebService |
| Auth | Not declared |
| Request body | - |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
POST /internal/notify/channels/normalize
notify.internal.channels_normalize_description
| Property | Value |
|---|---|
| Operation ID | notify.channels.normalize |
| Tags | StellaOps.Notify.WebService |
| Auth | Not declared |
| Request body | application/json |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
POST /internal/notify/rules/normalize
notify.internal.rules_normalize_description
| Property | Value |
|---|---|
| Operation ID | notify.rules.normalize |
| Tags | StellaOps.Notify.WebService |
| Auth | Not declared |
| Request body | application/json |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
400 | Bad Request | - |
POST /internal/notify/templates/normalize
notify.internal.templates_normalize_description
| Property | Value |
|---|---|
| Operation ID | notify.templates.normalize |
| Tags | StellaOps.Notify.WebService |
| Auth | Not declared |
| Request body | application/json |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
GET /readyz
notify.readyz.description
| Property | Value |
|---|---|
| Operation ID | NotifyReadyz |
| Tags | StellaOps.Notify.WebService |
| Auth | Not declared |
| Request body | - |
Responses:
| Status | Description | Content types |
|---|---|---|
200 | OK | - |
