Microsoft SharePoint Component
Manage sites, drives, files, and lists in Microsoft SharePoint.
Component key: ms-sharepoint
Description
Microsoft SharePoint is a web-based document management and collaboration platform that integrates with Microsoft 365. This component allows you to manage sites, drives, files, and lists within SharePoint.
API Documentation
This component was built using the Microsoft Graph Rest API v1.0
Example SharePoint Integration
The examples repo has an example integration that you can import that demonstrates how to listen for changes to a SharePoint drive, or fetch lists and items from a SharePoint site.
This example integration contains five flows:
- Import SharePoint File on Event - Whenever a file is created/updated/deleted in your customer's selected Sharepoint drive, that file is fetched and uploaded to an "Acme" endpoint that your customer enters.
- Subscribe to SharePoint File Events - This flow runs every week and creates a subscription to a Sharepoint drive, instructing Sharepoint to send notifications to the Import SharePoint File on Event flow whenever files are updated.
- Run Subscription Flow on Deploy - This flow calls the Subscribe to SharePoint File Events once on instance deploy to ensure the subscription is configured immediately.
- Get Files from SharePoint - This is a synchronous flow that can be called from an external system to list files in a SharePoint drive.
- Fetch Events and Documents from Site Lists - This flow demonstrates how to fetch "lists" in a SharePoint site,. A "list" can represent a calendar of events or a directory with files in it.
Connections
Certificate Credentials
App Registration Requirements
First, create an app registration in Microsoft Entra by following the steps in the OAuth connection guide. Then configure the following Microsoft Graph Application permissions:
Site Operations:
Sites.Read.All- Read items in all site collectionsSites.ReadWrite.All- Read and write items in all site collectionsSites.Manage.All- Create, edit, and delete items and lists in all site collectionsSites.FullControl.All- Full control of all site collections
File Operations:
Files.Read.All- Read files in all site collectionsFiles.ReadWrite.All- Read and write files in all site collections
List Operations:
Sites.ReadWrite.All- Required for list operationsSites.Manage.All- For creating and managing lists
User and Group Access:
User.Read.All- Read all users' profilesGroup.Read.All- Read all groups
Certificate Requirements
Before configuring certificate credentials, ensure:
- Certificate issued by a Certificate Authority (CA) for production, or self-signed for development
- RSA key size: minimum 2048 bits (4096 bits recommended)
- Certificate in X.509 format
- Public key formats: .cer, .pem, or .crt
- Private key in PEM or PKCS#12 format
Registering Certificate with Azure
- Ensure app registration is complete with required permissions
- Navigate to Certificates & Secrets in the app registration
- Select the Certificates tab
- Click Upload certificate
- Select the public certificate file (.cer, .pem, or .crt)
- Add an optional description
- Click Add to upload
After upload, note these values:
- Certificate Thumbprint - SHA-1 hash (e.g., "931E8F84B98A4B5F93AD609FD5E8D0BA1AB90F87")
- Start Date and Expiration Date
- Certificate ID - Automatically generated
Connection Configuration
Configure the following fields:
- Tenant ID: Azure AD Directory ID from app registration
- Client ID: Application ID from app registration
- Certificate Thumbprint: SHA-1 thumbprint from uploaded certificate (remove spaces)
- Private Key: Certificate private key in PEM format
- Scope:
https://graph.microsoft.com/.defaultfor application permissions
Private Key Format
The private key must be in PEM format with appropriate headers:
-----BEGIN PRIVATE KEY-----
[base64 encoded private key]
-----END PRIVATE KEY-----
Or for RSA keys:
-----BEGIN RSA PRIVATE KEY-----
[base64 encoded RSA private key]
-----END RSA PRIVATE KEY-----
| Input | Notes | Example |
|---|---|---|
| Base URL | The base URL for the Microsoft Graph API. Depending on your cloud environment, you can choose the correct one here. | https://graph.microsoft.com |
| Private Certificate | Your X.509 private certificate. | |
| Certificate Thumbprint | Thumbprint of the certificate. | |
| Client ID | Client Id of your Azure application. | 11111111-2222-3333-4444-555555555555 |
| Microsoft Entra ID Endpoint | The Microsoft Entra ID endpoint for the Microsoft Graph API. You can find this in the Azure portal or here. | https://login.microsoftonline.com |
| Scopes | Microsoft Graph API Scopes. | https://graph.microsoft.com/.default |
| Tenant | The tenant ID or name for the Microsoft Graph API. This is the ID or name of the tenant that you are connecting to. | 11111111-2222-3333-4444-555555555555 |
Microsoft SharePoint OAuth 2.0 (Deprecated)
Creating an App Registration
Once you have an instance of Microsoft SharePoint licensed to your account, you will need to create and configure a new "App Registration" within your Azure Active Directory tenant.
- Navigate to Microsoft Entra Identity > Applications > App registrations
- Select New registration
- Configure the basic settings:
- Name: Provide a descriptive name for the application
- Supported account types: Select Accounts in any organizational directory (Any Azure AD directory - Multitenant)
- Redirect URI: Select Web platform and add
https://oauth2.prismatic.io/callback
- Click Register to create the app registration
Obtaining Application Credentials
After registration, navigate to the Overview page and note:
- Application (client) ID - This will be the Client ID
- Directory (tenant) ID - Required for certain connection types
API Permissions Configuration
- Navigate to API Permissions
- Click Add a permission
- Select SharePoint for SharePoint-specific operations
- Choose Delegated permissions for user-authenticated flows
- Select the following permissions:
Essential Scopes:
offline_access- Required for refresh tokens (without this, users re-authenticate every hour)
Site Operations:
AllSites.Read- Read items in all site collectionsAllSites.Write- Edit or delete items in all site collectionsAllSites.Manage- Create, edit and delete items and lists in all site collectionsAllSites.FullControl- Full control of all site collections
File Operations:
MyFiles.Read- Read user filesMyFiles.Write- Read and write user filesAllSites.Read- Read files in all sitesAllSites.Write- Read and write files in all sites
List Operations:
AllSites.Write- Required for list item operationsAllSites.Manage- For creating and managing lists
User Profile:
User.Read.All- Read all users' profilesUser.ReadBasic.All- Read all users' basic profiles
- Click Add permissions
- Important: Click Grant admin consent to activate the permissions
Creating Client Secret
- Navigate to Certificates & Secrets in the app registration
- Select the Client secrets tab
- Click New client secret
- Provide a description and select expiration period
- Click Add
- Important: Copy the secret Value immediately - it cannot be retrieved later
Connection Configuration
Configure the following fields:
- Client ID: Application ID from app registration
- Client Secret: Secret value created above
- Authorize URL: Default provided, or tenant-specific URL if not using multitenant
- Token URL: Default provided, or tenant-specific URL if not using multitenant
Tenant-Specific URLs
If the app registration is not configured as multitenant, replace the default URLs with tenant-specific versions:
- Authorize URL:
https://login.microsoftonline.com/{tenant-id}/oauth2/v2.0/authorize - Token URL:
https://login.microsoftonline.com/{tenant-id}/oauth2/v2.0/token
| Input | Notes | Example |
|---|---|---|
| Authorize URL | Provide a tenant specific OAuth 2.0 authorize endpoint. | https://login.microsoftonline.com/common/oauth2/v2.0/authorize |
| Base URL | The base URL for the Microsoft Graph API. Depending on your cloud environment, you can choose the correct one here. | https://graph.microsoft.com |
| Client ID | Client Id of your Azure application. | |
| Client Secret | Client Secret generated under 'Certificates & Secrets' in your Azure application. | |
| Scopes | Space separated OAuth 2.0 permission scopes. | Sites.ReadWrite.All Sites.Manage.All offline_access |
| Token URL | Provide a tenant specific OAuth 2.0 token endpoint. | https://login.microsoftonline.com/common/oauth2/v2.0/token |
OAuth 2.0 Client Credentials
App Registration
First, create an app registration in Microsoft Entra by following the steps in the OAuth connection guide. Then configure the following Microsoft Graph Application permissions for app only authentication:
Site Operations:
Sites.Read.All- Read items in all site collectionsSites.ReadWrite.All- Read and write items in all site collectionsSites.Manage.All- Create, edit, and delete items and lists in all site collectionsSites.FullControl.All- Full control of all site collections
File Operations:
Files.Read.All- Read files in all site collectionsFiles.ReadWrite.All- Read and write files in all site collections
List Operations:
Sites.ReadWrite.All- Required for list operationsSites.Manage.All- For creating and managing lists
User and Group Access:
User.Read.All- Read all users' profilesGroup.Read.All- Read all groups
Important: Grant admin consent for all configured permissions.
Creating Client Secret
- Navigate to Certificates & Secrets in the app registration
- Select the Client secrets tab
- Click New client secret
- Provide a description and select expiration period
- Click Add
- Important: Copy the secret Value immediately - it cannot be retrieved later
Connection Configuration
Configure the following fields:
- Tenant ID: Azure AD Directory ID from app registration
- Client ID: Application ID from app registration
- Client Secret: Secret value created above
- Scope:
https://graph.microsoft.com/.defaultfor application permissions
| Input | Notes | Example |
|---|---|---|
| Base URL | The base URL for the Microsoft Graph API. Depending on your cloud environment, you can choose the correct one here. | https://graph.microsoft.com |
| Client ID | Client Id of your Azure application. | 11111111-2222-3333-4444-555555555555 |
| Client Secret | Client Secret generated under 'Certificates & Secrets' in your Azure application. | 11111111-2222-3333-4444-555555555555 |
| Microsoft Entra ID Endpoint | The Microsoft Entra ID endpoint for the Microsoft Graph API. You can find this in the Azure portal or here. | https://login.microsoftonline.com |
| Scopes | Microsoft Graph API Scopes. | https://graph.microsoft.com/.default |
| Tenant | The tenant ID or name for the Microsoft Graph API. This is the ID or name of the tenant that you are connecting to. | 11111111-2222-3333-4444-555555555555 |
| Token URL | Provide a tenant specific OAuth 2.0 token endpoint. | {{#entraIdEndpoint}}/{{#tenant}}/oauth2/v2.0/token |
OAuth 2.0 Authorization Code
The templated OAuth flow enables user authentication with SharePoint to access data on their behalf.
App Registration
First, create an app registration in Microsoft Entra by following the steps in the OAuth connection guide.
Permissions
Configure SharePoint Delegated permissions in the app registration:
- Select all permissions required for the integration
- Grant admin consent for the organization
- Include
offline_accessscope for refresh token support
Creating Client Secret
- Navigate to Certificates & Secrets in the app registration
- Click New client secret
- Provide a description and select expiration period
- Click Add
- Copy the secret Value (not the Secret ID)
Connection Configuration
Configure the following fields:
- Client ID: Application ID from app registration
- Client Secret: Secret value created above
For non-multitenant applications, replace the default URLs:
- Authorize URL:
https://login.microsoftonline.com/{tenant-id}/oauth2/v2.0/authorize - Token URL:
https://login.microsoftonline.com/{tenant-id}/oauth2/v2.0/token
| Input | Notes | Example |
|---|---|---|
| Authorize URL | The OAuth 2.0 Authorization URL for Microsoft's Graph API. | login.microsoftonline.com/common |
| Base URL | The base URL for the Microsoft Graph API. Depending on your cloud environment, you can choose the correct one here. | https://graph.microsoft.com |
| Client ID | Client Id of your Azure application. | 11111111-2222-3333-4444-555555555555 |
| Client secret value | Client Secret generated under 'Certificates & Secrets' in your Azure application. | 11111111-2222-3333-4444-555555555555 |
| Additional Authorization Parameters | Query string parameters to append to the OAuth authorization URL. Common parameters include | prompt=consent |
| Scopes | Microsoft Graph API permission scopes are set on the OAuth application. | Sites.ReadWrite.All Sites.Manage.All offline_access |
| Tenant URL | The tenant URL for the Microsoft Graph API. This is the URL of the tenant that you are connecting to. You can find this in the Azure portal or here. | login.microsoftonline.com/common |
| Token URL | The OAuth 2.0 Token URL for Microsoft's Graph API. | login.microsoftonline.com/common |
Triggers
Drive Subscription
Receive webhook notifications from SharePoint drives. Automatically creates and manages a webhook subscription when the instance is deployed, and removes the subscription when the instance is deleted. | key: instanceDeployWebhook
| Input | Notes | Example |
|---|---|---|
| Change Type | The type of changes that should generate notifications. Common values: updated, created, deleted. | updated |
| Client State | Optional validation token sent with each notification. Use to verify notifications originate from Microsoft Graph. | client-specific string |
| Connection | The Microsoft SharePoint connection to use. | |
| Expiration Date Time | Optional expiration date/time for the subscription. If not provided, defaults to 3 days from now. Maximum is 30 days for SharePoint/OneDrive resources. | 2018-01-01T11:23:00.000Z |
| Resource | The Microsoft Graph resource path to monitor. Examples: /me/drive/root, /sites/{site-id}/drive/root, /drives/{drive-id}/root | /me/drive/root |
SharePoint supports webhook notifications through the Microsoft Graph API with automatic subscription lifecycle management. This trigger automatically creates and manages webhook subscriptions, eliminating the need for manual subscription creation and maintenance.
When an integration instance is deployed, the trigger creates a webhook subscription with Microsoft Graph. When the instance is deleted, the subscription is automatically removed. This lifecycle management ensures subscriptions stay synchronized with active integrations.
For manual webhook configuration without automatic lifecycle management, use the Webhook trigger instead.
Configuration
Configure the trigger using these inputs:
- Connection: Microsoft SharePoint connection for authentication
- Resource: The Microsoft Graph resource path to monitor for changes
- Examples:
/me/drive/root,/sites/{site-id}/drive/root,/drives/{drive-id}/root
- Examples:
- Change Type: The type of changes to monitor (created, updated, deleted)
- Client State: Optional validation token included in each notification to verify the source
- Expiration Date Time: Optional expiration for the subscription (defaults to 3 days if not provided)
- Maximum is 30 days for SharePoint/OneDrive resources
How It Works
The trigger manages webhook subscriptions through a complete lifecycle:
On Instance Deploy:
- Creates a webhook subscription using the Microsoft Graph Subscriptions API
- Subscribes to the specified resource path with the configured change types
- Sets the subscription expiration (default 3 days, maximum 30 days for SharePoint resources)
- Microsoft validates the webhook endpoint by sending a validation token
- The trigger responds with the token to complete subscription creation
On Webhook Notification:
- Microsoft posts notification payloads when monitored resources change
- The trigger validates the clientState (if configured)
- Notifications are routed to the appropriate branch for processing
On Instance Deletion:
- Automatically deletes the webhook subscription from Microsoft Graph
- Cleans up all subscription resources to prevent orphaned subscriptions
Branches
The trigger uses two branches to handle different webhook events:
URL Validation - Handles Microsoft's endpoint validation:
- Triggered when Microsoft validates the webhook endpoint during subscription creation
- Extracts the
validationTokenquery parameter - Returns the token in a plain text response (required by Microsoft)
Notification - Handles actual change notifications:
- Triggered when SharePoint sends change event payloads
- Validates clientState if configured (logs warning on mismatch)
- Passes the payload to the integration flow for processing
Returned Data
The trigger returns the raw webhook payload containing change notifications:
Example Notification Payload
{
"value": [
{
"subscriptionId": "7f105c7d-2dc5-4530-97cd-4e7ae6534c07",
"subscriptionExpirationDateTime": "2024-12-15T18:23:45.9356913Z",
"changeType": "updated",
"resource": "drives/{drive-id}/root",
"resourceData": {
"@odata.type": "#Microsoft.Graph.driveItem",
"@odata.id": "drives/{drive-id}/items/{item-id}",
"id": "{item-id}"
},
"clientState": "optional-validation-token"
}
]
}
New and Updated Drive Items
Checks for new and updated items in a specified SharePoint drive on a configured schedule. | key: drivePollingTrigger
| Input | Notes | Example |
|---|---|---|
| Connection | The Microsoft SharePoint connection to use. | |
| Drive | The unique identifier of a SharePoint drive. | b!WumF-zsD8ku93Y0QqhKM9jVTjPefo6RGrpVCkPpe547Qrf38sox_TYIFuj9sqJhv |
Checks for new and updated items in a specified SharePoint drive on a configured schedule.
This trigger monitors a single drive for file and folder changes using Microsoft Graph's delta tracking. For monitoring all drives in a site, use the New and Updated Site Items trigger. For monitoring a specific folder within a drive, use the New and Updated Folder Items trigger.
How It Works
- Run on the configured schedule (e.g., every 5 minutes)
- Query the Microsoft Graph delta endpoint for the specified drive
- Categorize items as "created", "updated", or "deleted" based on their properties and timestamps
- Maintain delta tracking state automatically to efficiently track changes between polls
The trigger uses Microsoft Graph's delta query functionality to track changes efficiently without scanning all items on each poll.
Configuration
Inputs:
- Connection: Microsoft SharePoint connection for authentication
- Drive: The unique identifier of the SharePoint drive to monitor
Returned Data
The trigger returns changes with separate arrays for created, updated, and deleted items:
Example Response
{
"data": {
"created": [
{
"id": "01BYE5RZ6QN3ZWBTUFOFD3GSPGOHDJD36K",
"name": "NewReport.xlsx",
"createdDateTime": "2024-12-09T10:30:00Z",
"lastModifiedDateTime": "2024-12-09T10:30:00Z",
"size": 25600,
"file": {
"mimeType": "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"
},
"parentReference": {
"driveId": "b!WumF-zsD8ku93Y0QqhKM9jVTjPefo6RGrpVCkPpe547Qrf38sox_TYIFuj9sqJhv",
"id": "01BYE5RZROOT",
"path": "/drive/root:"
},
"webUrl": "https://contoso.sharepoint.com/Shared Documents/NewReport.xlsx"
}
],
"updated": [
{
"id": "01BYE5RZ5MYLM2SMX75ZBIPQZIHT93ZEPC",
"name": "ProjectPlan.docx",
"createdDateTime": "2024-12-08T09:15:00Z",
"lastModifiedDateTime": "2024-12-09T14:22:00Z",
"size": 45200,
"file": {
"mimeType": "application/vnd.openxmlformats-officedocument.wordprocessingml.document"
},
"parentReference": {
"driveId": "b!WumF-zsD8ku93Y0QqhKM9jVTjPefo6RGrpVCkPpe547Qrf38sox_TYIFuj9sqJhv",
"id": "01BYE5RZROOT",
"path": "/drive/root:"
},
"webUrl": "https://contoso.sharepoint.com/Shared Documents/ProjectPlan.docx"
}
],
"deleted": [
{
"id": "01BYE5RZ7H3LGDF7C5FJHMLBN22O3ORUIX",
"deleted": {}
}
]
}
}
New and Updated Folder Items
Checks for new and updated items in a specified folder within a SharePoint drive on a configured schedule. | key: folderPollingTrigger
| Input | Notes | Example |
|---|---|---|
| Connection | The Microsoft SharePoint connection to use. | |
| Drive | The unique identifier of a SharePoint drive. | b!WumF-zsD8ku93Y0QqhKM9jVTjPefo6RGrpVCkPpe547Qrf38sox_TYIFuj9sqJhv |
| Folder ID | The ID of the folder to monitor for changes. | 01Q7VXAXZW7LCB32ODBRCKZNSJIC544FXU |
Checks for new and updated items in a specified folder within a SharePoint drive on a configured schedule.
This trigger monitors a single folder for file and folder changes using Microsoft Graph's delta tracking. For monitoring an entire drive, use the New and Updated Drive Items trigger. For monitoring all drives in a site, use the New and Updated Site Items trigger.
How It Works
- Run on the configured schedule (e.g., every 5 minutes)
- Query the Microsoft Graph delta endpoint for the specified drive
- Filter results to include only items within the specified folder (direct children or the folder itself)
- Categorize items as "created", "updated", or "deleted" based on their properties and timestamps
- Maintain delta tracking state automatically to efficiently track changes between polls
The trigger uses Microsoft Graph's delta query functionality to track changes efficiently. Although delta queries operate at the drive level, this trigger filters results to return only changes within the specified folder.
Configuration
Inputs:
- Connection: Microsoft SharePoint connection for authentication
- Drive: The unique identifier of the SharePoint drive containing the folder
- Folder ID: The unique identifier of the folder to monitor for changes
Returned Data
The trigger returns changes with separate arrays for created, updated, and deleted items:
Example Response
{
"data": {
"created": [
{
"id": "01BYE5RZ6QN3ZWBTUFOFD3GSPGOHDJD36K",
"name": "NewReport.xlsx",
"createdDateTime": "2024-12-09T10:30:00Z",
"lastModifiedDateTime": "2024-12-09T10:30:00Z",
"size": 25600,
"file": {
"mimeType": "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"
},
"parentReference": {
"driveId": "b!WumF-zsD8ku93Y0QqhKM9jVTjPefo6RGrpVCkPpe547Qrf38sox_TYIFuj9sqJhv",
"id": "01BYE5RZ5MYLM2SMX75ZBIPQZIHT93ZEPC",
"path": "/drive/root:/Reports"
},
"webUrl": "https://contoso.sharepoint.com/Shared Documents/Reports/NewReport.xlsx"
}
],
"updated": [
{
"id": "01BYE5RZ5MYLM2SMX75ZBIPQZIHT93ZEPC",
"name": "Reports",
"createdDateTime": "2024-11-01T08:00:00Z",
"lastModifiedDateTime": "2024-12-09T10:30:00Z",
"folder": {
"childCount": 5
},
"parentReference": {
"driveId": "b!WumF-zsD8ku93Y0QqhKM9jVTjPefo6RGrpVCkPpe547Qrf38sox_TYIFuj9sqJhv",
"id": "01BYE5RZROOT",
"path": "/drive/root:"
},
"webUrl": "https://contoso.sharepoint.com/Shared Documents/Reports"
}
],
"deleted": [
{
"id": "01BYE5RZ7H3LGDF7C5FJHMLBN22O3ORUIX",
"deleted": {}
}
]
}
}
New and Updated Site Items
Checks for new and updated items across all drives in a SharePoint site on a configured schedule. | key: pollSiteChanges
| Input | Notes | Example |
|---|---|---|
| Connection | The Microsoft SharePoint connection to use. | |
| Site Id | The unique identifier of a SharePoint site. | example.sharepoint.com,c45de8832-a4969-479d-aeb2-7nAh8321,48bf81d7-2d37-40a9-b47b-c1d1960d00f87 |
Checks for new and updated items across all drives in a SharePoint site on a configured schedule.
This trigger monitors all drives within a site for file and folder changes using Microsoft Graph's delta tracking. For monitoring a specific drive or folder, use the New and Updated Drive Items or New and Updated Folder Items triggers instead.
How It Works
- Run on the configured schedule (e.g., every 5 minutes)
- Retrieve all drives in the specified SharePoint site
- For each drive, query the Microsoft Graph delta endpoint to detect changes
- Categorize items as "created", "updated", or "deleted" based on their properties and timestamps
- Maintain delta tracking state automatically for each drive to efficiently track changes between polls
The trigger uses Microsoft Graph's delta query functionality to track changes efficiently without scanning all items on each poll.
Configuration
Inputs:
- Connection: Microsoft SharePoint connection for authentication
- Site Id: The unique identifier of the SharePoint site to monitor
Returned Data
The trigger returns changes grouped by drive name, with separate arrays for created, updated, and deleted items:
Example Response
{
"data": {
"Documents": {
"created": [
{
"id": "01BYE5RZ6QN3ZWBTUFOFD3GSPGOHDJD36K",
"name": "NewReport.xlsx",
"createdDateTime": "2024-12-09T10:30:00Z",
"lastModifiedDateTime": "2024-12-09T10:30:00Z",
"size": 25600,
"webUrl": "https://contoso.sharepoint.com/sites/TeamSite/Documents/NewReport.xlsx"
}
],
"updated": [
{
"id": "01BYE5RZ5MYLM2SMX75ZBIPQZIHT93ZEPC",
"name": "ProjectPlan.docx",
"createdDateTime": "2024-12-08T09:15:00Z",
"lastModifiedDateTime": "2024-12-09T14:22:00Z",
"size": 45200,
"webUrl": "https://contoso.sharepoint.com/sites/TeamSite/Documents/ProjectPlan.docx"
}
],
"deleted": [
{
"id": "01BYE5RZ7H3LGDF7C5FJHMLBN22O3ORUIX",
"deleted": {}
}
]
},
"Archive": {
"created": [],
"updated": [
{
"id": "01BYE5RZ2OWGDLHOQ2JBHYOJH7CJEQK234",
"name": "Archive2024.zip",
"createdDateTime": "2024-11-15T08:00:00Z",
"lastModifiedDateTime": "2024-12-09T11:05:00Z",
"size": 1048576,
"webUrl": "https://contoso.sharepoint.com/sites/TeamSite/Archive/Archive2024.zip"
}
],
"deleted": []
}
}
}
Webhook
Receive and validate webhook requests from SharePoint for manually configured webhook subscriptions. | key: webhook
SharePoint supports webhook notifications that can be manually configured using the Microsoft Graph API. This trigger receives and processes webhook requests from SharePoint, handling both URL validation and notification events.
For automatic webhook subscription management (recommended for most use cases), use the Drive Subscription trigger instead, which creates and manages subscriptions automatically.
Configuration
Configure SharePoint webhooks manually using the Microsoft Graph Subscriptions API:
- Create a subscription using the Graph API by sending a POST request to
/subscriptions - Specify the resource to monitor (e.g.,
/sites/{siteId}/lists/{listId}) - Set the
notificationUrlto the webhook URL provided by the integration instance - Include desired change types (created, updated, deleted)
- Set an expiration date/time (maximum 6 months for most SharePoint resources)
How It Works
The trigger processes incoming webhook requests on two branches:
URL Validation - When Microsoft validates the webhook endpoint:
- Microsoft sends a validation request with a
validationTokenquery parameter - The trigger extracts the token and returns it in a plain text response
- This occurs during subscription creation and is required by Microsoft
Notification - When SharePoint sends change notifications:
- Microsoft posts notification payloads containing change events
- The trigger passes the payload to the integration flow for processing
- Notifications include resource changes based on the subscription configuration
Returned Data
The trigger returns the raw webhook payload, which varies based on the subscribed resource and change types:
Example Notification Payload
{
"value": [
{
"subscriptionId": "7f105c7d-2dc5-4530-97cd-4e7ae6534c07",
"subscriptionExpirationDateTime": "2024-12-15T18:23:45.9356913Z",
"changeType": "updated",
"resource": "sites/{siteId}/lists/{listId}",
"resourceData": {
"@odata.type": "#Microsoft.Graph.List",
"@odata.id": "sites/{siteId}/lists/{listId}",
"id": "{listId}"
},
"clientState": "optional-client-state-value"
}
]
}
Data Sources
List Drives from Source
A picklist of files in a given directory | key: listDrives | type: picklist
| Input | Notes | Example |
|---|---|---|
| Connection | The Microsoft SharePoint connection to use. | |
| Directory | The Graph API path to list resources from. Replace {siteId} or {driveId} with relevant ID values. https://learn.microsoft.com/en-us/graph/api/drive-list?view=graph-rest-1.0&tabs=http | Drives: /sites/{siteId}/drives - Folders: /drives/{driveId}/root/children |
List Folders from Source
A picklist of folders in a given directory | key: listFolders | type: picklist
| Input | Notes | Example |
|---|---|---|
| Connection | The Microsoft SharePoint connection to use. | |
| Directory | The Graph API path to list resources from. Replace {siteId} or {driveId} with relevant ID values. https://learn.microsoft.com/en-us/graph/api/drive-list?view=graph-rest-1.0&tabs=http | Drives: /sites/{siteId}/drives - Folders: /drives/{driveId}/root/children |
List Items in Site List
A picklist of items in a given site list | key: listItemsInSiteList | type: picklist
| Input | Notes | Example |
|---|---|---|
| Connection | The Microsoft SharePoint connection to use. | |
| List Id | The unique identifier of a SharePoint site list. | 48bf81d7-2d37-40a9-b47b-c1d1960d00f87 |
| Site Id | The unique identifier of a SharePoint site. | example.sharepoint.com,c45de8832-a4969-479d-aeb2-7nAh8321,48bf81d7-2d37-40a9-b47b-c1d1960d00f87 |
List Sites from Sharepoint
A picklist of Sites | key: listSites | type: picklist
| Input | Notes | Example |
|---|---|---|
| Connection | The Microsoft SharePoint connection to use. |
List Subscriptions
A picklist of subscriptions | key: listSubscriptions | type: picklist
| Input | Notes | Example |
|---|---|---|
| Connection | The Microsoft SharePoint connection to use. |
Actions
Check Item Exists
Check if a file or folder exists in a SharePoint drive | key: checkItemExists
| Input | Notes | Example |
|---|---|---|
| Connection | The Microsoft SharePoint connection to use. | |
| Drive | Provide the id of the drive to check the item in. | b!WumF-zsD8ku93Y0QqhKM9jVTjPefo6RGrpVCkPpe547Qrf38sox_TYIFuj9sqJhv |
| Item Path | Provide the path to the file or folder, relative to the drive root. | MyFolder/example.txt |
| Site Id | Provide the id of the site to check the item in. | example.sharepoint.com,c45de8832-a4969-479d-aeb2-7nAh8321,48bf81d7-2d37-40a9-b47b-c1d1960d00f87 |
{
"data": {
"exists": true,
"message": "Item \"MyFolder\" exists in the specified drive",
"item": {
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#Collection(driveItem)/$entity",
"createdBy": {
"user": {
"email": "User@example.com",
"id": "00000000-0000-0000-0000-000000000001",
"displayName": "Example User"
}
},
"createdDateTime": "2025-06-11T22:08:54Z",
"eTag": "\"{DRIVE-ITEM-ETAG},2\"",
"id": "ITEM-ID-001",
"lastModifiedBy": {
"user": {
"email": "User@example.com",
"id": "00000000-0000-0000-0000-000000000001",
"displayName": "Example User"
}
},
"lastModifiedDateTime": "2025-06-12T23:48:54Z",
"name": "MyFolder",
"parentReference": {
"driveType": "documentLibrary",
"driveId": "DRIVE-ID-001",
"id": "ITEM-ID-002",
"name": "Shared Documents",
"path": "/drives/DRIVE-ID-001/root:",
"siteId": "SITE-ID-001"
},
"webUrl": "https://example.sharepoint.com/sites/ExampleSite/Shared%20Documents/MyFolder",
"cTag": "\"c:{DRIVE-ITEM-CTAG},0\"",
"fileSystemInfo": {
"createdDateTime": "2025-06-11T22:08:54Z",
"lastModifiedDateTime": "2025-06-12T23:48:54Z"
},
"folder": {
"childCount": 2
},
"shared": {
"scope": "users"
},
"size": 46758
}
}
}
Create a Folder
Create a Folder in a Drive | key: createFolder
| Input | Notes | Example |
|---|---|---|
| Connection | The Microsoft SharePoint connection to use. | |
| Drive | Provide the id of the drive to create the folder in. | b!WumF-zsD8ku93Y0QqhKM9jVTjPefo6RGrpVCkPpe547Qrf38sox_TYIFuj9sqJhv |
| Folder Name | Provide the name of the new folder. | MyFolder |
| Parent Item Id | Provide the id of the parent element to create the folder in. | root |
| Site Id | Provide the id of the site to create the folder in. | example.sharepoint.com,c45de8832-a4969-479d-aeb2-7nAh8321,48bf81d7-2d37-40a9-b47b-c1d1960d00f87 |
{
"data": {
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#sites('example.sharepoint.com%2Cexample-site-id%2Cexample-web-id')/drives('b%21exampleDriveId')/items('root')/children/$entity",
"@odata.etag": "\"{EXAMPLE-ETAG-ID},1\"",
"createdDateTime": "2025-06-12T22:28:24Z",
"eTag": "\"{EXAMPLE-ETAG-ID},1\"",
"id": "exampleItemId123456",
"lastModifiedDateTime": "2025-06-12T22:28:24Z",
"name": "NewFolder",
"size": 0,
"webUrl": "https://example.sharepoint.com/sites/ExampleSite/Shared%20Documents/NewFolder",
"cTag": "\"c:{EXAMPLE-ETAG-ID},0\"",
"commentSettings": {
"commentingDisabled": {
"isDisabled": false
}
},
"createdBy": {
"application": {
"displayName": "ExampleApp",
"id": "example-app-id-1234"
},
"user": {
"displayName": "Example User",
"email": "example.user@example.com",
"id": "example-user-id-1234"
}
},
"lastModifiedBy": {
"application": {
"displayName": "ExampleApp",
"id": "example-app-id-1234"
},
"user": {
"displayName": "Example User",
"email": "example.user@example.com",
"id": "example-user-id-1234"
}
},
"parentReference": {
"driveId": "b!exampleDriveId",
"driveType": "documentLibrary",
"id": "exampleParentItemId123456",
"path": "/drives/b!exampleDriveId/root:",
"sharepointIds": {
"listId": "example-list-id-1234",
"listItemUniqueId": "example-list-item-id-1234",
"siteId": "example-site-id-1234",
"siteUrl": "https://example.sharepoint.com/sites/ExampleSite",
"tenantId": "example-tenant-id-1234",
"webId": "example-web-id-1234"
}
},
"fileSystemInfo": {
"createdDateTime": "2025-06-12T22:28:24Z",
"lastModifiedDateTime": "2025-06-12T22:28:24Z"
},
"folder": {
"childCount": 0
},
"shared": {
"scope": "unknown"
}
}
}
Create a Subscription
Create a Subscription to notify you of changes to a resource | key: createSubscription
| Input | Notes | Example |
|---|---|---|
| Allow Duplicates | When true, allows creating multiple subscriptions for the same endpoint. | false |
| Change Type | The type of changes that should generate notifications. Common values: updated, created, deleted. | updated |
| Client State | An optional validation token included in each notification to verify the notification source. | client-specific string |
| Connection | The Microsoft SharePoint connection to use. | |
| Expiration Date Time | The date and time when the subscription will expire if not updated or renewed. | 2018-01-01T11:23:00.000Z |
| Notification URL | The URL where Microsoft Graph will deliver webhook notifications when changes occur. | https://contoso.azurewebsites.net/api/webhook-receiver |
| Resource | The Microsoft Graph resource path to monitor for changes. | /me/drive/root |
{
"data": {
"id": "38031b7d-16b1-448a-8e68-68b8aec62315",
"resource": "/me/drive/root",
"changeType": "updated",
"clientState": "client-specific-string",
"notificationUrl": "https://hooks.example.com/trigger/SW5z",
"expirationDateTime": "2025-12-12T11:23:00.0000000Z",
"creatorId": "6219df3c-04d4-4b39-b2a4-ad162a5dcb8f",
"latestSupportedTlsVersion": "v1_2"
}
}
Create Item in Site List
Create a new item inside the given site list | key: createItemInSite
| Input | Notes | Example |
|---|---|---|
| Connection | The Microsoft SharePoint connection to use. | |
| Fields | Key-value pairs to set as properties on the drive item. Each key represents a field name and its corresponding value. | |
| List Id | The unique identifier of a SharePoint site list. | 48bf81d7-2d37-40a9-b47b-c1d1960d00f87 |
| Site Id | The unique identifier of a SharePoint site. | example.sharepoint.com,c45de8832-a4969-479d-aeb2-7nAh8321,48bf81d7-2d37-40a9-b47b-c1d1960d00f87 |
{
"data": {
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#sites('example.sharepoint.com%2Ca1b2c3d4-e5f6-7890-abcd-ef1234567890%2Cf1e2d3c4-b5a6-7890-1234-567890abcdef')/lists('f1e2d3c4-b5a6-7890-1234-567890abcdef')/items/$entity",
"@odata.etag": "\"a1b2c3d4-e5f6-7890-abcd-ef1234567890,1\"",
"id": "15",
"createdDateTime": "2025-12-09T16:30:00Z",
"lastModifiedDateTime": "2025-12-09T16:30:00Z",
"webUrl": "https://example.sharepoint.com/sites/ExampleSite/Lists/ProjectTasks/15_.000",
"fields": {
"@odata.etag": "\"a1b2c3d4-e5f6-7890-abcd-ef1234567890,1\"",
"id": "15",
"Title": "Prepare presentation",
"Status": "Not Started",
"AssignedTo": "jane.smith@example.com",
"DueDate": "2025-12-18T00:00:00Z"
}
}
}
Create Site List Subscription
Create a Site List subscription for Microsoft SharePoint | key: createSiteListSubscription
| Input | Notes | Example |
|---|---|---|
| Allow Duplicates | Enable to allow more than one webhook per endpoint | false |
| Connection | The Microsoft SharePoint connection to use. | |
| Expiration Date/Time | Expiration date/time for subscription. If unspecified the default will be the current date/time plus 29 days (close to the maximum permitted by the Graph API). | |
| List Id | The unique identifier of a SharePoint site list. | 48bf81d7-2d37-40a9-b47b-c1d1960d00f87 |
| Notification URL | URL to send events of this Subscription to | |
| Site Id | The unique identifier of a SharePoint site. | example.sharepoint.com,c45de8832-a4969-479d-aeb2-7nAh8321,48bf81d7-2d37-40a9-b47b-c1d1960d00f87 |
{
"data": {
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#subscriptions/$entity",
"id": "e9d5b726-4478-4412-bfba-268530484566",
"resource": "sites/example.sharepoint.com,17cd4ada-1a76-420e-a7ec-4adaa3327c86,87742bc7-2d2f-404c-8255-d3d9fa9a6561/lists/3a3c0f6a-86da-4567-94d4-3b939da63200",
"applicationId": "e76615c0-13e3-4cd2-8235-a2d628ad13de",
"changeType": "updated",
"clientState": null,
"notificationUrl": "https://example.com/webhook/",
"notificationQueryOptions": null,
"lifecycleNotificationUrl": null,
"expirationDateTime": "2022-11-22T23:32:10.231Z",
"creatorId": "c8edbeda-c453-446c-91ce-c6d5c7310a6c",
"includeResourceData": null,
"latestSupportedTlsVersion": "v1_2",
"encryptionCertificate": null,
"encryptionCertificateId": null,
"notificationUrlAppId": null
}
}
Delete a Subscription
Delete a Subscription by ID | key: deleteSubscription
| Input | Notes | Example |
|---|---|---|
| Connection | The Microsoft SharePoint connection to use. | |
| Subscription Id | The unique identifier of the subscription to manage. | 48bf81d7-2d37-40a9-b47b-c1d1960d00f87 |
{
"data": {}
}
Delete All Instance Subscriptions
Delete all SharePoint subscriptions pointed at this instance | key: deleteAllInstanceSubscriptions
| Input | Notes | Example |
|---|---|---|
| Connection | The Microsoft SharePoint connection to use. | |
| Notification URL | The notification URL used when creating subscriptions for this instance. Only subscriptions with this URL will be deleted. If not provided, all subscriptions for this flow will be deleted. | https://contoso.azurewebsites.net/api/webhook-receiver |
{
"data": {
"subscriptionsRemoved": [
"38031b7d-16b1-448a-8e68-68b8aec62315",
"a1b2c3d4-5678-90ab-cdef-1234567890ab"
],
"count": 2
}
}
Download File
Download a file from the specified drive | key: downloadFile
| Input | Notes | Example |
|---|---|---|
| Connection | The Microsoft SharePoint connection to use. | |
| Drive | The unique identifier of a SharePoint drive. | b!WumF-zsD8ku93Y0QqhKM9jVTjPefo6RGrpVCkPpe547Qrf38sox_TYIFuj9sqJhv |
| Item Id | The unique identifier of a SharePoint item. | 01Q7VXROAW7LCB32ODBRCKZNSJIC544XAQ |
Get Current User
Get the information and metadata of the user that is currently logged in | key: getCurrentUser
| Input | Notes | Example |
|---|---|---|
| Connection | The Microsoft SharePoint connection to use. |
{
"data": {
"businessPhones": [
"+1 555 555 5555"
],
"displayName": "exampleUser",
"givenName": "exampleUser",
"jobTitle": "Retail Manager",
"mail": "someoneV@example.onmicrosoft.com",
"mobilePhone": "+1 555 555 5555",
"officeLocation": "example",
"preferredLanguage": "en-US",
"surname": "Example",
"id": "3693-4789-a1c3-f4de565f"
}
}
Get Drive
Returns the information and metadata of a SharePoint drive | key: getDrive
| Input | Notes | Example |
|---|---|---|
| Connection | The Microsoft SharePoint connection to use. | |
| Drive | The unique identifier of a SharePoint drive. | b!WumF-zsD8ku93Y0QqhKM9jVTjPefo6RGrpVCkPpe547Qrf38sox_TYIFuj9sqJhv |
Get File
Get a file from a Drive | key: getFile
| Input | Notes | Example |
|---|---|---|
| Connection | The Microsoft SharePoint connection to use. | |
| Drive | The unique identifier of a SharePoint drive. | b!WumF-zsD8ku93Y0QqhKM9jVTjPefo6RGrpVCkPpe547Qrf38sox_TYIFuj9sqJhv |
| Item Id | The unique identifier of a SharePoint item. | 01Q7VXROAW7LCB32ODBRCKZNSJIC544XAQ |
Get Item from Site List
Returns the information and metadata of the given item | key: getItemInSite
| Input | Notes | Example |
|---|---|---|
| Connection | The Microsoft SharePoint connection to use. | |
| Item Id | The unique identifier of a SharePoint item. | 01Q7VXROAW7LCB32ODBRCKZNSJIC544XAQ |
| List Id | The unique identifier of a SharePoint site list. | 48bf81d7-2d37-40a9-b47b-c1d1960d00f87 |
| Opt In Fields | Comma-separated list of fields to return. Overrides the default result set. | name, description, id |
| Site Id | The unique identifier of a SharePoint site. | example.sharepoint.com,c45de8832-a4969-479d-aeb2-7nAh8321,48bf81d7-2d37-40a9-b47b-c1d1960d00f87 |
{
"data": {
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#sites('example.sharepoint.com%2Ca1b2c3d4-e5f6-7890-abcd-ef1234567890%2Cf1e2d3c4-b5a6-7890-1234-567890abcdef')/lists('f1e2d3c4-b5a6-7890-1234-567890abcdef')/items/$entity",
"@odata.etag": "\"a1b2c3d4-e5f6-7890-abcd-ef1234567890,3\"",
"id": "5",
"createdDateTime": "2025-12-08T10:30:00Z",
"lastModifiedDateTime": "2025-12-09T14:15:00Z",
"webUrl": "https://example.sharepoint.com/sites/ExampleSite/Lists/ProjectTasks/5_.000",
"fields": {
"@odata.etag": "\"a1b2c3d4-e5f6-7890-abcd-ef1234567890,3\"",
"id": "5",
"Title": "Review Q4 metrics",
"Status": "Completed",
"AssignedTo": "john.doe@example.com",
"DueDate": "2025-12-09T00:00:00Z",
"CompletedDate": "2025-12-09T14:15:00Z"
}
}
}
Get Root Site
Returns the information and metadata of the root SharePoint site in your tenant | key: getRootSite
| Input | Notes | Example |
|---|---|---|
| Connection | The Microsoft SharePoint connection to use. |
{
"data": {
"description": "Example description",
"id": "example.sharepoint.com,c45e332-a998-479d-aeb2-2a",
"name": "Example SharePoint Site",
"webUrl": "https://example.sharepoint.com",
"displayName": "Communication Site",
"siteCollection": {
"hostname": "https://example.sharepoint.com"
}
}
}
Get Site
Returns the information and metadata of the given SharePoint site | key: getSite
| Input | Notes | Example |
|---|---|---|
| Connection | The Microsoft SharePoint connection to use. | |
| Site Id | The unique identifier of a SharePoint site. | example.sharepoint.com,c45de8832-a4969-479d-aeb2-7nAh8321,48bf81d7-2d37-40a9-b47b-c1d1960d00f87 |
{
"data": {
"description": "Example description",
"id": "example.sharepoint.com,c45e332-a998-479d-aeb2-2a",
"name": "Example SharePoint Site",
"webUrl": "https://example.sharepoint.com",
"displayName": "Communication Site",
"siteCollection": {
"hostname": "https://example.sharepoint.com"
}
}
}
Get Site List
Returns the information and metadata of an existing site list | key: getList
| Input | Notes | Example |
|---|---|---|
| Connection | The Microsoft SharePoint connection to use. | |
| List Id | The unique identifier of a SharePoint site list. | 48bf81d7-2d37-40a9-b47b-c1d1960d00f87 |
| Site Id | The unique identifier of a SharePoint site. | example.sharepoint.com,c45de8832-a4969-479d-aeb2-7nAh8321,48bf81d7-2d37-40a9-b47b-c1d1960d00f87 |
{
"data": {
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#sites('example.sharepoint.com%2Ca1b2c3d4-e5f6-7890-abcd-ef1234567890%2Cf1e2d3c4-b5a6-7890-1234-567890abcdef')/lists/$entity",
"@odata.etag": "\"a1b2c3d4-e5f6-7890-abcd-ef1234567890,3\"",
"id": "f1e2d3c4-b5a6-7890-1234-567890abcdef",
"displayName": "Project Tasks",
"name": "ProjectTasks",
"createdDateTime": "2025-06-15T08:30:00Z",
"lastModifiedDateTime": "2025-12-09T10:15:00Z",
"webUrl": "https://example.sharepoint.com/sites/ExampleSite/Lists/ProjectTasks",
"list": {
"contentTypesEnabled": true,
"hidden": false,
"template": "genericList"
},
"columns": [
{
"name": "Title",
"displayName": "Title",
"required": true,
"text": {
"allowMultipleLines": false,
"appendChangesToExistingText": false,
"linesForEditing": 0,
"maxLength": 255
}
},
{
"name": "Status",
"displayName": "Status",
"required": false,
"choice": {
"allowTextEntry": false,
"choices": [
"Not Started",
"In Progress",
"Completed"
],
"displayAs": "dropDownMenu"
}
}
]
}
}
List Changes
Track changes in a driveItem and its children over time. | key: listChanges
| Input | Notes | Example |
|---|---|---|
| $expand Parameter | Retrieves related resources. https://learn.microsoft.com/en-us/graph/query-parameters?tabs=http#expand-parameter | members |
| $select Parameter | Filters properties (columns). https://learn.microsoft.com/en-us/graph/query-parameters?tabs=http#select-parameter | givenName,surname |
| $top Parameter | Sets the page size of results. https://learn.microsoft.com/en-us/graph/query-parameters?tabs=http#top-parameter | 5 |
| Connection | The Microsoft SharePoint connection to use. | |
| URL to fetch for delta | The URL to track changes in a driveItem and its children over time. You can also paste the @odata.nextLink or @odata.deltaLink from a previous response to resume tracking changes. | /drives/{drive-id}/root/delta |
| Fetch All | When true, retrieves all results by automatically following pagination. | false |
{
"data": {
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#Collection(driveItem)",
"@odata.deltaLink": "https://graph.microsoft.com/v1.0/drives/b!ExampleDriveId/root/delta?token=MzslMjM0OyUyMzE7MDslMjM",
"value": [
{
"id": "01EXAMPLENEWITEMID1234567890",
"name": "NewReport.xlsx",
"createdDateTime": "2025-12-09T14:30:00Z",
"lastModifiedDateTime": "2025-12-09T14:30:00Z",
"size": 45678,
"webUrl": "https://example.sharepoint.com/sites/ExampleSite/Shared%20Documents/NewReport.xlsx",
"file": {
"mimeType": "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
"hashes": {
"quickXorHash": "ExampleHashValue123=="
}
},
"parentReference": {
"driveId": "b!ExampleDriveId123456789",
"id": "01EXAMPLEPARENTID",
"path": "/drives/b!ExampleDriveId123456789/root:"
}
},
{
"id": "01EXAMPLEUPDATEDITEM987654321",
"name": "UpdatedPresentation.pptx",
"createdDateTime": "2025-12-01T10:00:00Z",
"lastModifiedDateTime": "2025-12-09T16:45:00Z",
"size": 234567,
"webUrl": "https://example.sharepoint.com/sites/ExampleSite/Shared%20Documents/UpdatedPresentation.pptx",
"file": {
"mimeType": "application/vnd.openxmlformats-officedocument.presentationml.presentation",
"hashes": {
"quickXorHash": "UpdatedHashValue456=="
}
},
"parentReference": {
"driveId": "b!ExampleDriveId123456789",
"id": "01EXAMPLEPARENTID",
"path": "/drives/b!ExampleDriveId123456789/root:"
}
}
]
}
}
List Drives
List all drives within any given SharePoint site | key: listDrives
| Input | Notes | Example |
|---|---|---|
| Connection | The Microsoft SharePoint connection to use. | |
| Fetch All | When true, retrieves all results by automatically following pagination. | false |
| Page Limit | The maximum number of results to return per page. | 100 |
| Page Token | The token for the desired page from a previous response. | X%2744537079ghv |
| Site Id | The unique identifier of a SharePoint site. | example.sharepoint.com,c45de8832-a4969-479d-aeb2-7nAh8321,48bf81d7-2d37-40a9-b47b-c1d1960d00f87 |
{
"data": {
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#drives",
"value": [
{
"createdDateTime": "2025-06-14T05:14:52Z",
"description": "",
"id": "b!o2UaIfdNxk-5091VjGz1sDVso2efo6RGrpVCkPpe547Qrf38sox_TYIFuj9QrJhv",
"lastModifiedDateTime": "2025-12-09T08:30:00Z",
"name": "Documents",
"webUrl": "https://example.sharepoint.com/Shared%20Documents",
"driveType": "documentLibrary",
"createdBy": {
"user": {
"displayName": "System Account"
}
},
"owner": {
"group": {
"id": "9705118a-6ce1-4fa3-adba-09f94b69d568",
"displayName": "Example Team Site Owners"
}
},
"quota": {
"deleted": 0,
"remaining": 27487789251101,
"state": "normal",
"total": 27487790694400,
"used": 1443299
}
}
]
}
}
List Files in Drive
List all the files from a Drive | key: getFilesFromDriveWithPagination
| Input | Notes | Example |
|---|---|---|
| Connection | The Microsoft SharePoint connection to use. | |
| Drive | The unique identifier of a SharePoint drive. | b!WumF-zsD8ku93Y0QqhKM9jVTjPefo6RGrpVCkPpe547Qrf38sox_TYIFuj9sqJhv |
| Fetch All | When true, retrieves all results by automatically following pagination. | false |
| Page Limit | The maximum number of results to return per page. | 100 |
| Page Token | The token for the desired page from a previous response. | X%2744537079ghv |
| Recursive | When true, returns files from all subfolders in addition to the specified folder. | false |
List Files in Drive (Deprecated)
List all the files from a Drive. This version of the action is being deprecated. Please replace action with List Files In Drive. | key: getFilesFromDrive
| Input | Notes | Example |
|---|---|---|
| Connection | The Microsoft SharePoint connection to use. | |
| Drive | The unique identifier of a SharePoint drive. | b!WumF-zsD8ku93Y0QqhKM9jVTjPefo6RGrpVCkPpe547Qrf38sox_TYIFuj9sqJhv |
List Folder Files in Drive
List all the files inside of a folder from a Drive | key: getFilesFromDriveFolderWithPagination
| Input | Notes | Example |
|---|---|---|
| Connection | The Microsoft SharePoint connection to use. | |
| Drive | The unique identifier of a SharePoint drive. | b!WumF-zsD8ku93Y0QqhKM9jVTjPefo6RGrpVCkPpe547Qrf38sox_TYIFuj9sqJhv |
| Fetch All | When true, retrieves all results by automatically following pagination. | false |
| Folder ID | The unique identifier of a SharePoint folder. Leave empty to use root folder. | 01Q7VXAXZW7LCB32ODBRCKZNSJIC544FXU |
| Page Limit | The maximum number of results to return per page. | 100 |
| Page Token | The token for the desired page from a previous response. | X%2744537079ghv |
List Folder Files in Drive (Deprecated)
List all the files inside of a folder from a Drive. This version of the action is being deprecated. Please replace action with List Folder Files In Drive. | key: getFilesFromDriveFolder
| Input | Notes | Example |
|---|---|---|
| Connection | The Microsoft SharePoint connection to use. | |
| Drive | The unique identifier of a SharePoint drive. | b!WumF-zsD8ku93Y0QqhKM9jVTjPefo6RGrpVCkPpe547Qrf38sox_TYIFuj9sqJhv |
| Folder ID | The unique identifier of a SharePoint folder. Leave empty to use root folder. | 01Q7VXAXZW7LCB32ODBRCKZNSJIC544FXU |
List Followed Sites
List all Followed Sites | key: listFollowedSites
| Input | Notes | Example |
|---|---|---|
| Connection | The Microsoft SharePoint connection to use. | |
| Fetch All | When true, retrieves all results by automatically following pagination. | false |
| Page Limit | The maximum number of results to return per page. | 100 |
| Page Token | The token for the desired page from a previous response. | X%2744537079ghv |
{
"data": {
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#sites",
"value": [
{
"displayName": "Example",
"id": "example.sharepoint.com,6c44888f-5883-4ef0-c542-d21a802cfea6,ed2d5d06-e192-4047-afa6-a5d7f25b3418",
"sharepointIds": {
"siteId": "6c44888f-5883-4ef0-c542-d21a802cfea6",
"webId": "ed2d5d06-e192-4047-afa6-a5d7f25b3418"
},
"siteCollection": {
"hostname": "example.sharepoint.com"
},
"webUrl": "https://example.sharepoint.com/sites/Example"
}
]
}
}
List Items
List Items in a Folder | key: listItems
| Input | Notes | Example |
|---|---|---|
| Connection | The Microsoft SharePoint connection to use. | |
| Drive | Provide the id of the drive to list the items in. | b!WumF-zsD8ku93Y0QqhKM9jVTjPefo6RGrpVCkPpe547Qrf38sox_TYIFuj9sqJhv |
| Folder ID | Provide the id of the folder to list the items in. | 01Q7VXAXZW7LCB32ODBRCKZNSJIC544FXU |
{
"data": {
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#Collection(driveItem)",
"value": [
{
"@microsoft.graph.downloadUrl": "https://example.sharepoint.com/sites/ExampleSite/_layouts/15/download.aspx?UniqueId=example-unique-id&Translate=false&tempauth=example-auth-token&ApiVersion=2.0",
"createdBy": {
"user": {
"email": "example.user@example.onmicrosoft.com",
"id": "00000000-0000-0000-0000-000000000000",
"displayName": "Example User"
}
},
"createdDateTime": "2025-06-12T23:24:20Z",
"eTag": "\"{EXAMPLE-ID},5\"",
"id": "EXAMPLE-FILE-ID-12345",
"lastModifiedBy": {
"user": {
"email": "example.user@example.onmicrosoft.com",
"id": "00000000-0000-0000-0000-000000000000",
"displayName": "Example User"
}
},
"lastModifiedDateTime": "2025-06-12T23:24:49Z",
"name": "example-file.docx",
"parentReference": {
"driveType": "documentLibrary",
"driveId": "b!ExampleDriveId123456789",
"id": "EXAMPLE-FOLDER-ID-12345",
"name": "ExampleFolder",
"path": "/drives/b!ExampleDriveId123456789/root:/ExampleFolder",
"siteId": "00000000-0000-0000-0000-000000000000"
},
"webUrl": "https://example.sharepoint.com/sites/ExampleSite/_layouts/15/Doc.aspx?sourcedoc=%7BEXAMPLE-ID%7D&file=example-file.docx&action=default&mobileredirect=true",
"cTag": "\"c:{EXAMPLE-ID},7\"",
"file": {
"hashes": {
"quickXorHash": "ExampleHashBase64=="
},
"mimeType": "application/vnd.openxmlformats-officedocument.wordprocessingml.document"
},
"fileSystemInfo": {
"createdDateTime": "2025-06-12T23:24:20Z",
"lastModifiedDateTime": "2025-06-12T23:24:49Z"
},
"shared": {
"scope": "users"
},
"size": 19802
}
]
}
}
List Items in Site List
Return all items inside the given site list | key: getListItemsInSite
| Input | Notes | Example |
|---|---|---|
| Connection | The Microsoft SharePoint connection to use. | |
| List Id | The unique identifier of a SharePoint site list. | 48bf81d7-2d37-40a9-b47b-c1d1960d00f87 |
| Opt In Fields | Comma-separated list of fields to return. Overrides the default result set. | name, description, id |
| Page Limit | The maximum number of results to return per page. | 100 |
| Page Token | The token for the desired page from a previous response. | X%2744537079ghv |
| Site Id | The unique identifier of a SharePoint site. | example.sharepoint.com,c45de8832-a4969-479d-aeb2-7nAh8321,48bf81d7-2d37-40a9-b47b-c1d1960d00f87 |
{
"data": {
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#sites('example.sharepoint.com%2Ca1b2c3d4-e5f6-7890-abcd-ef1234567890%2Cf1e2d3c4-b5a6-7890-1234-567890abcdef')/lists('f1e2d3c4-b5a6-7890-1234-567890abcdef')/items",
"value": [
{
"@odata.etag": "\"a1b2c3d4-e5f6-7890-abcd-ef1234567890,1\"",
"id": "1",
"createdDateTime": "2025-12-01T09:00:00Z",
"lastModifiedDateTime": "2025-12-09T11:30:00Z",
"webUrl": "https://example.sharepoint.com/sites/ExampleSite/Lists/ProjectTasks/1_.000",
"fields": {
"@odata.etag": "\"a1b2c3d4-e5f6-7890-abcd-ef1234567890,1\"",
"id": "1",
"Title": "Design new homepage",
"Status": "In Progress",
"AssignedTo": "john.doe@example.com",
"DueDate": "2025-12-15T00:00:00Z"
}
},
{
"@odata.etag": "\"b2c3d4e5-f6g7-8901-bcde-f23456789012,2\"",
"id": "2",
"createdDateTime": "2025-12-05T14:20:00Z",
"lastModifiedDateTime": "2025-12-09T16:45:00Z",
"webUrl": "https://example.sharepoint.com/sites/ExampleSite/Lists/ProjectTasks/2_.000",
"fields": {
"@odata.etag": "\"b2c3d4e5-f6g7-8901-bcde-f23456789012,2\"",
"id": "2",
"Title": "Update documentation",
"Status": "Not Started",
"AssignedTo": "jane.smith@example.com",
"DueDate": "2025-12-20T00:00:00Z"
}
}
]
}
}
List Shared Documents
Lists documents shared with the user. | key: listSharedDocuments
| Input | Notes | Example |
|---|---|---|
| Connection | The Microsoft SharePoint connection to use. |
{
"data": {
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#me/insights/shared",
"value": [
{
"id": "AWExampleInsightId1234567890",
"lastShared": {
"sharedDateTime": "2025-12-09T10:15:00Z",
"sharingSubject": "Project Update Document",
"sharingType": "Direct",
"sharedBy": {
"displayName": "Jane Smith",
"address": "jane.smith@example.com",
"id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
}
},
"resourceVisualization": {
"title": "Q4 Project Update.docx",
"type": "Word",
"mediaType": "application/vnd.openxmlformats-officedocument.wordprocessingml.document",
"previewImageUrl": "https://example.sharepoint.com/_api/v2.0/drives/b!ExampleDriveId/items/01EXAMPLEITEMID/thumbnails/0/c400x999/content",
"previewText": "This document contains the Q4 project status update...",
"containerWebUrl": "https://example.sharepoint.com/sites/ExampleSite/Shared%20Documents",
"containerDisplayName": "Example Team Site - Documents",
"containerType": "Site"
},
"resourceReference": {
"id": "01EXAMPLESHAREDITEMID1234567",
"webUrl": "https://example.sharepoint.com/sites/ExampleSite/Shared%20Documents/Q4%20Project%20Update.docx",
"type": "microsoft.graph.driveItem"
}
},
{
"id": "AWExampleInsightId9876543210",
"lastShared": {
"sharedDateTime": "2025-12-08T14:30:00Z",
"sharingSubject": "Budget Spreadsheet",
"sharingType": "Link",
"sharedBy": {
"displayName": "John Doe",
"address": "john.doe@example.com",
"id": "b2c3d4e5-f6g7-8901-bcde-f23456789012"
}
},
"resourceVisualization": {
"title": "2025 Budget.xlsx",
"type": "Excel",
"mediaType": "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
"previewImageUrl": "https://example.sharepoint.com/_api/v2.0/drives/b!ExampleDriveId/items/01EXAMPLEITEMID2/thumbnails/0/c400x999/content",
"previewText": "Annual budget spreadsheet for 2025...",
"containerWebUrl": "https://example.sharepoint.com/sites/Finance",
"containerDisplayName": "Finance Team Site",
"containerType": "Site"
},
"resourceReference": {
"id": "01EXAMPLESHAREDITEMID9876543",
"webUrl": "https://example.sharepoint.com/sites/Finance/Documents/2025%20Budget.xlsx",
"type": "microsoft.graph.driveItem"
}
}
]
}
}
List Site Lists
List all Site Lists | key: listSiteLists
| Input | Notes | Example |
|---|---|---|
| Connection | The Microsoft SharePoint connection to use. | |
| Fetch All | When true, retrieves all results by automatically following pagination. | false |
| Site Id | The unique identifier of a SharePoint site. | example.sharepoint.com,c45de8832-a4969-479d-aeb2-7nAh8321,48bf81d7-2d37-40a9-b47b-c1d1960d00f87 |
{
"data": {
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#sites('example.sharepoint.com%2Ca1b2c3d4-e5f6-7890-abcd-ef1234567890%2Cf1e2d3c4-b5a6-7890-1234-567890abcdef')/lists",
"value": [
{
"@odata.etag": "\"a1b2c3d4-e5f6-7890-abcd-ef1234567890,1\"",
"id": "f1e2d3c4-b5a6-7890-1234-567890abcdef",
"displayName": "Tasks",
"name": "Tasks",
"createdDateTime": "2025-06-15T08:30:00Z",
"lastModifiedDateTime": "2025-12-09T10:15:00Z",
"webUrl": "https://example.sharepoint.com/sites/ExampleSite/Lists/Tasks",
"list": {
"contentTypesEnabled": true,
"hidden": false,
"template": "genericList"
}
},
{
"@odata.etag": "\"b2c3d4e5-f6g7-8901-bcde-f23456789012,2\"",
"id": "g2f3e4d5-c6b7-8901-2345-678901bcdefg",
"displayName": "Announcements",
"name": "Announcements",
"createdDateTime": "2025-07-20T12:00:00Z",
"lastModifiedDateTime": "2025-12-08T16:30:00Z",
"webUrl": "https://example.sharepoint.com/sites/ExampleSite/Lists/Announcements",
"list": {
"contentTypesEnabled": true,
"hidden": false,
"template": "announcements"
}
}
]
}
}
List Sites
List all SharePoint sites | key: listSites
| Input | Notes | Example |
|---|---|---|
| Connection | The Microsoft SharePoint connection to use. | |
| Fetch All | When true, retrieves all results by automatically following pagination. | false |
| Page Limit | The maximum number of results to return per page. | 100 |
| Page Token | The token for the desired page from a previous response. | X%2744537079ghv |
{
"data": {
"value": [
{
"description": "Example description",
"id": "example.sharepoint.com,c45e332-a998-479d-aeb2-2a",
"name": "Example SharePoint Site",
"webUrl": "https://example.sharepoint.com",
"displayName": "Communication Site",
"siteCollection": {
"hostname": "https://example.sharepoint.com"
}
}
]
}
}
List Subscriptions
List all available Subscriptions | key: listSubscriptions
| Input | Notes | Example |
|---|---|---|
| Connection | The Microsoft SharePoint connection to use. | |
| Show Instance Subscriptions | When true, filters results to show only subscriptions created by this instance. | true |
{
"data": {
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#subscriptions",
"value": [
{
"id": "38031b7d-16b1-448a-8e68-68b8aec6df45",
"resource": "/me/drive/root",
"applicationId": "0fed8223-8c47-4c71-ba78-92c6f9441235",
"changeType": "updated",
"clientState": null,
"notificationUrl": "https://hooks.example.com/trigger/SW5",
"notificationQueryOptions": null,
"lifecycleNotificationUrl": null,
"expirationDateTime": "2025-12-12T11:23:00.0000000Z",
"creatorId": "62162f3c-04d4-4b39-b2a4-ad891a5dcb8f",
"includeResourceData": null,
"latestSupportedTlsVersion": "v1_2",
"encryptionCertificate": null,
"encryptionCertificateId": null,
"notificationUrlAppId": null
}
]
}
}
Move a File
Move a File in a Drive | key: moveFile
| Input | Notes | Example |
|---|---|---|
| Connection | The Microsoft SharePoint connection to use. | |
| Drive | Provide the id of the drive to move the file in. | b!WumF-zsD8ku93Y0QqhKM9jVTjPefo6RGrpVCkPpe547Qrf38sox_TYIFuj9sqJhv |
| Item Id | Provide the id of the file to move. | 01Q7VXROAW7LCB32ODBRCKZNSJIC544XAQ |
| Destination Parent Id | Provide the Id of the destination parent element to move file to. | root |
{
"data": {
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#drives('drive-id')/items/$entity",
"@microsoft.graph.downloadUrl": "https://example.sharepoint.com/sites/ExampleSite/_layouts/15/download.aspx?UniqueId=example-unique-id&Translate=false&tempauth=example-tempauth-token&ApiVersion=2.0",
"createdDateTime": "2025-06-12T23:24:20Z",
"eTag": "\"{EXAMPLE-ETAG},7\"",
"id": "example-file-id",
"lastModifiedDateTime": "2025-06-12T23:24:49Z",
"name": "example.docx",
"webUrl": "https://example.sharepoint.com/sites/ExampleSite/_layouts/15/Doc.aspx?sourcedoc=%7BEXAMPLE-ID%7D&file=example.docx&action=default&mobileredirect=true",
"cTag": "\"c:{EXAMPLE-CTAG},8\"",
"size": 19802,
"createdBy": {
"user": {
"email": "user@example.com",
"id": "00000000-0000-0000-0000-000000000000",
"displayName": "Example User"
}
},
"lastModifiedBy": {
"user": {
"email": "user@example.com",
"id": "00000000-0000-0000-0000-000000000000",
"displayName": "Example User"
}
},
"parentReference": {
"driveType": "documentLibrary",
"driveId": "example-drive-id",
"id": "example-parent-id",
"name": "Shared Documents",
"path": "/drives/example-drive-id/root:",
"siteId": "00000000-0000-0000-0000-000000000000"
},
"file": {
"mimeType": "application/vnd.openxmlformats-officedocument.wordprocessingml.document",
"hashes": {
"quickXorHash": "exampleBase64Hash=="
}
},
"fileSystemInfo": {
"createdDateTime": "2025-06-12T23:24:20Z",
"lastModifiedDateTime": "2025-06-12T23:24:49Z"
},
"shared": {
"scope": "users"
}
}
}
Raw Request
Send raw HTTP request to Microsoft Sharepoint | key: rawRequest
| Input | Notes | Example |
|---|---|---|
| Connection | The Microsoft SharePoint connection to use. | |
| Data | The HTTP body payload to send to the URL. | {"exampleKey": "Example Data"} |
| File Data | File Data to be sent as a multipart form upload. | [{key: "example.txt", value: "My File Contents"}] |
| File Data File Names | File names to apply to the file data inputs. Keys must match the file data keys above. | |
| Form Data | The Form Data to be sent as a multipart form upload. | [{"key": "Example Key", "value": new Buffer("Hello World")}] |
| Header | A list of headers to send with the request. | User-Agent: curl/7.64.1 |
| Max Retry Count | The maximum number of retries to attempt. Specify 0 for no retries. | 0 |
| Method | The HTTP method to use. | |
| Query Parameter | A list of query parameters to send with the request. This is the portion at the end of the URL similar to ?key1=value1&key2=value2. | |
| Response Type | The type of data you expect in the response. You can request json, text, or binary data. | json |
| Retry On All Errors | If true, retries on all erroneous responses regardless of type. This is helpful when retrying after HTTP 429 or other 3xx or 4xx errors. Otherwise, only retries on HTTP 5xx and network errors. | false |
| Retry Delay (ms) | The delay in milliseconds between retries. This is used when 'Use Exponential Backoff' is disabled. | 0 |
| Timeout | The maximum time that a client will await a response to its request | 2000 |
| URL | Input the path only (/me/followedSites), The base URL is already included (https://graph.microsoft.com/v1.0). For example, to connect to https://graph.microsoft.com/v1.0/me/followedSites, only /me/followedSites is entered in this field. | /me/followedSites |
| Use Exponential Backoff | Specifies whether to use a pre-defined exponential backoff strategy for retries. When enabled, 'Retry Delay (ms)' is ignored. | false |
{
"data": {
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#sites",
"value": [
{
"id": "example.sharepoint.com,a1b2c3d4-e5f6-7890-abcd-ef1234567890,f1e2d3c4-b5a6-7890-1234-567890abcdef",
"displayName": "Example Team Site",
"name": "ExampleTeamSite",
"createdDateTime": "2025-06-15T08:30:00Z",
"lastModifiedDateTime": "2025-12-09T14:22:00Z",
"webUrl": "https://example.sharepoint.com/sites/ExampleTeamSite",
"siteCollection": {
"hostname": "example.sharepoint.com"
}
}
]
}
}
Rename a Folder
Rename a Folder in a Drive | key: renameFolder
| Input | Notes | Example |
|---|---|---|
| Connection | The Microsoft SharePoint connection to use. | |
| Drive | Provide the id of the drive to rename the folder in. | b!WumF-zsD8ku93Y0QqhKM9jVTjPefo6RGrpVCkPpe547Qrf38sox_TYIFuj9sqJhv |
| Folder ID | Provide the id of the folder to rename. | 01Q7VXAXZW7LCB32ODBRCKZNSJIC544FXU |
| Folder Name | Provide the new name of the folder. | MyFolder |
| Site Id | Provide the id of the site to rename the folder in. | example.sharepoint.com,c45de8832-a4969-479d-aeb2-7nAh8321,48bf81d7-2d37-40a9-b47b-c1d1960d00f87 |
{
"data": {
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#sites('example.sharepoint.com%2Cexample-site-id%2Cexample-web-id')/drives('b%21exampleDriveId')/items('root')/children/$entity",
"@odata.etag": "\"{EXAMPLE-ETAG-ID},1\"",
"createdDateTime": "2025-06-12T22:28:24Z",
"eTag": "\"{EXAMPLE-ETAG-ID},1\"",
"id": "exampleItemId123456",
"lastModifiedDateTime": "2025-06-12T22:28:24Z",
"name": "NewFolder",
"size": 0,
"webUrl": "https://example.sharepoint.com/sites/ExampleSite/Shared%20Documents/NewFolder",
"cTag": "\"c:{EXAMPLE-ETAG-ID},0\"",
"commentSettings": {
"commentingDisabled": {
"isDisabled": false
}
},
"createdBy": {
"application": {
"displayName": "ExampleApp",
"id": "example-app-id-1234"
},
"user": {
"displayName": "Example User",
"email": "example.user@example.com",
"id": "example-user-id-1234"
}
},
"lastModifiedBy": {
"application": {
"displayName": "ExampleApp",
"id": "example-app-id-1234"
},
"user": {
"displayName": "Example User",
"email": "example.user@example.com",
"id": "example-user-id-1234"
}
},
"parentReference": {
"driveId": "b!exampleDriveId",
"driveType": "documentLibrary",
"id": "exampleParentItemId123456",
"path": "/drives/b!exampleDriveId/root:",
"sharepointIds": {
"listId": "example-list-id-1234",
"listItemUniqueId": "example-list-item-id-1234",
"siteId": "example-site-id-1234",
"siteUrl": "https://example.sharepoint.com/sites/ExampleSite",
"tenantId": "example-tenant-id-1234",
"webId": "example-web-id-1234"
}
},
"fileSystemInfo": {
"createdDateTime": "2025-06-12T22:28:24Z",
"lastModifiedDateTime": "2025-06-12T22:28:24Z"
},
"folder": {
"childCount": 0
},
"shared": {
"scope": "unknown"
}
}
}
Renew Subscription
Extend the expiration date of an existing SharePoint subscription | key: renewSubscription
| Input | Notes | Example |
|---|---|---|
| Connection | The Microsoft SharePoint connection to use. | |
| Expiration Days | Number of days to extend the subscription. Maximum is 30 days for SharePoint/OneDrive resources. | 3 |
| Subscription Id | The unique identifier of the subscription to manage. | 48bf81d7-2d37-40a9-b47b-c1d1960d00f87 |
{
"data": {
"id": "38031b7d-16b1-448a-8e68-68b8aec62315",
"resource": "/me/drive/root",
"changeType": "updated",
"clientState": "client-specific-string",
"notificationUrl": "https://hooks.example.com/trigger/SW5z",
"expirationDateTime": "2025-12-12T11:23:00.0000000Z",
"creatorId": "6219df3c-04d4-4b39-b2a4-ad162a5dcb8f",
"latestSupportedTlsVersion": "v1_2"
}
}
Search Items
Search for items across all drives in a SharePoint site | key: searchItems
| Input | Notes | Example |
|---|---|---|
| Connection | The Microsoft SharePoint connection to use. | |
| Query | Provide the query to search for items by name. | Invoices |
| Site Id | Provide the id of the site to search the items in. | example.sharepoint.com,c45de8832-a4969-479d-aeb2-7nAh8321,48bf81d7-2d37-40a9-b47b-c1d1960d00f87 |
{
"data": {
"Documents": [
{
"createdDateTime": "2025-06-11T22:08:54Z",
"id": "0125EXAMPLERANDOMFOLDERID1234567890",
"lastModifiedDateTime": "2025-06-12T23:48:54Z",
"name": "renamedFolder",
"webUrl": "https://example.sharepoint.com/sites/ExampleSite/Shared%20Documents/renamedFolder",
"size": 0,
"createdBy": {
"user": {
"email": "user@example.com",
"displayName": "Example User"
}
},
"lastModifiedBy": {
"user": {
"email": "user@example.com",
"displayName": "Example User"
}
},
"parentReference": {
"driveType": "documentLibrary",
"driveId": "b!ExampleDriveIDRandomString12345",
"id": "0125EXAMPLEPARENTID0987654321",
"siteId": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee"
},
"fileSystemInfo": {
"createdDateTime": "2025-06-11T22:08:54Z",
"lastModifiedDateTime": "2025-06-12T23:48:54Z"
},
"folder": {
"childCount": 0
},
"searchResult": {}
}
]
}
}
Update File
Update a file to the specified drive | key: updateFile
| Input | Notes | Example |
|---|---|---|
| Connection | The Microsoft SharePoint connection to use. | |
| Drive | The unique identifier of a SharePoint drive. | b!WumF-zsD8ku93Y0QqhKM9jVTjPefo6RGrpVCkPpe547Qrf38sox_TYIFuj9sqJhv |
| File Data | The file content to upload to SharePoint. Reference a file from a previous step or provide file data. | |
| Item Id | The unique identifier of a SharePoint item. | 01Q7VXROAW7LCB32ODBRCKZNSJIC544XAQ |
Update Site List Subscription Expiration
Update existing Site List subscription expiration for Microsoft SharePoint | key: updateSiteListSubscriptionExpiration
| Input | Notes | Example |
|---|---|---|
| Connection | The Microsoft SharePoint connection to use. | |
| Expiration Date/Time | Expiration date/time for subscription. If unspecified the default will be the current date/time plus 29 days (close to the maximum permitted by the Graph API). | |
| Subscription ID | Subscription ID to manage |
Subscriptions have an expiration date/time provided upon creation. This can also be modified with the update API. This action will default to adding 29 days (close to the maximum value for SharePoint resources) to the current date/time unless a value is specified. This is useful for "touching" the subscription to ensure its expiration is extended.
{
"data": {
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#subscriptions/$entity",
"id": "e9d5b726-4478-4412-bfba-268530484566",
"resource": "sites/example.sharepoint.com,17cd4ada-1a76-420e-a7ec-4adaa3327c86,87742bc7-2d2f-404c-8255-d3d9fa9a6561/lists/3a3c0f6a-86da-4567-94d4-3b939da63200",
"applicationId": "e76615c0-13e3-4cd2-8235-a2d628ad13de",
"changeType": "updated",
"clientState": null,
"notificationUrl": "https://example.com/webhook/",
"notificationQueryOptions": null,
"lifecycleNotificationUrl": null,
"expirationDateTime": "2022-11-22T23:32:10.231Z",
"creatorId": "c8edbeda-c453-446c-91ce-c6d5c7310a6c",
"includeResourceData": null,
"latestSupportedTlsVersion": "v1_2",
"encryptionCertificate": null,
"encryptionCertificateId": null,
"notificationUrlAppId": null
}
}
Upload File
Upload a file to the specified drive or folder's drive | key: uploadFile
| Input | Notes | Example |
|---|---|---|
| Connection | The Microsoft SharePoint connection to use. | |
| Drive | The unique identifier of a SharePoint drive. | b!WumF-zsD8ku93Y0QqhKM9jVTjPefo6RGrpVCkPpe547Qrf38sox_TYIFuj9sqJhv |
| File Data | The file content to upload to SharePoint. Reference a file from a previous step or provide file data. | |
| File Name | The name of the file including extension. | reports.csv |
| Folder ID | The unique identifier of a SharePoint folder. Leave empty to use root folder. | 01Q7VXAXZW7LCB32ODBRCKZNSJIC544FXU |
Changelog
2025-12-09
Added webhook lifecycle features for managing SharePoint subscription creation, renewal, and deletion:
- Drive Subscription trigger for receiving real-time SharePoint change notifications with automatic subscription management
- Delete All Instance Subscriptions action for removing all subscriptions associated with an instance endpoint
- Renew Subscription action to extend subscription expiration
2025-09-16
Added new polling triggers for comprehensive SharePoint monitoring:
- New and Updated Drive Items trigger for monitoring drive modifications
- New and Updated Site Items trigger for tracking site updates
- New and Updated Folder Items trigger for detecting folder content changes
Renamed the OAuth connection configuration key to improve clarity.
2025-07-21
Added support for Microsoft Graph sovereign cloud endpoints, enabling SharePoint integration with government and regional cloud instances.
2025-07-15
Added OAuth 2.0 Client Credentials connection type for server-to-server authentication scenarios where user delegation is not required.