The Email Event Source generates dynamic addresses to receive emails from your systems and create alerts. You can find and configure your email destinations in Signals > Event Sources > Emails.

Enabling Emails

This feature is currently in Beta, so to enable this feature for your organization, reach out to your FireHydrant contact or our Support team.

Once we've confirmed this has been enabled for your organization, proceed to the next section.

Creating an Email Destination

Creating a new Email Destination

Creating a new Email Destination

  1. Click "+ Add Email Destination" at the top right of the Emails tab in Signals Event Sources.
  2. On the side drawer that pops out, you'll have several fields you can fill out for this target:
    1. Name (required): A descriptive name for this email target
    2. Slug (required): The slug for the email address of the destination. We'll automatically generate this based on the Name above, but you can modify the slug afterward. Only alphanumeric characters and dashes are supported here
    3. Description (required): A longer description for this email target
    4. Select notification target: This is the target for the alert generated from this email. Like targeted webhooks, emails can target Escalation Policies, On-Call Schedules, Teams (and their default EPs), and Users.
    5. Status CEL: A CEL expression that determines the alert status based on the email's content
      1. For example, you may have an expression like email.body.contains('has recovered') ? "CLOSED" : "OPEN" to determine if an inbound email creates a new alert or resolves an existing, open alert
    6. Level CEL: A CEL expression that determines the alert's error level based on the email's content
      1. For example, you may have an expression like email.body.contains('panic') ? "ERROR" : "INFO" to determine if an inbound email creates an alert that is INFO or ERROR levels
    7. Allowed Senders: Comma-delimited list of email addresses FireHydrant should accept emails from. Emails from other senders will be ignored. This field supports allowing all senders from specific domains as well (e.g., @mydomain.com).
    8. Rules: Like with Alert Triggers, these are email source rules determining whether an inbound email should raise an Alert. If you configure no rules, all inbound emails from this source will create Alerts.
  3. When finished configuring the fields, click "Save." This will insert an entry into the email destinations table.Yyou can click "Copy Email" in the Address column for the corresponding destination to get the email address. Insert this into your external event source that is sending emails.
Copying the email address from the table

Copying the email address from the table

Available Email Parameters

When writing the CEL statements above, these are the available parameters you can access from the email:

ParameterTypeDescription
email.subjectStringThe subject of the email
email.bodyStringThe content of the email
email.headersMap{ key (String): value (String) }An object containing key-value pairs of email headers
email.fromStringThe sender's email address
email.toString[]An array of destination email addresses this email was sent to