Portal Community

Output Ports

PortTrigger ConditionDescription
success SMTP accepted the message The SMTP server accepted the email for delivery. Note: acceptance by the SMTP server does not guarantee delivery to the recipient's inbox — bounces and spam filtering happen post-acceptance.
error SMTP connection or send failure Triggered when the SMTP server refuses the connection, authentication fails, the server returns an error code, or a network timeout occurs. The error details are available in the output object.

Input Fields Available in Expressions

FieldTypeDescription
vars.*anyWorkflow variables from upstream nodes (e.g. vars.customer_name, vars.invoice_pdf_base64).
input.*anyOriginal workflow trigger payload.
env.*stringEnvironment configuration values such as env.SUPPORT_EMAIL or env.COMPANY_NAME.
workflow.idstringUnique execution ID for correlation and audit logging.
now() / utcnow()datetimeCurrent timestamp functions usable in subject lines and bodies.

Output Data Schema

FieldTypeDescription
sentbooleantrue when the SMTP server accepted the message. false on failure.
message_idstringThe SMTP Message-ID header value assigned to the sent email. Useful for audit trails and delivery tracking correlation.
recipients_acceptedarrayList of email addresses accepted by the SMTP server for delivery.
recipients_rejectedarrayList of email addresses rejected by the SMTP server (e.g. invalid address format, relay denied). Usually empty for authenticated SMTP.
send_time_msintegerTime in milliseconds from SMTP connection to server acknowledgment.
error_codestringSMTP error code if sending failed (e.g. 535 for authentication failure, 550 for mailbox unavailable). Empty on success.
error_messagestringHuman-readable SMTP error description. Empty on success.

Example Output: Successful Send

{
  "sent": true,
  "message_id": "<20251114093211.8a2b3c4d@mail.bizfirst.io>",
  "recipients_accepted": ["jane.smith@customer.com"],
  "recipients_rejected": [],
  "send_time_ms": 412,
  "error_code": "",
  "error_message": ""
}

Example Output: Authentication Failure

{
  "sent": false,
  "message_id": "",
  "recipients_accepted": [],
  "recipients_rejected": [],
  "send_time_ms": 203,
  "error_code": "535",
  "error_message": "Authentication credentials invalid. Please verify the SMTP username and password in your credential configuration."
}

Example Output: Multi-Recipient Send

{
  "sent": true,
  "message_id": "<20251114103540.1e2f3g4h@mail.bizfirst.io>",
  "recipients_accepted": [
    "cfo@company.com",
    "finance@company.com",
    "ops@company.com"
  ],
  "recipients_rejected": [],
  "send_time_ms": 538,
  "error_code": "",
  "error_message": ""
}
Accessing output downstream: Use the node's output in downstream expressions. For example, if the node is named sendConfirmation:
{{ nodes.sendConfirmation.output.message_id }} — The sent message ID
{{ nodes.sendConfirmation.output.sent }} — Boolean success flag