source set to aws.health and detail-type set to AWS Health Event. The Flashduty AWS EventBridge integration handles these events explicitly, so you don’t need a separate AWS Health integration. Create an AWS EventBridge integration in Flashduty and use its push URL as the target of an EventBridge rule.
In Flashduty On-call
Get an integration push URL in either of the two ways below. Choose the AWS EventBridge integration type in both, not AWS Health.Use a dedicated integration
- In the Flashduty console, go to Channels and open a channel
- Go to Settings → Integrations → Dedicated integrations and click Add integration
- Select AWS EventBridge and click Save
- Open the generated integration card and copy the Push URL
Use a shared integration
- In the Flashduty console, go to Integration Center → Alert Events
- Select AWS EventBridge and enter an integration name
- Configure the default route and select a channel. You can add more rules under Routing after creation
- Click Save and copy the generated Push URL
Configure in AWS
1
Create an API destination that points to Flashduty in Amazon EventBridge
- API destination (recommended)
- SNS topic
Where: Amazon EventBridge › Integration › API destinations › Connections › Create connection
Click Create to save.Where: Amazon EventBridge › Integration › API destinations › Create API destination
Click Create to save.
2
Create a rule for AWS Health events in Amazon EventBridge
Where: Amazon EventBridge › Rules › Create rule › Advanced BuilderTo narrow the scope, add filters under While creating the rule, pick the AWS Health sample events in Sample events and click Test pattern (the Test event pattern panel in older consoles) to confirm the pattern matches.Per AWS: rules only receive events for your own account, and public (PUBLIC) events can take up to an hour to start arriving after you create a rule. For events aggregated through AWS Organizations, see the AWS guide Aggregating AWS Health events.
Event pattern:
detail. For example, only issue events for Amazon EC2:3
Send a test AWS Health event and confirm
Where: A terminal that can reach the Flashduty push URLThe rule only forwards events that AWS really emits, and public (PUBLIC) events can take up to an hour to start arriving after you create a rule. To verify right away, POST a test event shaped like the real one to the push URL:Send it again with
statusCode set to closed to confirm that the alert recovers automatically. A few seconds later, go back to Flashduty. The integration shows a latest event time, which means the setup works.Regions and backup rules
- Create a rule in every Region you want to receive events from. Global events (for example IAM-related events) are delivered to US East (N. Virginia),
us-east-1 - In the standard AWS partition, events are also sent to the backup Region US West (Oregon). If you create rules in both the primary and the backup Region, the same event arrives twice. Both copies share the
eventArnand affected account, so Flashduty merges them into one alert through the Alert Key - To keep only the primary Region’s events, add the filter
"backupEvent": ["false"](detail.backupEvent) to the backup Region rule
Field mapping
Status and severity
EventBridge events carry no common severity field, so every AWS Health event triggers as Warning. To differentiate, rewrite the severity by theevent_type_category label in Alert processing, for example issue to Critical and scheduledChange kept at Warning or lowered to Info.
Recovery and deduplication
- AWS Health sends an update with
statusCodeset toclosedwhen the event ends, and Flashduty recovers the alert with the same Alert Key - Scheduled changes (
scheduledChange) are sent with statusupcomingbefore they start, so Flashduty triggers alerts ahead of time. If you only care about ongoing incidents, restricteventTypeCategorytoissuein the event pattern - Events with
detail-typeset toAWS Health Abuse Eventhave no dedicated handling: each event becomes its own alert keyed by the eventid, with no recovery. Matching onlyAWS Health Eventin the pattern avoids them - Events without
detail.eventArnare rejected (HTTP 400)
Troubleshooting
- The rule does not fire: check the event pattern. Public events can take up to an hour to arrive after you create the rule. Make sure rules exist in the event’s Region, and in
us-east-1for global events - The alert does not recover: confirm the event pattern does not filter out the
closedstatus and that the target has no Input transformer (the full event must be sent) - Two alerts for one event: confirm both events have the same
detail.eventArnand affected account; ifdetail-typewas rewritten the event cannot be merged as a Health event - The API destination call fails: confirm the endpoint is the full push URL and
HTTP methodisPOST