Skip to content

How to Send an Email with Power Automate (Send an Email V2)

Send email from a Power Automate flow with Send an email (V2): the fields, attachments, an HTML body, shared-mailbox sending, and the real limits.

Citizen Development Academy Updated 5 min read
How to Send an Email with Power Automate (Send an Email V2)
In this article · 12 sections

Sending email is one of the most common things a flow does: a confirmation when a form comes in, a notification when a SharePoint item changes, a daily digest of open work. In Power Automate you do this with the Send an email (V2) action on the Office 365 Outlook connector. This guide covers the action’s fields, attachments, an HTML body, sending from a shared mailbox, and the limits that decide what this is and is not for.

Updated June 2026 against Microsoft’s Office 365 Outlook connector reference and email scenarios guide.

The Send an email (V2) action

Add an action, search Send an email (V2), and pick the Office 365 Outlook connector (the connector reference documents every field). The mail sends from the account that owns the connection. The fields you will use:

FieldWhat it is
ToRecipient address or addresses, separated by semicolons
SubjectThe subject line
BodyThe message; a rich-text editor that also accepts HTML (switch to the code view)
CC / BCCCopy and blind-copy recipients (under Advanced options)
AttachmentsOne or more files, each a Name and its ContentBytes (file content)
ImportanceLow, Normal, or High
Reply ToThe address replies should go to
From (Send as)A mailbox you have Send As or Send on Behalf permission for

Send a basic email

The simplest version is three fields:

  1. Add the Send an email (V2) action after your trigger.
  2. Fill To (type an address or pick dynamic content from the trigger, such as the requester’s email), a Subject, and a Body.
  3. Save and test. The body editor is rich text, so you can bold, link, and list without writing any HTML.

That is the whole pattern for a notification or confirmation email. Everything below is a variation on it.

Send an email with an attachment

To attach a file, you first get its content, then pass it to the Attachments field.

  1. Add a Get file content action (OneDrive for Business or SharePoint) and point it at the file.
  2. In Send an email (V2), open Advanced options and expand Attachments.
  3. Set Attachments Name to the file name (for example report.pdf) and Attachments Content to the File Content output of the Get file content step.

Each attachment is a pair: a name and its content (the ContentBytes). In the underlying JSON each one looks like { "Name": "report.pdf", "ContentBytes": <File Content> }. To attach a variable number of files, loop the files into an array of those objects and pass the array to Attachments.

Send an HTML email or a data table

The body accepts HTML, which is how you send a formatted message or a table of data. For a table, the clean pattern is three actions:

  1. Data Operation - Select to shape your array into the columns you want.
  2. Create HTML table to turn that array into an HTML table.
  3. Send an email (V2) with the HTML table dropped into the Body.

A minimal HTML body looks like this:

<h2>Weekly summary</h2>
<p>Here are this week's open items:</p>
<table border="1" cellpadding="6" cellspacing="0">
  <tr><th>Item</th><th>Owner</th><th>Due</th></tr>
  <tr><td>Renew certificate</td><td>Sam</td><td>Friday</td></tr>
</table>

If your HTML shows up as raw tags in the received email, the body is being treated as plain text; switch the body editor to its code view (the </> toggle) so the HTML is sent as HTML.

Send from a shared mailbox

To send as a shared mailbox instead of your own, use the Send an email from a shared mailbox (V2) action and enter the shared mailbox address in its Original Mailbox Address field. Two things to know: the connection account needs Send As (or Send on Behalf) permission on that mailbox first (Full Access alone lets you read it but not send from it; a mailbox admin grants Send As), and the sent message lands in the shared mailbox’s Sent Items, not yours, because it is sent from that account directly.

The From (Send as) field on the regular Send an email action and this dedicated action are not the same: use the From field when you only need a message to appear from another address you can send as; use the shared-mailbox action when the sent copy must also land in the shared mailbox’s Sent Items.

What Power Automate email is not

This is the correction worth making, because the action is easy to misread as a marketing tool.

  • It is not a bulk-email or campaign platform. It sends transactional and workflow email (one message per event), not newsletters to a list. Exchange Online enforces per-message recipient and daily sending limits, so looping a flow over hundreds of addresses will throttle or stop. For campaigns, use a real email service.
  • There is no SMTP server or port to configure. The Office 365 Outlook connector authenticates with your Microsoft 365 account; there are no SMTP settings, unlike a generic mail script.
  • A cloud flow does not need Outlook open. It sends server-side through the connection. (Keeping an app open is a Power Automate Desktop concern, not a cloud flow.)

Troubleshooting

  • Mail not sending from a shared mailbox. The connection account needs Send As (or Send on Behalf) permission on that mailbox; Full Access governs reading or triggering on a mailbox, not sending. Grant Send As, then reconnect.
  • HTML shows as raw tags. The body is being sent as plain text; switch the body to code view so it is treated as HTML.
  • Attachment fails. The Attachments Content must be the file’s binary content (ContentBytes), not its path or a link. Use Get file content to produce it.
  • Throttling at volume. If a flow loops over many recipients, you are hitting Exchange Online or connector limits. Batch the work, or move bulk sending to a dedicated service.
  • A flow breaks when someone leaves. Because the mail sends as the connection owner, build production flows on a dedicated service-account connection so they keep running when an individual loses a license or leaves.

Frequently asked questions

How do I send an email from a Power Automate flow?

Add the Send an email (V2) action on the Office 365 Outlook connector, fill in To, Subject, and Body, and save. The email sends from the account that owns the connection.

How do I send an email from a shared mailbox?

Use the Send an email from a shared mailbox (V2) action and enter the shared mailbox address. You need Send As (or Send on Behalf) permission on that mailbox, and the sent message appears in the shared mailbox’s Sent Items.

Can Power Automate send a formatted HTML email?

Yes. The body accepts HTML, so you can switch the editor to its code view and paste HTML, or build a table with the Create HTML table action and drop it into the body.

Can I use Power Automate for email marketing?

No. It is built for transactional and workflow email, and Exchange Online’s sending limits make it unsuitable for bulk campaigns. Use a dedicated email marketing service for newsletters and promotions.

This action is the single most common building block in flows; if you want to wire it into approvals, attachments, and scheduled digests with confidence, our Power Automate training covers the email patterns end to end. For the wider connector, see the Power Automate for Outlook guide.

Stay in the loop

Get new posts delivered to your inbox. No spam, unsubscribe anytime.

Related articles