n8n SharePoint File Uploader 2026: Auto-Upload Images & Documents to Microsoft 365

This n8n workflow automates file uploads to SharePoint — handling authentication, folder routing, and error management for any Microsoft 365 tenant, without code.
httpRequest
set
manualTrigger
+1
Workflow Identifier: 1580
NODES in Use: Manual Trigger, Set, HTTP Request, Sticky Note
Automate image uploads with n8n and SharePoint

Press CTRL+F5 if the workflow didn't load.

Learn how to Build this Workflow with AI:

What this workflow does

This workflow goes beyond images. Any file your team works
with daily — images, PDFs, Word documents, Excel sheets,
PowerPoint decks, CSV exports, ZIP archives — can be uploaded
to SharePoint automatically using Microsoft Graph API.

The workflow solves the exact problem Microsoft 365 teams
face most: files live in too many places (email attachments,
Dropbox, local drives, Google Drive) and someone has to
manually move them into SharePoint.

Here’s what happens automatically:

→ Gets a Microsoft 365 access token via Azure AD OAuth2
→ Downloads or receives the file from any source URL
→ Uploads it directly to the correct SharePoint folder
→ Returns confirmation with the file’s SharePoint location

Works with any file type — just change the Content-Type
header in the upload node to match:
→ image/jpeg or image/png for images
→ application/pdf for PDFs
→ application/vnd.openxml formats-office document for Word/Excel
→ application/octet-stream for any binary file

 


Who should use this workflow

This workflow is for anyone who uploads images often to SharePoint and wants to save time. It helps content managers, marketers, or IT teams who want fewer errors and less manual work. No coding skills are needed to run this in n8n.

 


Tools and services used

    • Microsoft Graph API: To handle authentication and file upload via API.

 

    • Microsoft Azure Active Directory app: To get access credentials (tenant ID, client ID, client secret).

 

    • SharePoint Online: The file storage location where images are uploaded.

 

    • n8n automation platform: To build and run the workflow without coding.

 

    • Public image URL: Source to download an image file for uploading.

1 Barrier: Setting Up Microsoft 365 Authentication

Most people get stuck before even touching n8n — the Azure
AD app registration. Here’s the exact setup so you’re not
searching through Microsoft documentation.

Step 1 — Register an App in Azure AD

1. Go to portal.azure.com → Azure Active Directory
2. Click “App Registrations” → “New Registration”
3. Name it anything (e.g. “n8n SharePoint Upload”)
4. Supported account types: Single tenant (your org only)
5. Redirect URI: leave blank for now
6. Click Register

Step 2 — Get Your Credentials

From the app overview page, copy:
→ Application (client) ID → this is your CLIENT_ID
→ Directory (tenant) ID → this is your TENANT_ID

Step 3 — Create a Client Secret

1. Left menu → “Certificates & Secrets”
2. Click “New Client Secret”
3. Set expiry: 24 months recommended
4. Copy the VALUE immediately — it only shows once
→ This is your CLIENT_SECRET

Step 4 — Set API Permissions

1. Left menu → “API Permissions”
2. Click “Add a permission” → Microsoft Graph → Application permissions
3. Add: Sites.ReadWrite.All
4. Click “Grant admin consent for [your org]” — this is required

Step 5 — Get Your SharePoint Site ID

In your browser, go to:
https://[yourtenant].sharepoint.com/sites/[yoursite]/_api/site/id

Copy the GUID returned — this is your SharePoint Site ID
used in the Graph API upload URL.

Once you have TENANT_ID, CLIENT_ID, CLIENT_SECRET, and
Site ID — paste them into the Set config node and the
workflow is ready to run.

 


How the workflow works (Inputs → Processing → Output)

Inputs

    • Azure AD app credentials: TENANT_ID, CLIENT_ID, CLIENT_SECRET

 

    • Image URL to download (e.g., a public picsum.photos link)

 

    • Target SharePoint folder path

 

    • Filename to save the image as

 

Processing

    • Manual Trigger: Starts the workflow.

 

    • Set config (sensitive data): Stores tenant ID, client ID, client secret securely in the workflow.

 

    • Authentication: Sends POST request to Microsoft OAuth2 endpoint to get access token.

 

    • Get photo (for testing purposes): Downloads image binary data from the URL.

 

    • Set destination: Sets the folder path and file name for the upload.

 

    • Upload photo: Sends PUT request to Microsoft Graph API to upload the image binary into SharePoint folder.

 

Output

The workflow outputs the upload response JSON. It contains file details confirming the image saved correctly. User can check the SharePoint folder manually as well.

 


Beginner step-by-step: How to use this workflow in n8n

1. Import the workflow

    1. Download the workflow file using the Download button on this page.

 

    1. In the n8n editor, click on “Import from File” and select the downloaded file.

 

2. Configure credentials

    1. Open the Set config (sensitive data) node.

 

    1. Enter your Azure app’s TENANT_ID, CLIENT_ID, and CLIENT_SECRET.

 

    1. Update the TARGET_FOLDER and FILE_NAME fields in the Set destination node as needed.

 

