Email object
The
Email object
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
{
"app_id": (required, string), see App Identifier,
"subject": (optional, string),
"from": (required, valid email address in the format "Display Name <[email protected]>"),
"reply_to": (optional, valid email address in the format "[email protected]" - defaults to your workspace's default reply to if not set) - use "NO_REPLY_TO" to set reply-to address to null,
"bcc": (optional, one of the BCC addresses defined in your workspace's email settings) if provided and the BCC feature is enabled for your account, this address will get added to your outbound message as a BCC address,
"body": (required unless email_template_id is given, valid HTML),
"plaintext_body": (optional, valid plaintext, defaults to autogenerating plaintext from "body" when this is not set),
"preheader": (optional*, string) recommended length 50-100 characters,
"email_template_id": (optional, string) if provided, we will use the subject/body/should_inline_css values from the given email template UNLESS they are specified here, in which case we will override the provided template,
"message_variation_id": (optional, string) used when providing a campaign_id to specify which message variation this message should be tracked under,
"extras": (optional, valid Key-Value Hash) extra hash - for SendGrid users, this will be passed to SendGrid as Unique Arguments,
"headers": (optional, valid Key-Value Hash) hash of custom extensions headers (available for SparkPost and SendGrid),
"should_inline_css": (optional, boolean) whether to inline CSS on the body. If not provided, falls back to the default CSS inlining value for the workspace,
"attachments": (optional, array) array of JSON objects that define the files you need attached, defined by "file_name" and "url",
"file_name": (required, string) the name of the file you want to attach to your email, excluding the extension (for example, ".pdf"). Attach files up to 2 MB. This is required if you use "attachments",
"url": (required, string) the corresponding URL of the file you want to attach to your email. The file name's extension will be detected automatically from the URL defined, which should return the appropriate "Content-Type" as a response header. This is required if you use "attachments",
}
- App identifier
- For more information and best practices on preheaders, see our help article on email body styling.
Braze recommends that you avoid using Google Drive links for your attachment’s url
, as this can block our servers’ calls to get the file and result in the email message not sending.
Valid attachment types include: txt
, csv
, log
, css
, ics
, jpg
, jpe
, jpeg
, gif
, png
, bmp
, psd
, tif
, tiff
, svg
, indd
, ai
, eps
, doc
, docx
, rtf
, odt
, ott
, pdf
, pub
, pages
, mobi
, epub
, mp3
, m4a
, m4v
, wma
, ogg
, flac
, wav
, aif
, aifc
, aiff
, mp4
, mov
, avi
, mkv
, mpeg
, mpg
, wmv
, xls
, xlsx
, ods
, numbers
, odp
, ppt
, pptx
, pps
, key
, zip
, vcf
, and pkpass
.
An email_template_id
can be retrieved from the bottom of any email template created with the HTML editor. The following shows an example of what this ID looks like:
Example email object with attachment
1
2
3
4
5
6
7
8
9
10
11
12
{
"external_user_ids": ["YOUR_EXTERNAL_USER_ID"],
"messages":{
"email":{
"app_id":"YOUR_APP_ID",
"attachments":[{
"file_name":"YourFileName",
"url":"https://exampleurl.com/YourFileName.pdf"
}]
}
}
}
Authentication for email file attachments
Authentication for email file attachments in this endpoint is currently in early access. Contact your Braze account manager if you’re interested in participating in the early access.
- Navigate to Settings > Connected Content and click Add Credential to add your authentication credentials.
- Enter a name, and add a username and password.
- In email object of the
/messages/send
endpoint, include abasic_auth_credential
property specifying the credential name in the attachment details. Refer to the following example with the credential namecompany_basic_auth_credential_name
:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
{
"external_user_ids": ["recipient_user_id"],
"messages":{
"email":{
"app_id": "153e8a29-fd6d-4f77-ade7-1a4ca08d457a",
"subject": "Basis auth attachement test",
"from": "mail <[email protected]>",
"body": "my attachment test",
"attachments":[
{ "file_name":"checkout_receipt.pdf",
"url":"https://fileserver.company.com/user123-checkout_receipt.pdf",
"basic_auth_credential": "company_basic_auth_credential_name" }
]
}
}
}