Add Attachments in Approval Using Power Automate [Step By Step]

When I was working on an Expense Reimbursement application, I realized something important: the approver can’t make a proper decision just by looking at basic details. They need to see the actual invoice, bill, or receipt before approving the request. Without these attachments, the approval process becomes slow, confusing, and sometimes even incorrect.

To avoid this, we can attach the invoice or any supporting document directly to the approval request. This way, the approver can instantly open the file in Outlook or Microsoft Teams and take action without any delays.

In this tutorial, I will show you how to add attachments in an approval using Power Automate.

Add Attachments in Approval Using Power Automate

In this tutorial, I will show you how to add attachments in an approval flow using two different methods:

  • When the attachment is stored in a SharePoint List
  • When the attachment is stored in a SharePoint Document Library

For this example, I am using a single-level approval, but the same steps also work for sequential or parallel approvals.

For this example, I created:

  • A SharePoint List named Expense Claims – where users submit their requests along with attachments.
Add Attachments to Approval in Power Automate
  • A SharePoint Document Library named Expense Documents – where supporting files such as invoices and receipts are stored.
Power Automate Approval Flow With Attachments

Now, let’s look at how you can attach these documents directly to the approval request in Power Automate.

Add Attachments in the Approval From SharePoint List

Here, I will show you how to attach files that are uploaded directly to the Expense Claims SharePoint list item. Since SharePoint lists support default attachments, users can upload bills, invoices, or receipts while submitting the form.

Follow the steps below:

  1. Go to Power Automate -> Create an Automated Cloud Flow with a trigger, When a new item is created. Then provide the site address and list name.
Attach Files in Power Automate Approval Requests
  1. Add an Initialize variable action with type array:
Power Automate Attachments in Approvals
  1. Next, add the ‘Get attachments‘ action and provide the parameters below:
    • Site Address: Select your SharePoint site
    • List Name: Expense Claims
    • Id: ID from the trigger
How to Send Approval With Attachments

This retrieves all attachments uploaded to the list item.

  1. Next, add Get attachment content and provide the parameters:
    • Site Address: Select your SharePoint site
    • List Name: Expense Claims
    • Id: ID from the trigger
    • File Identifier -> Id from the Get attachments action. It will add a For each loop.
Approval Email With Attachment in Power Automate

This step gets the actual file content that will be attached to the approval request.

  1. Inside the For each, add append to the array variable and provide the parameters below:
    • Name: varAttach
    • Value:
{
  "name": "@{items('For_each')?['DisplayName']}",
  "content": {
    "$content-type": "@{body('Get_attachment_content')?['$content-type']}",
    "$content": "@{body('Get_attachment_content')?['$content']}"
  }
}

or

{
  "name": "@{items('For_each')?['DisplayName']}",
  "content": "@{base64(body('Get_attachment_content'))}"
}
Add File Attachments to Approvals in Power Automate
  1. Add the Start and wait for an approval action, and provide the following parameters:
    • Approval Type: Approve/Reject – First to respond
    • Title: Expense Claim – @{triggerBody()?[‘EmployeeName/DisplayName’]}
    • Assigned To: Approver (choose from dynamic content)
    • Details: Add expense information such as:
A new Expense has been created in the Expense Claim list.

**Requested By**: @{triggerBody()?['EmployeeName/DisplayName']}
**Expense Amount**: @{triggerBody()?['ExpenseAmount']}
**Expense Purpose**: @{triggerBody()?['ExpensePurpose']}
Please review the request and choose an action based on the requirement.
Power Automate Approval Including SharePoint Attachments
  1. Now scroll down and select the Attachments section. Then click ‘switch to input entire array’ and provide the array variable.
Send Attachments in Power Automate Approval

This will attach every file submitted in the list item directly to the approval notification.

Test The Approval Flow With SharePoint List Attachments

Now that our flow is ready, let’s test it to ensure the attachments are added correctly to the approval request.

Go to your Expense Claims SharePoint list and add a new expense request.

Power Automate Approvals With Document Attachments

Then the approver will receive approval in both Outlook and Teams with an attachment.

How To Add Attachments in Approval Using Power Automate

Add Attachments in the Approval From the SharePoint Document Library

In some scenarios, users do not upload attachments directly to the SharePoint list. Instead, all supporting documents, such as invoices, receipts, tickets, and bills, are stored in a SharePoint Document Library.

For example, in my Expense Reimbursement application, the finance team stored all invoices in a separate Expense Documents library for better file management and auditing.

If your files are stored in a document library, you can still attach them to the approval request. Here’s how to do it.

  1. Go to Power Automate -> Create an Automated Cloud Flow with a trigger, When an item or a file is modified. Then provide the site address and list name.
Attach SharePoint Files to Approval in Power Automate
  1. Next, add the Get file content and provide the site address, then the File Identifier from the trigger.
Approval Workflow With Attachments in Power Automate
  1. Add the Start and wait for an approval action, and provide the following parameters:
    • Approval Type: Approve/Reject – First to respond
    • Title: Expense Claim – @{triggerBody()?[‘EmployeeName/DisplayName’]}
    • Assigned To: Approver (choose from dynamic content)
    • Details: Add expense information such as:
A new Expense has been created in the Expense Claim list.

**Requested By**: @{triggerBody()?['EmployeeName/DisplayName']}
**Expense Amount**: @{triggerBody()?['ExpenseAmount']}
**Expense Purpose**: @{triggerBody()?['ExpensePurpose']}
Please review the request and choose an action based on the requirement.
Power Automate Approval Flow With Library Files
  1. Now scroll down and select the Attachments section. Then click ‘+ Add new item’ and provide the following:
    • Name-1: @{triggerBody()?[‘{Name}’]}
    • Content-1: File Content from Get attachment content
Add Attachments in the Approval From the SharePoint Document Library

Test The Approval Flow With Document Library Attachments

Upload or modify a file in the Expense Documents library.

Send Approval With PDF or Document Attachments

The approver will receive the approval notification with the attached invoice/file.

Add Attachments in the Approval From the SharePoint Document Library in Power Automate

In this tutorial, I showed how to add attachments to an approval in Power Automate through two methods: one with files stored in a SharePoint list and another with files stored in a SharePoint document library. These methods help you create a smooth and reliable approval experience across Outlook and Microsoft Teams.

You may also like:

Power Apps functions free pdf

30 Power Apps Functions

This free guide walks you through the 30 most-used Power Apps functions with real business examples, exact syntax, and results you can see.

Live Webinar

Quiz App Using SharePoint Framework (SPFx)

Learn to built a complete Quiz Management solution that enables admins to create and manage quizzes, categories, questions, and settings with an easy automated setup process in SharePoint. It also includes an interactive quiz experience for users and a powerful dashboard to track participation, analyze results, and view detailed performance reports with charts and answer insights.

📅 2nd June 2026 – 10:00 AM EST | 7:30 PM IST

Download User registration canvas app

DOWNLOAD USER REGISTRATION POWER APPS CANVAS APP

Download a fully functional Power Apps Canvas App (with Power Automate): User Registration App