3. Test the workflow

    1. Click the Manual Trigger node and then select “Execute Workflow”.

 

    1. Check the nodes run successfully and the final upload response shows success.

 

4. Activate for production

    1. Turn on the workflow to enable automatic runs.

 

    1. Optionally, replace the manual trigger with a webhook or scheduled trigger for automation.

 

If self hosting n8n, explore self-host n8n for setup and management.

 


Common errors and edge cases

    • 401 Unauthorized: Usually from wrong tenant ID, client ID, or secret. Double-check app registration.

 

    • 404 Not Found on upload: URL path error or missing permissions. Verify folder path and API permissions.

 

    • Image download fails: Image URL invalid or blocked. Test URL separately first.

What File Types Work With This Microsoft 365 SharePoint Workflow

This workflow is designed for image uploads by default, but the same Microsoft Graph API endpoint supports almost any file type.

The only change required is updating the Content-Type header in the upload node.

File TypeContent-Type Header Value
JPEG Imageimage/jpeg
PNG Imageimage/png
PDF Documentapplication/pdf
Word Documentapplication/vnd.openxmlformats-officedocument.wordprocessingml.document
Excel Spreadsheetapplication/vnd.openxmlformats-officedocument.spreadsheetml.sheet
PowerPointapplication/vnd.openxmlformats-officedocument.presentationml.presentation
CSV Filetext/csv
ZIP Archiveapplication/zip
Any Binary Fileapplication/octet-stream

The upload node structure remains the same for every file type — only the Content-Type value changes.

This makes the workflow highly flexible and reusable across your entire Microsoft 365 document system, not just for image uploads.

 


Ways to customize

    • Change the image source URL in Get photo (for testing purposes) to any valid image.

 

    • Use n8n expressions to create dynamic filenames, like adding timestamps.

 

    • Modify Content-Type in Upload photo for other file types like PDFs.

 

    • Store sensitive values in n8n Credentials for better security instead of Set node.

 

    • Switch to webhook triggers for automatic uploads from external apps.

 


Summary of benefits and results

✓ Saves several hours weekly by removing manual uploads.
✓ Avoids errors caused by manual file handling.
✓ Gives easy automatic uploads into SharePoint using simple n8n setup.
✓ Supports changing image sources and filenames flexibly.
✓ Suitable for non-technical users once set up.

 


Automate image uploads with n8n and SharePoint

Visit through Desktop to Interact with the Workflow.

Frequently Asked Questions

This error happens if TENANT_ID, CLIENT_ID, or CLIENT_SECRET are wrong. Check the Azure portal app registration and update credentials exactly.
This error comes from an invalid SharePoint folder path or missing API permissions. Verify the target folder path and ensure Sites.ReadWrite.All permission is granted.
Yes, by changing the Content-Type header in the upload node and providing the correct binary data, other files like PDFs can be uploaded.
Yes, replace the Manual Trigger node with a Webhook node or schedule trigger to automate workflow runs.
Author
Written By
Ankit Sharma

Related Workflows

Automate Twist Channel Creation and Messaging with n8n

This workflow automates creating and updating a channel in Twist and sending a personalized message to specific users. It eliminates manual setup errors and saves time managing Twist communications.

Automate Ideogram Image Generation with Google Sheets & Gmail

This workflow automates graphic design image generation via Ideogram AI, storing image data in Google Sheets and Google Drive, with email alerts via Gmail. It saves designers hours by automating image creation, remixing, review, and record-keeping.

Automate IT Support with Slack and OpenAI in n8n

Streamline IT support by automating Slack message handling using n8n and OpenAI. This workflow handles Slack DMs, filters bots, queries a Confluence knowledge base, and delivers AI-generated responses, improving support efficiency and response time.

Automate Crypto Analysis with CoinMarketCap & n8n AI Agent

Discover how this unique n8n workflow leverages CoinMarketCap’s multi-agent AI to deliver precise, real-time cryptocurrency insights directly via Telegram. Manage crypto data analysis efficiently with automated multi-source API integration.

Automate Gumroad to Beehiiv Subscriber Sync with n8n

Learn how to automatically add new Gumroad sales customers as Beehiiv newsletter subscribers using n8n automation. This workflow saves time by syncing sales data to Google Sheets CRM and notifying your Telegram channel instantly.

Generate On-Brand Blog Articles Using n8n and OpenAI

This workflow automates the creation of on-brand blog articles by analyzing existing company content using n8n and OpenAI. It extracts article structures and brand voice to produce consistent draft articles, saving significant content creation time.
1:1 Free Strategy Session
Your competitors are already automating. Are you still paying for it manually?

Do you want to adopt AI Automation?

Every hour your team does repetitive work, you're burning real money.
While you wait, faster businesses are cutting costs and moving quicker.
AI and automations aren't the future anymore — they're the present.

Book a live 1-on-1 session where we show you exactly which of your daily tasks can be automated — and what it’s costing you not to.