When working in Power Automate, one of my team members recently asked how they could automatically add attachments to SharePoint list items. This is a great question because attachments, like documents or images, are often important for SharePoint list items.
In this tutorial, I will show you how to add attachments to SharePoint list items using Power Automate. Whether you need to attach one or multiple files or even automate adding attachments from emails or OneDrive, this tutorial will guide you through everything.
We will also learn how to use the REST API to add attachments to SharePoint list items with Power Automate.
Add Attachment action in Power Automate
The Add Attachment action in Power Automate allows you to attach files to items in a SharePoint list or document library. This action is commonly used when automatically attaching a file (such as a document or image) to a SharePoint list item or a document library item.
Power Automate Add Attachment action accepts parameters:
- Site Address: The URL of the SharePoint site where the list is located.
- List Name: The name of the SharePoint list where the attachment will be added.
- Id: The unique ID of the SharePoint list item to which the attachment will be added.
- File Name: The name of the file being attached. It should include the file extension (e.g., “Document.pdf”).
- File Content: The file content is attached. This is typically the file content in binary format. You might retrieve it from previous actions like “Get file content” or “Create file.”

Add Attachments to SharePoint List Items Using Power Automate
Suppose you work for a project management team, and you want to log tasks into a SharePoint list and attach related documents (e.g., task briefs or reference files). The flow should allow team members to manually trigger the process, input task details, and upload a file that will be attached to the task.
For this example, I created a SharePoint list called Task Tracker:

Now follow the below steps:
1. In the Power Automate, click the Instant Cloud flow, enter the Flow name, and choose the trigger flow (i.e., manually trigger a flow).
Next, we will add a text input for Task Name, Assigned To, and Description, a date input for Due Date, and a file content input for an attachment.

2. Then add the Create Item action to add the SharePoint item and provide the below parameters:
- Site Address: Select your SharePoint site address from the drop-down.
- List Name: Select the SharePoint list where the task is stored.
- Task Name: Provide Task name dynamic content from the trigger input.
- Assigned To: Provide Assigned To dynamic content from the trigger input.
- Due Date: Provide Due Date dynamic content from the trigger input.
- Description: Provide a Description of dynamic content from the trigger input.

3. Then add the Add attachments action and provide the below parameters:
- Site Address: Select your SharePoint site address from the drop-down.
- List Name: Select the SharePoint list where the task is stored.
- Id: Use the ID from the Create Item action.
- File Name: Provide the File content name from the trigger.
- File Content: Provide the File content contentsBytes from the trigger.

Save and Test the flow. Enter the Task Name, Assigned To, Due Date, Description, and Attchemtent file and click on the Run flow:

After the flow runs successfully, go to the SharePoint list, and you will see the item created with the attachments.

How to Add Multiple Attachments to a SharePoint List Item Using Power Automate?
Imagine you are managing an employee onboarding process, and each new hire must submit several documents, such as a resume, ID proof, and a signed contract. You have a SharePoint list called “Employee Onboarding Tracker” with the following columns:

As part of the onboarding process, I have a document library that contains employee documents. I want to retrieve an employee’s documents from the library and add them as attachments when an item is created in the SharePoint list.

Now follow the below steps:
1. Create an automated cloud flow. Give the flow name and select the trigger When an item is created. Also, provide the Site Address and List Name.

2. Add Initialize variable action, enter the variable name, and choose the variable type as Array.

3. Next add Get files(Properties Only) action and provide below parameters:
- Site Address: Provide the site address
- Library Name: Select your library name
- Filter Query: Provide the below expression:
EmployeeID eq '@{triggerBody()?['EmployeeID']}'
4. Then, add the Get file content action, provide the site address, and pass the File Identifier from the dynamic content of the Get files (properties only) action.
Then, it will automatically add a For each loop.

5. Inside the for each add Add attachment action and provide below parameters:
- Site Address: Select the site address from the drop-down.
- List Name: Choose the list Name from the drop-down.
- Id: Use the ID of the item created.
- File Name: Use the “Name” property of the file from the “Get files (properties only)” action.
- File Content: Use the output of the “Get file content” action.

Now, it’s time to save the flow. Click on Test -> Select Manually. Add an item to the SharePoint list.

After the flow runs successfully, refresh your SharePoint list, and you will see two attachments added to the SharePoint list item.

