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.
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:
| Field | What it is |
|---|---|
| To | Recipient address or addresses, separated by semicolons |
| Subject | The subject line |
| Body | The message; a rich-text editor that also accepts HTML (switch to the code view) |
| CC / BCC | Copy and blind-copy recipients (under Advanced options) |
| Attachments | One or more files, each a Name and its ContentBytes (file content) |
| Importance | Low, Normal, or High |
| Reply To | The 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:
- Add the Send an email (V2) action after your trigger.
- Fill To (type an address or pick dynamic content from the trigger, such as the requester’s email), a Subject, and a Body.
- 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.
- Add a Get file content action (OneDrive for Business or SharePoint) and point it at the file.
- In Send an email (V2), open Advanced options and expand Attachments.
- 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:
- Data Operation - Select to shape your array into the columns you want.
- Create HTML table to turn that array into an HTML table.
- 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
Free Power Automate Training: Where to Actually Start in 2026
Genuinely free Power Automate training: official Microsoft Learn paths, free hands-on practice, free guides, plus an honest note on where free stops.
Power Automate for Outlook: Triggers, Actions, and Patterns (2026)
Power Automate for Outlook: the email and calendar triggers and actions that matter, copy-ready flow patterns, and the limits that quietly break inbox flows.
Power Automate for Teams: Triggers, Actions, and Patterns (2026)
Power Automate for Microsoft Teams: posting messages and approval cards, the triggers that start a flow, copy-ready patterns, and the limits to plan around.