Alert notification payloads
When an observability metrics alert fires or resolves, or when an audit log event matches an audit log alert's conditions, Fastly sends a structured notification payload to your configured integrations. This reference describes the payload format for each integration type, with examples for common scenarios.
Observability alert payloads
- Datadog
- New Relic
Datadog notifications use the Datadog Events API format. The payload varies based on whether the notification is for a firing observability alert, a resolved observability alert, or an audit log alert event.
123456789{ "title": "Title with prefix indicating notification type", "text": "Notification body with details and a link to view in Fastly", "priority": "normal", "tags": ["Tag values describing the notification"], "alert_type": "error | success | info", "source_type_name": "Fastly", "aggregation_key": "Alert definition ID (observability alerts only)"}For example, this is a Datadog notification that was sent when the origin bandwidth exceeded 100Mbps:
123456789{ "title": "[FIRING] all_bandwidth high on critical origins", "text": "Triggers when origin bandwidth exceeds 100Mbps\n\nValue: 125Mbps\nThreshold: 750000000\nEvaluation period: 5m\n\nView graph: https://manage.fastly.com/observability/alerts/history/def_XyZ9kL3mN8pQ2vR7wB4tJ?id=hist_A7bC2dE9fG3hJ8kL5m", "priority": "normal", "tags": ["fastly:alerts", "alert_type:origins", "metric:all_bandwidth", "service_id:svc_M4nP7qR2sT9vW3xY8zA"], "alert_type": "error", "source_type_name": "Fastly", "aggregation_key": "def_XyZ9kL3mN8pQ2vR7wB4tJ"}When that same alert resolves:
123456789{ "title": "[RESOLVED] all_bandwidth high on critical origins", "text": "Triggers when origin bandwidth exceeds 100Mbps\n\nValue: 95Mbps\nThreshold: 750000000\nEvaluation period: 5m\n\nView graph: https://manage.fastly.com/observability/alerts/history/def_XyZ9kL3mN8pQ2vR7wB4tJ?id=hist_A7bC2dE9fG3hJ8kL5m", "priority": "normal", "tags": ["fastly:alerts", "alert_type:origins", "metric:all_bandwidth", "service_id:svc_M4nP7qR2sT9vW3xY8zA"], "alert_type": "success", "source_type_name": "Fastly", "aggregation_key": "def_XyZ9kL3mN8pQ2vR7wB4tJ"}For an audit log alert event:
12345678{ "title": "Fastly audit event: user.login", "text": "User logged in\n\nResource: svc_M4nP7qR2sT9vW3xY8zA", "priority": "normal", "tags": ["fastly:audit_event", "event_type:user.login"], "alert_type": "info", "source_type_name": "Fastly"}Incident response and on-call alert payloads
- Jira Service Management
- Opsgenie
- PagerDuty
- Splunk On-Call
Jira Service Management notifications use the JSM operations Alert API, which shares its structure with the Opsgenie Alert API.
12345678910{ "message": "Title with prefix indicating notification type", "alias": "Typed identifier that links related events together", "description": "Alert description or audit event message", "source": "Fastly Alerts Notification Service", "tags": ["Tag values describing the alert"], "details": { "Key": "Value pairs of alert metadata" }}For example, this is a Jira Service Management notification that was sent when the origin bandwidth exceeded 100Mbps:
123456789101112131415{ "message": "[FIRING] all_bandwidth high on critical origins", "alias": "fastly-alerts-def_XyZ9kL3mN8pQ2vR7wB4tJ", "description": "Triggers when origin bandwidth exceeds 100Mbps", "source": "Fastly Alerts Notification Service", "tags": ["fastly:alerts", "metric:all_bandwidth"], "details": { "FastlyAlertMetric": "all_bandwidth", "FastlyAlertThreshold": "750000000", "FastlyAlertPeriod": "5m", "FastlyAlertValue": "125Mbps", "FastlyServiceID": "svc_M4nP7qR2sT9vW3xY8zA", "FastlyHistoryURL": "https://manage.fastly.com/observability/alerts/history/def_XyZ9kL3mN8pQ2vR7wB4tJ?id=hist_A7bC2dE9fG3hJ8kL5m" }}Team communication alert payloads
- Jira Issue
- Microsoft Teams
- Slack
Email notifications deliver alert information in both HTML and plain text formats with a descriptive subject line.
{ "subject": "Fastly Alert: {alert_name} {Firing|Resolved}", "plainBody": "Alert details...", "htmlBody": "<html>Formatted alert details...</html>"}For example, this is an email notification that was sent when the origin bandwidth exceeded 100Mbps:
{ "subject": "Fastly Alert: High Origin Bandwidth Alert Firing", "plainBody": "[FIRING] all_bandwidth high on critical origins\n\nValue: 125Mbps\n\nStarted (UTC): 2026-02-27T10:30:00Z\n\nDetails:\n- name: High Origin Bandwidth Alert\n- description: Triggers when origin bandwidth exceeds 100Mbps\n- metric: all_bandwidth\n- service: svc_M4nP7qR2sT9vW3xY8zA\n- evaluation type: above_threshold\n- threshold: 750000000\n- evaluation period: 5m\n- sources: origin1, origin3\n\nView in Fastly: https://manage.fastly.com/observability/alerts/history/def_XyZ9kL3mN8pQ2vR7wB4tJ?id=hist_A7bC2dE9fG3hJ8kL5m", "htmlBody": "<html><body><h2>[FIRING] all_bandwidth high on critical origins</h2><p><strong>Value:</strong> 125Mbps</p><p><strong>Started (UTC):</strong> 2026-02-27T10:30:00Z</p><h3>Details</h3><ul><li><strong>name:</strong> High Origin Bandwidth Alert</li><li><strong>description:</strong> Triggers when origin bandwidth exceeds 100Mbps</li><li><strong>metric:</strong> all_bandwidth</li><li><strong>service:</strong> svc_M4nP7qR2sT9vW3xY8zA</li><li><strong>evaluation type:</strong> above_threshold</li><li><strong>threshold:</strong> 750000000</li><li><strong>evaluation period:</strong> 5m</li><li><strong>sources:</strong> origin1, origin3</li></ul><p><a href=\"https://manage.fastly.com/observability/alerts/history/def_XyZ9kL3mN8pQ2vR7wB4tJ?id=hist_A7bC2dE9fG3hJ8kL5m\">View in Fastly</a></p></body></html>"}Custom webhook alert payloads
When an alert fires or resolves, Fastly sends a POST request to your configured webhook endpoint with the following JSON payload:
123456789101112{ "title": "Alert title with status", "description": "Alert description", "history_api": "API endpoint URL for alert history", "history_ui": "Fastly control panel URL for alert history", "definition_api": "API endpoint URL for alert definition", "definition_ui": "Fastly control panel URL for alert definition", "triggered": true | false, "start": "ISO 8601 timestamp", "end": "ISO 8601 timestamp (only when triggered is false)", "version": "v1"}For example, this is a webhook notification that was sent when the bandwidth exceeded 100Mbps:
1234567891011{ "title": "[FIRING] bandwidth high on critical stats", "description": "Triggers when bandwidth exceeds 100Mbps", "history_api": "https://api.fastly.com/alerts/history?definition_id=def_xyz789&after=2026-02-27T10:30:00Z&before=2026-02-27T10:30:00Z", "history_ui": "https://manage.fastly.com/observability/alerts/history/def_xyz789?id=hist_abc123", "definition_api": "https://api.fastly.com/alerts/definitions/def_xyz789", "definition_ui": "https://manage.fastly.com/observability/alerts/definitions/def_xyz789/edit", "triggered": true, "start": "2026-02-27T10:30:00Z", "version": "v1"}