OneDrive & SharePoint
This guide walks you through connecting Microsoft OneDrive and SharePoint to Vince Platform. Once connected, users can select files from OneDrive manually when running workflows, and you can also set up automated scheduled access to SharePoint folders.
Prerequisites
- Access to Vince Platform
- A Microsoft M365 administrator account with permission to create Azure app registrations
- Basic familiarity with Azure and OneDrive services
Your M365 account must have at least one of the following roles:
- Cloud Application Administrator
- Application Developer
- Application Administrator
- Global Administrator
Part 1 — Enable the OneDrive File Picker
When a user opens the OneDrive File Picker for the first time from Vince Platform, the app VL POC FilePicker Multitenant will request Admin Consent for the following delegated permissions:
Profile · User.Read · Files.Read · Files.Read.All · Files.ReadWrite.All · Sites.Read.All · openid · Team.ReadBasic.All
Once admin consent is granted, users can manually select files from OneDrive or SharePoint when running a workflow. This is sufficient if you only need manual file selection.
To automate or schedule workflows that read from a SharePoint folder, continue with Part 2 below.
Part 2 — Set up automated SharePoint access
This part involves Azure app registrations and PowerShell scripts against Microsoft Graph. It's typically IT/Azure-admin work — if that's not you, hand this section to your IT team and skip to Step 4 once they've completed Steps 1–3.
Step 1 — Register a new app in Azure
- Log in to the Azure portal and go to Azure Active Directory (also called Microsoft Entra ID).
- Select App registrations and click New registration.
- Enter a name for the application and choose the appropriate account type.
- Click Register.
Step 2 — Create client credentials
- Go to Certificates & secrets for your registered app.
- Under Client secrets, click New client secret.
- Enter a description and set an expiration period, then click Add.
- Copy the generated client secret immediately — you will need it later and it will not be shown again.
Step 3a — Configure app permissions
- Go to API permissions for your registered app and click Add a permission.
- Select Microsoft Graph, then choose Application as the permission type.
- Add the permission Sites.Selected for SharePoint file access.
- Click Add permissions.
- If required, click Grant admin consent to apply the permissions immediately.
Step 3b — Assign SharePoint site permissions
The Sites.Selected permission alone does not grant access to any specific site — you must explicitly grant the app access to each SharePoint site using PowerShell.
Prerequisites for this step:
- A user account with at least the SharePoint Administrator role
- PowerShell 5.1+ with the Microsoft Graph PowerShell SDK installed
- An existing App Registration with the Sites.Selected application permission
# Install the Microsoft Graph SDK if needed
Install-PSResource -Name Microsoft.Graph -Scope CurrentUser
# Sign in with a SharePoint Administrator account
Connect-MgGraph -Scopes "Sites.FullControl.All","Application.Read.All"
Find the SharePoint Site ID:
# Option 1 — search by display name
$siteName = "Your Site Name"
$site = Get-MgSite -Search $siteName | Where-Object { $_.DisplayName -eq $siteName }
$siteId = $site.Id
# Option 2 — search by URL
$domain = "yourcompanydomain"
$site = Get-MgSite -SiteId "$domain.sharepoint.com:/sites/YourSiteName:"
$siteId = $site.Id
Find the Service Principal:
$appDisplayName = "Your App Name"
$sp = Get-MgServicePrincipal -Filter "displayName eq '$appDisplayName'"
$spId = $sp.Id
Grant the app access:
# Accepted roles: "read" or "write"
$role = "write"
$body = @{
roles = @($role)
grantedToIdentities = @(
@{
application = @{
id = $spId
displayName = $appDisplayName
}
}
)
}
New-MgSitePermission -SiteId $siteId -BodyParameter $body
View, edit, or remove permissions:
# List existing assignments
Get-MgSitePermission -SiteId $siteId | Select-Object Id,Roles,GrantedToIdentities
# Remove an assignment (permissions cannot be updated in-place — remove and recreate instead)
$permissionId = "paste-permission-id-here"
Remove-MgSitePermission -SiteId $siteId -PermissionId $permissionId
Step 4 — Configure the connection in Vince Platform
- In Vince Platform, go to Administration → Integrations → Connections and click New Connection.
- Enter a name and description for the connection.
- Select Azure as the System.
- Set Authentication Type to
Auth, Protocol toHTTPS, and select the Vince Platform Environment. - Fill in the following fields:
| Field | Value |
|---|---|
| Client ID | Application (Client) ID from the Azure portal |
| Client Secret | The client secret generated in Step 2 |
| Token URI | The OAuth 2.0 token endpoint (v2) from the Azure App registrations Endpoints page |
| Base URI | https://graph.microsoft.com/v1.0/ |
| Grant Type | client_credentials |
| Scope | https://graph.microsoft.com/.default |
- Click Save.
Step 5 — Verify the connection (recommended)
- In the Connections list, find your new OneDrive connection.
- Click the ⋮ actions menu and select Validate Connection.
- This tests authentication and confirms communication with Microsoft OneDrive is working correctly.
Always validate the connection before using it in a workflow to catch any configuration issues early.