Send email

Send an email based on a row

Ingredient Family: rowActionsIngredients

Outline Display: Send an email to {{to}} with subject {{subject}}.{{allowedRecipients:
Allowed recipients: {{allowedRecipients}}}}{{blockedBodyPatterns:
Blocked body patterns: {{blockedBodyPatterns}}}} The content is:
{{body}}

Details

If the email cannot be sent because the app is misconfigured – no email credentials, credentials that cannot be parsed, or a recipient formula that produced an empty address – the step fails the action with a malfunction message and the rest of the pipeline does not run. Nothing is sent in those cases. The recipient formula produces a comma-separated list of bare addresses; display-name forms like Dan <dan@x.com> are refused, and so is a recipient or subject carrying a line break or other control character, which is refused rather than cleaned up since it could otherwise inject headers. allowedRecipients is checked against every address produced, and one address that misses fails the step and names it. Every outcome, sent or refused, is written to the audit log.

Local scope

The parent slot binds these (look up the slot in the parent to see how):

  • $table – The table to act on

Settings

Required

  • Email : API connection (API category: Email)
    The API for sending email
    Set this to the name of an api: item whose provider: is in the Email category, or which reaches Email on another category’s behalf – a brokered api counts when its own settings point it at that service, and its provider page says which setting decides. Do not set it to a service name; pick the API the service points at.

  • subject : formula (returns text; required, non-nullable)
    A formula that generates the email subject line
    Scope: all columns of $table (reference as [ColumnName], e.g., [Name], [Price])

  • to : formula (returns text; required, non-nullable)
    A formula that generates the email recipient
    Scope: all columns of $table (reference as [ColumnName], e.g., [Name], [Price])

  • body : formula (returns formatted text; required, non-nullable)
    A formula that produces the email body. Note that because the output is richtext, any math-like operators, such as IF, must be wrapped in $$…$$.
    Scope: the app’s pages (e.g., [page_name]), all columns of $table (reference as [ColumnName], e.g., [Name], [Price])

Optional

  • allowedRecipients : constant value (type: text; optional)
    Regex pattern restricting which email addresses may be sent to (e.g. ‘.*@company.com$’). Checked against every address the recipient formula produces; a single address that does not match fails the step. Leave blank to allow any recipient.

  • blockedBodyPatterns : constant value (type: text; optional)
    Regex matched against the outbound subject and body; if it matches, the step fails and nothing is sent. Combine multiple secret/PII patterns with regex alternation.