Skip to content

Notifications API

Maintained by: Aether365 Team Audience: Developers Scope: Notification settings API endpoints

Manage email and Teams notification settings for the authenticated tenant.

Get Notification Settings

GET /tenants/me/notifications

Example Request

bash
curl https://api.aether365.io/tenants/me/notifications \
  -H "Authorization: Bearer ak_live_..."

Example Response

json
{
  "success": true,
  "data": {
    "emailReports": true,
    "emailOnComplete": true,
    "emailOnFail": true,
    "teamsWebhookUrl": "https://contoso.webhook.office.com/webhookb2/...",
    "teamsOnCritical": true,
    "teamsOnComplete": true,
    "teamsOnFail": true,
    "emailOnComplete_locked": false,
    "emailOnFail_locked": false,
    "emailReports_locked": false,
    "teamsAlerts_locked": false
  }
}

Response Fields

FieldTypeDescription
emailReportsbooleanEmail the scan report
emailOnCompletebooleanSend email when a scan completes successfully
emailOnFailbooleanSend email when a scan fails
teamsWebhookUrlstring or nullMicrosoft Teams incoming webhook URL
teamsOnCriticalbooleanPost to Teams on critical findings
teamsOnCompletebooleanPost to Teams when a scan completes
teamsOnFailbooleanPost to Teams when a scan fails
*_lockedbooleantrue when your plan does not include the corresponding notification

Update Notification Settings

Updates notification settings. Only the fields you include are changed.

PATCH /tenants/me/notifications

Request Body

All fields are optional. Include only the fields you want to change. Accepted keys: emailReports, emailOnComplete, emailOnFail, teamsWebhookUrl, teamsOnCritical, teamsOnComplete, teamsOnFail.

Locked settings are ignored, not rejected

Unknown keys, and keys your plan does not include (the ones reported as *_locked: true), are silently ignored - the request still returns 200 with the effective settings. The webhook URL is not format-validated on this endpoint; use the test endpoint below to verify it.

json
{
  "emailOnComplete": true,
  "emailOnFail": true,
  "teamsWebhookUrl": "https://contoso.webhook.office.com/webhookb2/...",
  "teamsOnComplete": true,
  "teamsOnFail": false
}

Example: Disable all email notifications

bash
curl -X PATCH https://api.aether365.io/tenants/me/notifications \
  -H "Authorization: Bearer ak_live_..." \
  -H "Content-Type: application/json" \
  -d '{
    "emailOnComplete": false,
    "emailOnFail": false
  }'

Example Response

Returns the full effective settings object (same shape as GET).

Errors

CodeHTTPDescription
VALIDATION_ERROR400Invalid JSON body

Test a Teams Webhook

Sends a test message card to a Teams incoming webhook and reports whether it was accepted. Requires the Teams alerts plan feature.

POST /tenants/me/notifications/test-webhook

Request Body

FieldTypeRequiredDescription
teamsWebhookUrlstringYesMust be an https Microsoft-hosted webhook (*.webhook.office.com or *.logic.azure.com)

Example Response

json
{
  "success": true,
  "data": { "ok": true }
}

Errors

CodeHTTPDescription
AUTH_INSUFFICIENT_SCOPE403Teams alerts require a higher plan
VALIDATION_ERROR400Missing or non-Microsoft webhook URL
WEBHOOK_TEST_FAILED400The webhook did not accept the test message
Was this page helpful?