Add Attachment to List Item in SharePoint using PowerShell

How to Add Attachment to a SharePoint List Item?

To add attachment to SharePoint list item,

  • Navigate to the list, select a list item 
  • Click on the “Attach File” button from the “Items” tab of the ribbon. 
  • Browse and select the file to attach. Click OK to attach the file to the item. You can also edit the list item and then attach the file.
    powershell add attachment to sharepoint list item

PowerShell to add an attachment to SharePoint list item

Here is the PowerShell script to add attachment to list item programmatically in SharePoint

Add-PSSnapin Microsoft.SharePoint.PowerShell -ErrorAction SilentlyContinue

#Custom Function to Add attachment to SharePoint List Item
Function Add-Attachment($Item, $AttachmentPath)
{
  $FileContent = [System.IO.File]::ReadAllBytes($AttachmentPath)
  $Item.Attachments.Add([System.IO.Path]::GetFileName($AttachmentPath), $FileContent)
  $Item.Update()
 
  Write-host "Attachment Added to List Item Successfully!"
}

#Variables
$SiteURL="https://portal.crescent.com/sites/Deals"
$ListName="Tasks"
$ItemID=1
$AttachmentPath="c:\Scripts\ASI-LOG.docx"

$web = Get-SPWeb $SiteURL
$List = $web.Lists[$ListName]
$Item = $list.GetItemById($ItemID)

#Call the function to Add Attachment
Add-Attachment $Item $AttachmentPath

To add an attachment to SharePoint Online list item, use: SharePoint Online: Add Attachment to list item using PowerShell

Salaudeen Rajack

Information Technology Professional with Two decades of SharePoint Experience.

Leave a Reply