sendgrid – Sends an email with the SendGrid API

From Get docs
Ansible/docs/2.8/modules/sendgrid module


sendgrid – Sends an email with the SendGrid API

New in version 2.0.


Synopsis

  • Sends an email with a SendGrid account through their API, not through the SMTP service.

Requirements

The below requirements are needed on the host that executes this module.

  • sendgrid python library

Parameters

Parameter Choices/Defaults Comments

api_key

-

added in 2.2

sendgrid API key to use instead of username/password

attachments

-

added in 2.2

a list of relative or explicit paths of files you want to attach (7MB limit as per SendGrid docs)

bcc

-

added in 2.2

a list of email addresses to bcc

cc

-

added in 2.2

a list of email addresses to cc

from_address

- / required

the address in the "from" field for the email

from_name

-

added in 2.2

the name you want to appear in the from field, i.e 'John Doe'

headers

-

added in 2.2

a dict to pass on as headers

html_body

boolean

added in 2.2

  • no

  • yes

whether the body is html content that should be rendered

password

-

password that corresponds to the username

Since 2.2 it is only required if api_key is not supplied.

subject

- / required

the desired subject for the email

to_addresses

- / required

a list with one or more recipient email addresses

username

-

username for logging into the SendGrid account.

Since 2.2 it is only required if api_key is not supplied.



Notes

Note

  • This module is non-idempotent because it sends an email through the external API. It is idempotent only in the case that the module fails.
  • Like the other notification modules, this one requires an external dependency to work. In this case, you’ll need an active SendGrid account.
  • In order to use api_key, cc, bcc, attachments, from_name, html_body, headers you must pip install sendgrid
  • since 2.2 username and password are not required if you supply an api_key


Examples

# send an email to a single recipient that the deployment was successful
- sendgrid:
    username: "{{ sendgrid_username }}"
    password: "{{ sendgrid_password }}"
    from_address: "[email protected]"
    to_addresses:
      - "[email protected]"
    subject: "Deployment success."
    body: "The most recent Ansible deployment was successful."
  delegate_to: localhost

# send an email to more than one recipient that the build failed
- sendgrid:
      username: "{{ sendgrid_username }}"
      password: "{{ sendgrid_password }}"
      from_address: "[email protected]"
      to_addresses:
        - "[email protected]"
        - "[email protected]"
      subject: "Build failure!."
      body: "Unable to pull source repository from Git server."
  delegate_to: localhost

Status

Authors

  • Matt Makai (@makaimc)

Hint

If you notice any issues in this documentation you can edit this document to improve it.


© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.8/modules/sendgrid_module.html