Skip to content

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.

  1. Open https://developer.microsoft.com/graph/graph-explorer and sign in as a tenant admin, top-right.
  2. The first time you run a Graph call as admin, Graph Explorer prompts for additional consent. Approve it.

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 id field that looks like contoso.sharepoint.com,8f3...guid...,2a1...guid.... Copy the entire id value; 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 id from 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 Created response 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.

The three values you need for Salesforce:

  • Tenant ID
  • Client ID, the Application (client) ID
  • Client Secret

Next: Create the Salesforce credentials.