Events with email

Events with email is not supported on

If your application does not have an existing Datadog integration, and you don’t want to create a custom Agent check, you can send events with email. This can also be done with messages published to an Amazon SNS topic; read the Create Datadog Events from Amazon SNS Emails guide for more information.

Setup

Before you can send events with email, you need a dedicated email address from Datadog:

  1. Log in to your Datadog account.
  2. From the Account menu at the bottom left, select Organization Settings.
  3. Click the Events API emails tab.
  4. Choose the format for your messages from the Format dropdown (Plain text or JSON).
  5. Click the Create Email button.

The Events API emails section displays all the emails available for your applications and who created them.

Submission

There are two different ways to send events with email:

If you have complete control over the email sent by an application, then you can use configure a JSON-formatted message. This format allows you to set everything in the event that appears in Datadog.

Source email

With a JSON-formatted email, the following fields are controllable:

Note: If your JSON is not properly formatted, or the email is sent without a subject, the event doesn’t show in your event stream.

Datadog event

In a JSON-formatted email, the subject of the email doesn’t appear in the event. The value of the title attribute is used for the event title. All data that appears in the event should be defined in JSON in the body of the email. Furthermore, the body must be pure, well-formed JSON—if not, the message is ignored. Example event sent with JSON:

json event

Note: If you are testing the email with a standard email client, the body may be converted to HTML. This causes the body to no longer be pure JSON, resulting in an ignored email.

If you have little control over the email sent by an application, use a plain text formatted message.

Source email

With a plain text formatted email, the following fields are controllable:

FieldRequiredDescription
Sender email addressYesThe email address of the sender
SubjectYesThe subject of the email
BodyYesThe body of the email

For example, the email below is a valid submission:

Sender's email: matt@datadog.com
Subject: Env:Test - System at 50% CPU - #test
Body: This is a test message showing that env:test is at 50% CPU - #test

Email body processing

The email body goes through several cleanup steps to enhance readability and security. The expected changes include:

  • HTML to Markdown: HTML content is converted to its markdown equivalent.
  • HTML sanitization: For security, email bodies are sanitized, allowing only specific HTML tags: a, br, code, div, em, h1, h2, h3, h4, h5, h6, hr, iframe, img, li, ol, p, pre, span, strong, ul. Any other HTML tag, including strings enclosed in <>, are removed.
  • Strip reply/forward content: Only the most recent email in a thread is retained, with older replies and forwards removed.

Datadog event

The subject of the email becomes the title of the event and the body of the email becomes the event message. The sender of the email appears at the bottom of the event. Tags can be added by using # in message body. Example event sent with plain text:

plain event

Markdown

Datadog event text supports Markdown but embedding HTML in Markdown is not supported. To use Markdown in the event text, start the text block with %%% \n and end the text block with \n %%%:

{
  "title": "Did you hear the news today?",
  "text": "%%% \n [an example link](http://example.com/session_id \"Title\") \n %%%",
  "priority": "normal",
  "tags": ["environment:test"],
  "alert_type": "info"
}

If you are embedding a link in a Markdown block, make sure the URL is encoded properly:

# Not encoded
http://example.com/session_id:123456

# Encoded
http://example.com/session_id%3A123456

Email size

The maximum allowed email size, including content and attachments, is 20MB. Emails exceeding this limit are ignored.