Grant access to the SharePoint site
The last stage on the Microsoft side, and it applies to both modes. Sites.Selected
is least-privilege, so the app can only reach sites that have been explicitly granted to
it. You make a one-time write grant for the single site Sliick will manage.
In Delegated mode the signed-in user must additionally have their own access to that site.
There is no Azure Portal screen for this, so you call Microsoft Graph directly. The easiest tool is Graph Explorer, Microsoft’s web-based Graph client.
- Open https://developer.microsoft.com/graph/graph-explorer and sign in as a tenant admin, top-right.
- The first time you run a Graph call as admin, Graph Explorer prompts for additional consent. Approve it.
1. Find the site ID
Section titled “1. Find the site ID”For the SharePoint site you want Sliick to manage:
-
Look at the SharePoint site URL in your browser. It looks like
https://contoso.sharepoint.com/sites/marketing. Note the hostname (contoso.sharepoint.com) and the site path (/sites/marketing). -
In Graph Explorer, set the method to GET and the URL to:
https://graph.microsoft.com/v1.0/sites/contoso.sharepoint.com:/sites/marketing -
Click Run query. The response includes an
idfield that looks likecontoso.sharepoint.com,8f3...guid...,2a1...guid.... Copy the entireidvalue; that is the composite site ID.
2. Grant the app write access to that site
Section titled “2. Grant the app write access to that site”-
In Graph Explorer, set the method to POST and the URL to the following, pasting the site
idfrom step 1 in place of{site-id}:https://graph.microsoft.com/v1.0/sites/{site-id}/permissions -
Set Request body to the following, replacing
<your-app-client-id>with the Client ID from the app registration:{ "roles": ["write"], "grantedToIdentities": [ { "application": { "id": "<your-app-client-id>", "displayName": "Sliick Files (SharePoint Graph)" } } ] } -
Click Run query. A
201 Createdresponse confirms the grant.
Available roles are read, write and owner. Sliick needs at least write to
upload, replace, and delete files.
Grant only the one site Sliick will manage. Sliick connects to a single site: the Site URL you enter in the setup app resolves to one site, so granting the app additional sites widens its reach with no benefit.
What you now have
Section titled “What you now have”The three values you need for Salesforce:
- Tenant ID
- Client ID, the Application (client) ID
- Client Secret