Send email
Step · Stable
Send an email through the best connected account (Gmail / Microsoft 365 / Resend).
Delivers email through the workspace’s mail carrier: a connected Gmail or Microsoft 365 account, or the Resend transactional sender. The carrier resolves automatically (step-level via override → workspace default → the single connected account, else Resend). to, subject, and body accept Jinja2 templates rendered against the run context. Delivery failure logs a warning but does not halt the run; a disconnected carrier fails the step with a reconnect error instead of silently switching sender.
When to use
Section titled “When to use”Use whenever a workflow step needs to deliver a message to an email address — a weekly digest, an invoice notification, an approval confirmation. The to, subject, and body all accept {{ template }} references so you can slot in any upstream output directly.
When not to use
Section titled “When not to use”For an in-app alert visible in the bell panel, use Send notification. For a WhatsApp message, use Send WhatsApp. If you need to receive an email (not send one), use the Incoming email trigger.
Inputs
Section titled “Inputs”string · required
The recipient email. A literal address, or a {{ reference }} to one produced upstream (e.g. a contact lookup or the invoking user). Use {{ user.email }} to email the person who ran the flow.
Example: jakub@example.com
- ✓
ops@firma.cz— literal address - ✓
{{ user.email }}— the invoking user - ✓
{{ find_contact.email }}— from an upstream contact lookup - ✗
Jakub— a name is not an address — use the email or a {{ ref }}
subject
Section titled “subject”string · optional
Plain text or a template — {{ weather.headline }} reuses a prepared summary.
Example: Týdenní souhrn
- ✓
Týdenní souhrn— literal subject - ✓
Počasí v {{ geo.location }}— templated subject
string · required
The email body. Mix literal text and {{ refs }}; a module that pre-formats text (e.g. weather.report) can be dropped in whole. Required — an email with no text/html is rejected by the provider.
Example: Dobrý den, {{ report.text }} S pozdravem
- ✓
{{ weather.report }}— a ready-made body from weather - ✓
Ahoj {{ user.firstName }}, hotovo!— literal + ref
choice · optional · one of automatic, resend, gmail, o365
The mail carrier. Automatic follows the workspace default; an explicit choice pins this one step to that service. Gmail / Microsoft 365 send as the connected account itself, so the recipient sees a real mailbox, not a platform sender.
- ✓
automatic— default — let the workspace decide - ✓
gmail— user explicitly asked “send it from my Gmail” - ✗
gmail— do not pin a carrier the user never mentioned — leave automatic
Outputs
Section titled “Outputs”Requires
Section titled “Requires”modules module_send_email
Auto-generated from the skill registry (load_skills()). Do not edit by hand.