> ## Documentation Index
> Fetch the complete documentation index at: https://docs.langdock.com/llms.txt
> Use this file to discover all available pages before exploring further.

# SharePoint

> Review the validated minimum OAuth scopes and Sites.Selected limitations for every SharePoint action.

Review the validated minimum standard delegated scope for every SharePoint action. Each action uses one content scope in addition to the connection baseline.

## Minimal scopes per action

<Note>
  Each SharePoint connection also requests `offline_access` and `User.Read`. These connection scopes apply in addition to the action scope in the table.
</Note>

<div style={{overflowX: "auto"}}>
  <table style={{width: "100%", tableLayout: "fixed", overflowWrap: "anywhere"}}>
    <colgroup>
      <col style={{width: "28%"}} />

      <col style={{width: "32%"}} />

      <col style={{width: "40%"}} />
    </colgroup>

    <thead>
      <tr>
        <th style={{width: "22%"}}>Action</th>
        <th style={{width: "28%"}}>Description</th>
        <th style={{width: "50%"}}>Minimum scopes</th>
      </tr>
    </thead>

    <tbody>
      <tr>
        <td><strong>Add section to page</strong></td>
        <td>Adds section to page.</td>
        <td><code>Sites.ReadWrite.All</code></td>
      </tr>

      <tr>
        <td><strong>Check file access</strong></td>
        <td>Checks whether a file can be accessed.</td>
        <td><code>Files.Read.All</code></td>
      </tr>

      <tr>
        <td><strong>Copy file</strong></td>
        <td>Copies file.</td>
        <td><code>Files.ReadWrite.All</code></td>
      </tr>

      <tr>
        <td><strong>Create attachment from URL</strong></td>
        <td>Creates an attachment from a URL.</td>
        <td><code>Sites.Read.All</code></td>
      </tr>

      <tr>
        <td><strong>Create folder</strong></td>
        <td>Creates folder.</td>
        <td><code>Files.ReadWrite.All</code></td>
      </tr>

      <tr>
        <td><strong>Create list</strong></td>
        <td>Creates list.</td>
        <td><code>Sites.Manage.All</code></td>
      </tr>

      <tr>
        <td><strong>Create list item</strong></td>
        <td>Creates list item.</td>
        <td><code>Sites.ReadWrite.All</code></td>
      </tr>

      <tr>
        <td><strong>Create page</strong></td>
        <td>Creates page.</td>
        <td><code>Sites.ReadWrite.All</code></td>
      </tr>

      <tr>
        <td><strong>Download file</strong></td>
        <td>Downloads file.</td>
        <td><code>Files.Read.All</code></td>
      </tr>

      <tr>
        <td><strong>Find site users</strong></td>
        <td>Finds site users.</td>
        <td><code>Sites.Read.All</code></td>
      </tr>

      <tr>
        <td><strong>Get column</strong></td>
        <td>Gets column.</td>
        <td><code>Sites.Read.All</code></td>
      </tr>

      <tr>
        <td><strong>Get drive</strong></td>
        <td>Gets drive.</td>
        <td><code>Files.Read.All</code></td>
      </tr>

      <tr>
        <td><strong>Get file</strong></td>
        <td>Gets file.</td>
        <td><code>Files.Read.All</code></td>
      </tr>

      <tr>
        <td><strong>Get file metadata</strong></td>
        <td>Gets file metadata.</td>
        <td><code>Files.Read.All</code></td>
      </tr>

      <tr>
        <td><strong>Get folder</strong></td>
        <td>Gets folder.</td>
        <td><code>Files.Read.All</code></td>
      </tr>

      <tr>
        <td><strong>Get list</strong></td>
        <td>Gets list.</td>
        <td><code>Sites.Read.All</code></td>
      </tr>

      <tr>
        <td><strong>Get list item</strong></td>
        <td>Gets list item.</td>
        <td><code>Sites.Read.All</code></td>
      </tr>

      <tr>
        <td><strong>Get page</strong></td>
        <td>Gets page.</td>
        <td><code>Sites.Read.All</code></td>
      </tr>

      <tr>
        <td><strong>Get profile</strong></td>
        <td>Gets profile.</td>
        <td><code>User.Read</code></td>
      </tr>

      <tr>
        <td><strong>Get sensitivity label</strong></td>
        <td>Gets the sensitivity label of a file.</td>
        <td><code>Files.Read.All</code></td>
      </tr>

      <tr>
        <td><strong>Get site</strong></td>
        <td>Gets site.</td>
        <td><code>Sites.Read.All</code></td>
      </tr>

      <tr>
        <td><strong>List columns</strong></td>
        <td>Lists columns.</td>
        <td><code>Sites.Read.All</code></td>
      </tr>

      <tr>
        <td><strong>List drive children</strong></td>
        <td>Lists drive children.</td>
        <td><code>Files.Read.All</code></td>
      </tr>

      <tr>
        <td><strong>List drives</strong></td>
        <td>Lists drives.</td>
        <td><code>Files.Read.All</code></td>
      </tr>

      <tr>
        <td><strong>List files in folder</strong></td>
        <td>Lists files in folder.</td>
        <td><code>Files.Read.All</code></td>
      </tr>

      <tr>
        <td><strong>List files in SharePoint folder</strong></td>
        <td>Lists files in sharepoint folder.</td>
        <td><code>Files.Read.All</code></td>
      </tr>

      <tr>
        <td><strong>List folder changes</strong></td>
        <td>Lists folder changes.</td>
        <td><code>Files.Read.All</code></td>
      </tr>

      <tr>
        <td><strong>List list items</strong></td>
        <td>Lists list items.</td>
        <td><code>Sites.Read.All</code></td>
      </tr>

      <tr>
        <td><strong>List recent files</strong></td>
        <td>Lists recent files.</td>
        <td><code>Sites.Read.All</code></td>
      </tr>

      <tr>
        <td><strong>List site lists</strong></td>
        <td>Lists site lists.</td>
        <td><code>Sites.Read.All</code></td>
      </tr>

      <tr>
        <td><strong>List site pages</strong></td>
        <td>Lists site pages.</td>
        <td><code>Sites.Read.All</code></td>
      </tr>

      <tr>
        <td><strong>List subsites</strong></td>
        <td>Lists subsites.</td>
        <td><code>Sites.Read.All</code></td>
      </tr>

      <tr>
        <td><strong>Move file</strong></td>
        <td>Moves file.</td>
        <td><code>Files.ReadWrite.All</code></td>
      </tr>

      <tr>
        <td><strong>Query list items</strong></td>
        <td>Queries list items.</td>
        <td><code>Sites.Read.All</code></td>
      </tr>

      <tr>
        <td><strong>Replace page content</strong></td>
        <td>Replaces page content.</td>
        <td><code>Sites.ReadWrite.All</code></td>
      </tr>

      <tr>
        <td><strong>Resolve drive</strong></td>
        <td>Resolves drive.</td>
        <td><code>Files.Read.All</code></td>
      </tr>

      <tr>
        <td><strong>Resolve file</strong></td>
        <td>Resolves file.</td>
        <td><code>Files.Read.All</code></td>
      </tr>

      <tr>
        <td><strong>Resolve folder</strong></td>
        <td>Resolves folder.</td>
        <td><code>Files.Read.All</code></td>
      </tr>

      <tr>
        <td><strong>Resolve list</strong></td>
        <td>Resolves list.</td>
        <td><code>Sites.Read.All</code></td>
      </tr>

      <tr>
        <td><strong>Resolve page</strong></td>
        <td>Resolves page.</td>
        <td><code>Sites.Read.All</code></td>
      </tr>

      <tr>
        <td><strong>Resolve parent</strong></td>
        <td>Resolves parent.</td>
        <td><code>Files.Read.All</code></td>
      </tr>

      <tr>
        <td><strong>Resolve SharePoint URL</strong></td>
        <td>Resolves a shared SharePoint URL.</td>
        <td><code>Files.Read.All</code></td>
      </tr>

      <tr>
        <td><strong>Resolve site</strong></td>
        <td>Resolves site.</td>
        <td><code>Sites.Read.All</code></td>
      </tr>

      <tr>
        <td><strong>Search files</strong></td>
        <td>Searches files.</td>
        <td><code>Files.Read.All</code></td>
      </tr>

      <tr>
        <td><strong>Search SharePoint</strong></td>
        <td>Searches sharepoint.</td>
        <td><code>Sites.Read.All</code></td>
      </tr>

      <tr>
        <td><strong>Search sites</strong></td>
        <td>Searches sites.</td>
        <td><code>Sites.Read.All</code></td>
      </tr>

      <tr>
        <td><strong>Update list item</strong></td>
        <td>Updates list item.</td>
        <td><code>Sites.ReadWrite.All</code></td>
      </tr>

      <tr>
        <td><strong>Update page title</strong></td>
        <td>Updates page title.</td>
        <td><code>Sites.ReadWrite.All</code></td>
      </tr>

      <tr>
        <td><strong>Upload file</strong></td>
        <td>Uploads file.</td>
        <td><code>Files.ReadWrite.All</code></td>
      </tr>
    </tbody>
  </table>
