You must download the Teams attachment via HTTP using contentUrl, then upload it to SharePoint. You can’t access it directly as a SharePoint file.
Teams chat attachments are not SharePoint files, so Power Automate must act as a middleman.
How the bridge works
Get the attachment link
When the Teams trigger fires, it provides an array of attachments. From that metadata, you retrieve the contentUrl.
Download the file (critical step)
You cannot use SharePoint → Get file content here.
Instead, you must use:
HTTP action (GET) with the contentUrl
(This is the most reliable approach)
This step actually pulls the binary file data into the flow.
Upload to SharePoint
Once you have the file content from the HTTP action, pass it directly into SharePoint → Create file.
Flow summary
Teams trigger
→ HTTP GET (contentUrl)
→ SharePoint Create file
By doing this, the flow temporarily “downloads” the file and then saves it into SharePoint.
Key clarification (important)
contentUrl is not a SharePoint file identifier
That’s why SharePoint → Get file content hangs or returns “Not specified”
HTTP (or Graph) is required to fetch the file first
✅ If this answer helped resolve your issue, please mark it as Accepted so it can help others with the same problem.
👍 Feel free to Like the post if you found it useful.