Components All New MacOS Windows Linux iOS
Examples Mac & Win Server Client Guides Statistic FMM Blog Deprecated Old

SendMail.AddAttachmentContainer

Adds an attachment to the email based on a container field.

Component Version macOS Windows Linux Server iOS SDK
SendMail 4.3 ✅ Yes ✅ Yes ✅ Yes ✅ Yes ✅ Yes
MBS( "SendMail.AddAttachmentContainer"; EmailID; Container { ; Name; MimeType; InlineID; Method } )   More

Parameters

Parameter Description Example Flags
EmailID The email reference number obtained using SendMail.CreateEmail function. $EmailID
Container The container to attach to email. Attachment::Container
Name The name for the attachment.
If empty, version 6.2 or newer uses file name from container.
"sample.pdf" Optional
MimeType The mime type to use. e.g. "application/pdf" for PDF files. If missing, we use "application/octet-stream".
Version 6.2 or newer detects mime type from file extension if needed.
"application/octet-stream" Optional
InlineID The content ID for inline images (CID).
Empty text or no parameter gives regular attachment.

You define this yourself. Can be just a file name or some uuid, which is then referenced in html with "cid:" prefix in the img src attribute.
"test.png@3C111B0E.81ED.478A.912C.4B64F538003C" Optional
Method The method for the content-type parameter.
Currently only for sending calendar invitiations.
"REQUEST" Optional

Result

Returns OK or error.

Description

Adds an attachment to the email based on a container field.
Version 5 of MBS Plugin can encode file name for preserving non ASCII characters. Still for compatibility it is recommended to use simply ASCII names.
You can use Text.FileExtensionToMimeType to find the mime type for a file extension.
You can use AddAttachment functions several times to add several attachments.

If your Container is already Base64 encoded text, you can use the SendMail.AddAttachmentText function with 1 for IsBase64 parameter. But usually it is better to pass container directly here as Base64 has several variations with line length.

For InlineID:
If you like to use inline images, please check your html for references to image files. Please add all the image files as attachments with an InlineID, e.g. pass the file name as InlineID.

e.g. in you html you may reference background-3.jpg in the body tag:

<body background="background-3.jpg">

Add an attachment named background-3.jpg (name doesn't matter) with InlineID background-3.jpg and replace the background-3.jpg in the html with cid:background-3.jpg so the email viewer will lookup the attachment with that id to display it there.

Examples

Add attachment:

Set Variable [$r; Value:MBS("SendMail.AddAttachmentContainer"; $EmailID; Attachment::Container; Attachment::Name; Attachment::Type)]

Add invitation attachment:

Set Variable [$r; Value:MBS("SendMail.AddAttachmentContainer"; $EmailID; Attachment::ICS; "invitation.ics"; "text/calendar"; ""; "REQUEST")]

Add inline image:

Set Variable [$r; Value:MBS("SendMail.AddAttachmentContainer"; $EmailID; Attachment::Image; "image1.jpg"; "" /* auto */; "image1.jpg")]

See also

Release notes

Example Databases

Blog Entries

This function checks for a license.

Created 3th September 2014, last changed 13th February 2024


SendCommand - SendMail.AddAttachmentFile