</div>

<Info>
  The validated mapping does not include `SensitivityLabel.Read` for **Get sensitivity label**. Add it when your Microsoft Purview setup requires it.
</Info>

## Actions affected by `Sites.Selected`

The following actions may not work completely with selected site permissions:

<AccordionGroup>
  <Accordion title="Search sites">
    Uses Microsoft Graph `GET /sites?search`. This endpoint queries tenant-wide directory indexes and does not reliably return sites granted solely through `Sites.Selected`, so dynamic site discovery fails.
  </Accordion>

  <Accordion title="Search SharePoint">
    Uses Microsoft Search, which searches tenant-wide indexes based on the user's personal SharePoint permissions rather than the application's `Sites.Selected` grant. Search results can include items from sites outside your selected grant, though direct access to those ungranted items will still be denied.
  </Accordion>

  <Accordion title="Search files">
    Queries tenant-wide Microsoft Search indexes. It may return file results from sites outside the selected grant, although attempting to open or interact with those files will fail if permissions are not explicitly granted.
  </Accordion>

  <Accordion title="Resolve SharePoint URL">
    Resolves shared links through `/shares/{shareToken}/driveItem`. If a user provides a direct link to a file or folder on a granted site, resolution succeeds. If the link points to an ungranted site, Graph denies access even if the user individually has access in SharePoint.
  </Accordion>
</AccordionGroup>

### Native features

Additionally, the following native features may be affected by a Selected grant:

* **Folder Sync**: Synchronizes local and cloud folders across your workspace.
* **Company Knowledge**: Indexes connected drives and documents for AI search and chat context.

When using selected-only permissions, dynamic site and library discovery does not work, preventing UI pickers from listing sites. While sync and indexing can read files from a granted site once exact site and drive paths are provided, automatic discovery is unavailable.

**Create list** requires manage permissions on the site.

## Related pages

* [Microsoft Integration Scopes](/en/admin/manage-integrations/microsoft-integration-scopes)
* [Microsoft integrations: permissions and admin approval](/en/admin/manage-integrations/integration-setup-guides/microsoft)
