Portal Community
The IMAP Trigger is a workflow start node — it has no input payload. It fires one workflow execution per new email. The trigger output (the email data) is the initial payload that downstream nodes can reference.
Format: simple (default)

The simple format returns a parsed, developer-friendly email object. Attachment download is only available in this format.

simple — Field Reference

FieldTypeDescription
fromstringSender's email address as a plain string (e.g. "Jane Smith <jane@example.com>").
tostringPrimary recipient(s) as a plain string.
ccstringCC recipient(s) as a plain string. Empty string if not present.
subjectstringEmail subject line, decoded from any MIME encoding.
datestringMessage date from the Date header. RFC 2822 format.
messageIdstringValue of the Message-ID header.
inReplyTostringValue of the In-Reply-To header, if present.
textstringPlain text body of the email. Empty string if the email has no text/plain part.
htmlstringHTML body of the email. Empty string if the email has no text/html part.
attachmentsobject[]Array of attachment objects. See attachment schema below. Binary data present only when DownloadAttachments: true.
uidintegerIMAP UID of the message. Unique within the mailbox folder.
flagsstring[]Current IMAP flags on the message (e.g. ["\\Seen"], ["\\Flagged"]).
simple — example output
{
  "from": "supplier@vendorcorp.com",
  "to": "accounts@mycompany.com",
  "cc": "",
  "subject": "Invoice #INV-2026-0417",
  "date": "Fri, 23 May 2026 11:42:07 +0000",
  "messageId": "<CA+xyz123abc@mail.vendorcorp.com>",
  "inReplyTo": "",
  "text": "Please find attached invoice #INV-2026-0417 for services in April 2026. Amount: $3,800.00. Due: 22 Jun 2026.",
  "html": "<p>Please find attached invoice...</p>",
  "uid": 4872,
  "flags": [],
  "attachments": [
    {
      "fileName": "Invoice_INV-2026-0417.pdf",
      "mimeType": "application/pdf",
      "size": 91204,
      "contentId": "",
      "binaryKey": "attachment_0",
      "error": null
    }
  ]
}
Format: resolved

The resolved format returns fully structured email data with ImapAddressInfo objects for all address fields. Use this format when you need to programmatically access display names and email addresses separately.

resolved — Field Reference

FieldTypeDescription
fromImapAddressInfo[]Array of sender address objects, each with Name (display name, may be empty) and Address (email address).
toImapAddressInfo[]Array of primary recipient address objects.
ccImapAddressInfo[]Array of CC recipient address objects. Empty array if not present.
replyToImapAddressInfo[]Reply-To address objects, if specified in the email headers.
subjectstringEmail subject line.
datestringMessage date in RFC 2822 format.
messageIdstringMessage-ID header value.
inReplyTostringIn-Reply-To header value.
textstringPlain text body.
htmlstringHTML body.
uidintegerIMAP UID of the message.
flagsstring[]Current IMAP flags.
attachmentsobject[]Attachment metadata array. Binary download not available in resolved format.

ImapAddressInfo Object

FieldTypeDescription
NamestringDisplay name from the email address header (may be empty string if not present).
AddressstringThe email address (e.g. "jane@example.com").
resolved — example output (address fields)
{
  "from": [
    { "Name": "Vendor Corp Billing", "Address": "billing@vendorcorp.com" }
  ],
  "to": [
    { "Name": "Accounts Payable", "Address": "accounts@mycompany.com" }
  ],
  "cc": [
    { "Name": "John Smith", "Address": "john.smith@mycompany.com" }
  ],
  "replyTo": [],
  "subject": "Invoice #INV-2026-0417",
  "date": "Fri, 23 May 2026 11:42:07 +0000",
  "messageId": "<CA+xyz123abc@mail.vendorcorp.com>",
  "inReplyTo": "",
  "text": "Please find attached invoice...",
  "html": "<p>Please find attached invoice...</p>",
  "uid": 4872,
  "flags": []
}
Format: raw

The raw format returns the complete RFC 822 email message as a base64-encoded binary. No parsing is performed. Attachments are not extracted separately — they are embedded within the raw MIME structure.

raw — Field Reference

FieldTypeDescription
uidintegerIMAP UID of the message.
flagsstring[]Current IMAP flags on the message.
datastringBase64-encoded RFC 822 email bytes. Decode to obtain the full MIME message including all headers, body parts, and attachments.
sizeintegerSize of the raw email in bytes (before base64 encoding).
raw — example output
{
  "uid": 4872,
  "flags": [],
  "size": 142891,
  "data": "UmVjZWl2ZWQ6IGZyb20gbWFpbC52ZW5kb3Jjb3JwLmNvbSAoW..."
}
Attachment Object Schema

Present in simple and resolved format outputs within the attachments array.

FieldTypeDescription
FileNamestringOriginal filename of the attachment as provided in the MIME Content-Disposition header.
MimeTypestringMIME type of the attachment (e.g. "application/pdf", "image/jpeg", "text/csv").
SizeintegerAttachment size in bytes.
ContentIdstringMIME Content-ID value, used for inline attachments (embedded images). Empty string for standard attachments.
BinaryKeystringBinary field name where attachment data is stored when DownloadAttachments: true. Format: {AttachmentsBinaryPropertyPrefix}{index} (e.g. attachment_0). Empty string when attachments are not downloaded.
Errorstring | nullError message if the attachment could not be downloaded (e.g. size limit exceeded). null when download succeeded.

Referencing Trigger Output in Downstream Nodes

If the IMAP Trigger node is named imapTrigger, reference its output fields using the following patterns:

Value NeededExpression (simple format)
Sender address{{ nodes.imapTrigger.output.from }}
Subject line{{ nodes.imapTrigger.output.subject }}
Plain text body{{ nodes.imapTrigger.output.text }}
HTML body{{ nodes.imapTrigger.output.html }}
Message date{{ nodes.imapTrigger.output.date }}
UID (for downstream tracking){{ nodes.imapTrigger.output.uid }}
First attachment filename{{ nodes.imapTrigger.output.attachments[0].FileName }}
First attachment MIME type{{ nodes.imapTrigger.output.attachments[0].MimeType }}
First attachment binary key{{ nodes.imapTrigger.output.attachments[0].BinaryKey }}

For resolved format, address fields are arrays of ImapAddressInfo objects:

Value NeededExpression (resolved format)
Sender email address{{ nodes.imapTrigger.output.from[0].Address }}
Sender display name{{ nodes.imapTrigger.output.from[0].Name }}
First recipient address{{ nodes.imapTrigger.output.to[0].Address }}
First CC recipient address{{ nodes.imapTrigger.output.cc[0].Address }}
Binary field access: When DownloadAttachments: true, each attachment's binary data is available as a binary field on the trigger output using the key stored in attachments[n].BinaryKey. Pass this key to downstream nodes that accept binary input (e.g. file processing, S3 upload, FlowRag).
html field may contain unsafe content: The html field in simple and resolved formats contains the raw HTML body as received from the email sender. Always sanitise HTML output before rendering it in a user interface or injecting it into other systems.