MailExecution MailExecution

yaml
type: "io.kestra.plugin.notifications.mail.MailExecution"

Task to send an email with the execution information

Flow execution information is provided in the sent email including xxecution metadata such as ID, namespace, flow, state, duration, start date, and the URL to the flow's execution page

Examples

Send an email notification on failed flow execution

yaml
id: emailAlert
namespace: dev

listeners:
  - conditions:
      - type: io.kestra.core.models.conditions.types.ExecutionStatusCondition
        in:
          - FAILED
    tasks:
      - id: email
        type: io.kestra.plugin.notifications.mail.MailExecution
        to: hello@kestra.io
        from: hello@kestra.io
        subject: This is the subject
        host: mail.privateemail.com
        port: 465
        username: hello@kestra.io
        password: topSecret42
        sessionTimeout: 1000
        transportStrategy: SMTPS

tasks:
  - id: alwaysFail
    type: io.kestra.core.tasks.executions.Fail

Properties

attachments

  • Type: array
  • SubType: Attachment
  • Dynamic: ✔️
  • Required:

Adds an attachment to the email message

The attachment will be shown in the email client as separate files available for download, or displayed inline if the client supports it (for example, most browsers display PDF's in a popup window)

cc

  • Type: string
  • Dynamic: ✔️
  • Required:

One or more 'Cc' (carbon copy) optional recipient email address. Use semicolon as delimiter to provide several addresses

Note that each email address must be compliant with the RFC2822 format

customFields

  • Type: object
  • Dynamic: ✔️
  • Required:

Custom fields to be added on notification

customMessage

  • Type: string
  • Dynamic: ✔️
  • Required:

Custom message to be added on notification

embeddedImages

  • Type: array
  • SubType: Attachment
  • Dynamic: ✔️
  • Required:

Adds image data to this email that can be referred to from the email HTML body

The provided images are assumed to be of MIME type png, jpg or whatever the email client supports as valid image that can be embedded in HTML content

executionId

  • Type: string
  • Dynamic: ✔️
  • Required:
  • Default: null

The execution id to use

Default is the current execution

from

  • Type: string
  • Dynamic: ✔️
  • Required:

The address of the sender of this email

host

  • Type: string
  • Dynamic: ✔️
  • Required:

The email server host

htmlTextContent

  • Type: string
  • Dynamic: ✔️
  • Required:

The optional email message body in HTML text

Both text and HTML can be provided, which will be offered to the email client as alternative contentEmail clients that support it, will favor HTML over plain text and ignore the text body completely

password

  • Type: string
  • Dynamic: ✔️
  • Required:

The email server password

port

  • Type: integer
  • Dynamic: ✔️
  • Required:

The email server port

sessionTimeout

  • Type: integer
  • Dynamic:
  • Required:
  • Default: 1000

Integer value in milliseconds. Default is 1000 milliseconds, i.e. 1 second

It controls the maximum timeout value when sending emails

subject

  • Type: string
  • Dynamic: ✔️
  • Required:

The optional subject of this email

templateRenderMap

  • Type: object
  • Dynamic: ✔️
  • Required:

Map of variables to use for the message template

to

  • Type: string
  • Dynamic: ✔️
  • Required:

Email address(es) of the recipient(s). Use semicolon as delimiter to provide several email addresses

Note that each email address must be compliant with the RFC2822 format

transportStrategy

  • Type: string
  • Dynamic:
  • Required:
  • Default: SMTPS
  • Possible Values:
    • SMTP
    • SMTPS
    • SMTP_TLS
    • SMTP_OAUTH2

The optional transport strategy

Will default to SMTPS if left empty

username

  • Type: string
  • Dynamic: ✔️
  • Required:

The email server username

Definitions

Attachment

contentType

  • Type: string
  • Dynamic: ✔️
  • Required: ✔️
  • Default: application/octet-stream

One or more 'Cc' (carbon copy) optional recipient email address(es). Use semicolon as a delimiter to provide several addresses

Note that each email address must be compliant with the RFC2822 format

name

  • Type: string
  • Dynamic: ✔️
  • Required: ✔️

The name of the attachment (eg. 'filename.txt')

uri

  • Type: string
  • Dynamic: ✔️
  • Required: ✔️

An attachment URI from Kestra internal storage