Add Email Attachment to SharePoint List Using Power Automate
Suppose you are managing a support ticketing system where clients email their issues. Each email may contain important attachments such as screenshots, logs, or documents. You want to automate the process of extracting these email attachments and adding them as files to items in a SharePoint list called “Support Tickets”.

Now follow the below steps:
1. Create an automated cloud flow. Give the flow name and select the trigger When a new email arrives (V3). Select Folder from Advanced parameters and provide the Inbox from the drop-down.

2. Add Create item action and provide the below parameters:
- Site Address: Select the site address from the drop-down.
- List Name: Choose the list Name from the drop-down.
- Subject: Provide subject from dynamic content.

3. Next, add the Get attachment action from Outlook. Provide the Message ID and Attachment ID from the When a new email arrives action.
Then, it will automatically add a For each loop.

4. Inside the for each add Add attachment action and provide below parameters:
- Site Address: Select the site address from the drop-down.
- List Name: Choose the list Name from the drop-down.
- Id: Use the ID of the item created.
- File Name: Provide the attachment’s Name from the “Get attachment” action.
- File Content: Provide content Bytes from the “Get attachment” action.

Now, click on save and run the flow manually. When you receive an email in the inbox, the flow runs:

After the flow runs successfully, go to the SharePoint list, and you will see the attachment added.

Add Attachments from OneDrive to SharePoint List Items Using Power Automate
Suppose you manage a project tracking system you want when a new project is created in the “Project Tracker” SharePoint list; you want to automatically attach the Terms and Conditions (PDF) file stored in OneDrive to the new SharePoint list item.
Now follow the below steps:
Create an automated cloud flow When an item is created, trigger. Then, add the Get file content action from OneDrive and select your file from onedrive.

Next, add the Add attachment action and provide the below parameters:
- Site Address: Select the site address from the drop-down.
- List Name: Choose the list Name from the drop-down.
- Id: Use the ID of the item created.
- File Name: Provide the attachment’s Name.
- File Content: Provide file content from the “Get file content” action.

Now, it’s time to save the flow. Click on Test -> Select Manually. Add an item to the SharePoint list.

After the flow runs successfully, refresh your SharePoint list, and you will see an attachment added to the SharePoint list item.

Add Attachments to SharePoint List Items using Power Automate Rest API
In the above example, we saw how to add attachments using the Add attachment action. I will show you how to add attachments using the REST API.
Now follow the below steps:
Create an automated cloud flow with when an item is created trigger. Then, add the Get file content action from OneDrive and select your file from onedrive.

Then add Send an HTTP request to SharePoint action and provide the below parameters:
- Site Address: Provide the SharePoint tenant address
- Method: Select method as Post from the drop-down
- Uri:
_api/web/lists/getbytitle('List Name')/items(List ID)/AttachmentFiles/ add(FileName='Attachment Name with extension')- Header: Use the below headers to make REST API calls to SharePoint:
Accept: application/json
Content-Type: application/json- Body: Provide only file content:
"Contents of file"
Now, it’s time to save the flow. Click on Test -> Select Manually. Add an item to the SharePoint list.

After the flow runs successfully, refresh your SharePoint list, and you will see an attachment added to the SharePoint list item.

Conclusion
This tutorial explored various ways to add attachments to SharePoint list items using Power Automate. We started with the Add Attachment action, where we attached single and multiple files to list items.
We then covered advanced scenarios, such as adding email attachments to list items, attaching files from OneDrive, and automating file attachments from a document library. Lastly, we learned to use the REST API to add attachments to SharePoint List Items using Power Automate.
- Get Attachments from a SharePoint list item using Power Automate
- Add Hyperlinks to SharePoint List Items Using Power Automate
- Create an Array From SharePoint List Items Using Power Automate
- Save SharePoint List Attachments to a SharePoint Library Using Power Automate
- Save Office 365 Email Attachments to OneDrive for business using Power Automate

After working for more than 18 years in Microsoft technologies like SharePoint, Microsoft 365, and Power Platform (Power Apps, Power Automate, and Power BI), I thought will share my SharePoint expertise knowledge with the world. Our audiences are from the United States, Canada, the United Kingdom, Australia, New Zealand, etc. For my expertise knowledge and SharePoint tutorials, Microsoft has been awarded a Microsoft SharePoint MVP (12 times). I have also worked in companies like HP, TCS, KPIT, etc.