{"templateId":"markdown","sharedDataIds":{"sidebar":"sidebar-agen-for-work/sidebars.yaml"},"props":{"metadata":{"markdoc":{"tagList":["Notification","LightboxImage"]},"type":"markdown"},"seo":{"title":"Microsoft OneDrive integration","siteUrl":"https://developers.frontegg.com/","llmstxt":{"hide":false,"sections":[{"title":"Table of contents","includeFiles":["**/*"],"excludeFiles":[]}],"excludeFiles":[]}},"dynamicMarkdocComponents":[],"compilationErrors":[],"ast":{"$$mdtype":"Tag","name":"article","attributes":{},"children":[{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"microsoft-onedrive-integration","__idx":0},"children":["Microsoft OneDrive integration"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Integrating Microsoft OneDrive with Frontegg allows your application to read and write files, manage folders, access shared files, and interact with user storage — all through Frontegg's integration layer using Microsoft OAuth 2.0 and the Microsoft Graph API."]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Notification","attributes":{"title":"Prerequisites","type":"attention"},"children":[{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["A Microsoft account with access to the ",{"$$mdtype":"Tag","name":"a","attributes":{"href":"https://portal.azure.com/"},"children":["Azure portal"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["An Azure Active Directory (Microsoft Entra ID) tenant"]}]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"register-an-application-in-azure","__idx":1},"children":["Register an application in Azure"]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":4,"id":"step-1-go-to-app-registrations","__idx":2},"children":["Step 1: Go to App registrations"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Sign in to the ",{"$$mdtype":"Tag","name":"a","attributes":{"href":"https://portal.azure.com/"},"children":["Azure portal"]}," and search for ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["App registrations"]}," in the top search bar. Click ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["App registrations"]}," in the results."]},{"$$mdtype":"Tag","name":"LightboxImage","attributes":{"isLightbox":true},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"img","attributes":{"src":"/assets/microsoft-onedrive-1.ccd64126c70d6e3faad64e6e0e1247251b2e7b6a9cf29e00bbb2a72418fa19f0.1ce25488.png","alt":"App registrations page in Azure portal"},"children":[]}]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":4,"id":"step-2-register-a-new-application","__idx":3},"children":["Step 2: Register a new application"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Click ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["New registration"]}," at the top of the page. Fill in the registration form:"]},{"$$mdtype":"Tag","name":"ol","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Enter a name for your application (for example, ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Frontegg Integration"]},")."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Under ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Supported account types"]},", select ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Accounts in any organizational directory (Any Microsoft Entra ID tenant — Multitenant)"]}," for multi-tenant apps, or the appropriate option for your use case."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Under ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Redirect URI"]},", select ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Web"]}," as the platform and enter your Frontegg MCP Gateway callback URL."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Click ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Register"]},"."]}]},{"$$mdtype":"Tag","name":"LightboxImage","attributes":{"isLightbox":true},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"img","attributes":{"src":"/assets/microsoft-onedrive-2.ee7428b2c789d1c5902ad1ebe1b7bfca0bb4a59f4fc7b6d6233f11861e35524e.1ce25488.png","alt":"New application registration form with name, account type, and redirect URI filled in"},"children":[]}]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":4,"id":"step-3-copy-the-application-client-id-and-directory-tenant-id","__idx":4},"children":["Step 3: Copy the Application (client) ID and Directory (tenant) ID"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["After registration, you are taken to the application overview page. Copy both the ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Application (client) ID"]}," and the ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Directory (tenant) ID"]}," — you will need them when configuring the Frontegg portal."]},{"$$mdtype":"Tag","name":"LightboxImage","attributes":{"isLightbox":true},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"img","attributes":{"src":"/assets/microsoft-onedrive-3.e4cc7df97d94fb24a3f2bf6c73386c70a33526c78d94570f6d9a573a1b9987a2.1ce25488.png","alt":"Application overview page with Application ID and Directory ID highlighted"},"children":[]}]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"create-a-client-secret","__idx":5},"children":["Create a client secret"]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":4,"id":"step-4-go-to-certificates--secrets","__idx":6},"children":["Step 4: Go to Certificates & secrets"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["In the left sidebar, click ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Certificates & secrets"]},", then click ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["New client secret"]},"."]},{"$$mdtype":"Tag","name":"LightboxImage","attributes":{"isLightbox":true},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"img","attributes":{"src":"/assets/microsoft-onedrive-4.4d5c34390e0ac91ef33c8a26cb166e2e029d2c9e8e5818aec9de56804c2de84b.1ce25488.png","alt":"Certificates and secrets page with New client secret button highlighted"},"children":[]}]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":4,"id":"step-5-add-a-description-and-expiry","__idx":7},"children":["Step 5: Add a description and expiry"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["In the ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Add a client secret"]}," panel, enter a description (for example, ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Frontegg Integration"]},") and choose an expiry period. Click ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Add"]},"."]},{"$$mdtype":"Tag","name":"LightboxImage","attributes":{"isLightbox":true},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"img","attributes":{"src":"/assets/microsoft-onedrive-5.5ffafd3acb835854ec3ab4aac12512bd29a12dbade581f07689ca018849eb027.1ce25488.png","alt":"Add a client secret panel with description field filled in"},"children":[]}]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":4,"id":"step-6-copy-the-client-secret-value","__idx":8},"children":["Step 6: Copy the client secret value"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The new secret appears in the list. Copy the ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Value"]}," immediately — it is only shown once. After you navigate away, you cannot retrieve it again."]},{"$$mdtype":"Tag","name":"Notification","attributes":{"title":"Save your Client Secret now","type":"attention"},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The Client Secret value is only displayed once. After you leave this page, you can only see the secret ID — not the value. Store the value securely before continuing."]}]},{"$$mdtype":"Tag","name":"LightboxImage","attributes":{"isLightbox":true},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"img","attributes":{"src":"/assets/microsoft-onedrive-6.6e9fb7ec0d6d3e90c1cbc749ff72a46a823e960ae830f858b13396a3a30576fc.1ce25488.png","alt":"Client secret list showing the new secret with value blurred"},"children":[]}]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"configure-api-permissions","__idx":9},"children":["Configure API permissions"]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":4,"id":"step-7-go-to-api-permissions","__idx":10},"children":["Step 7: Go to API permissions"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["In the left sidebar, click ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["API permissions"]},", then click ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Add a permission"]},"."]},{"$$mdtype":"Tag","name":"LightboxImage","attributes":{"isLightbox":true},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"img","attributes":{"src":"/assets/microsoft-onedrive-7.3867975c98d041356e38c9cd418e8515860f911566438332c03c8504716fa295.1ce25488.png","alt":"API permissions page with Add a permission button highlighted"},"children":[]}]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":4,"id":"step-8-select-microsoft-graph","__idx":11},"children":["Step 8: Select Microsoft Graph"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["In the ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Request API permissions"]}," panel, click ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Microsoft Graph"]},"."]},{"$$mdtype":"Tag","name":"LightboxImage","attributes":{"isLightbox":true},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"img","attributes":{"src":"/assets/microsoft-onedrive-8.119708644d038a87f7be657fe351b58f169aab049f0744f3705b3239f911a10a.1ce25488.png","alt":"Request API permissions panel with Microsoft Graph highlighted"},"children":[]}]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":4,"id":"step-9-select-delegated-permissions","__idx":12},"children":["Step 9: Select delegated permissions"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Click ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Delegated permissions"]},". Search for ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Files"]}," and expand the ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Files"]}," group. Select the permissions your application requires, then click ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Add permissions"]},"."]},{"$$mdtype":"Tag","name":"LightboxImage","attributes":{"isLightbox":true},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"img","attributes":{"src":"/assets/microsoft-onedrive-9.3b4313d463a3f857dfd7f3ed20ae9433ad701621d287f20df0b0858a1a3fec21.1ce25488.png","alt":"Delegated permissions list with Files.Read and Files.ReadWrite selected"},"children":[]}]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":4,"id":"step-10-verify-configured-permissions","__idx":13},"children":["Step 10: Verify configured permissions"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["After adding permissions, the ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["API permissions"]}," page shows all configured permissions under ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Microsoft Graph"]},"."]},{"$$mdtype":"Tag","name":"LightboxImage","attributes":{"isLightbox":true},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"img","attributes":{"src":"/assets/microsoft-onedrive-10.6ecc6cb25da2630e2062c498ff9be4ccef95514cf1bb8aefbe5952d89cf787fc.1ce25488.png","alt":"API permissions page showing the configured Files and User.Read permissions"},"children":[]}]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"configure-the-frontegg-portal","__idx":14},"children":["Configure the Frontegg portal"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Once you have your ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Client ID"]},", ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Client Secret"]},", and optionally the ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Tenant ID"]},", enter them in the Frontegg portal:"]},{"$$mdtype":"Tag","name":"ol","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Open the ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Frontegg portal"]}," and navigate to [ENVIRONMENT] → Integrations → Microsoft OneDrive."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Enter the ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Client ID"]}," and ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Client Secret"]}," in the corresponding fields."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Optionally, enter the ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Directory (tenant) ID"]},". Leave blank or use ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["common"]}," for multi-tenant applications."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Select the required ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["scopes"]},":"]}]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Scope"},"children":["Scope"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Description"},"children":["Description"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Files.Read"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Read the signed-in user's files"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Files.ReadWrite"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Read, create, update, and delete the signed-in user's files"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Files.Read.All"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Read all files the signed-in user can access"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Files.ReadWrite.All"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Read, create, update, and delete all files the signed-in user can access"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Files.Read.Selected"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Read files that the user selects (preview)"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Files.ReadWrite.Selected"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Read and write files that the user selects (preview)"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Files.ReadWrite.AppFolder"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Full access to the application's dedicated folder (preview)"]}]}]}]}]},{"$$mdtype":"Tag","name":"ol","attributes":{"start":5},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Click ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Save"]},"."]}]},{"$$mdtype":"Tag","name":"Notification","attributes":{"title":"Keep your credentials secure","type":"attention"},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Never share or commit your Client Secret to version control."]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"additional-resources","__idx":15},"children":["Additional resources"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"a","attributes":{"href":"https://learn.microsoft.com/en-us/graph/api/resources/onedrive"},"children":["Microsoft Graph Files API documentation"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"a","attributes":{"href":"https://portal.azure.com/"},"children":["Azure portal"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"a","attributes":{"href":"https://learn.microsoft.com/en-us/entra/identity-platform/v2-oauth2-auth-code-flow"},"children":["Microsoft identity platform and OAuth 2.0"]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"a","attributes":{"href":"/agen-for-work/connectors/redirect-url"},"children":["How to get your Redirect URL"]}]}]}]},"headings":[{"value":"Microsoft OneDrive integration","id":"microsoft-onedrive-integration","depth":2},{"value":"Register an application in Azure","id":"register-an-application-in-azure","depth":3},{"value":"Step 1: Go to App registrations","id":"step-1-go-to-app-registrations","depth":4},{"value":"Step 2: Register a new application","id":"step-2-register-a-new-application","depth":4},{"value":"Step 3: Copy the Application (client) ID and Directory (tenant) ID","id":"step-3-copy-the-application-client-id-and-directory-tenant-id","depth":4},{"value":"Create a client secret","id":"create-a-client-secret","depth":3},{"value":"Step 4: Go to Certificates & secrets","id":"step-4-go-to-certificates--secrets","depth":4},{"value":"Step 5: Add a description and expiry","id":"step-5-add-a-description-and-expiry","depth":4},{"value":"Step 6: Copy the client secret value","id":"step-6-copy-the-client-secret-value","depth":4},{"value":"Configure API permissions","id":"configure-api-permissions","depth":3},{"value":"Step 7: Go to API permissions","id":"step-7-go-to-api-permissions","depth":4},{"value":"Step 8: Select Microsoft Graph","id":"step-8-select-microsoft-graph","depth":4},{"value":"Step 9: Select delegated permissions","id":"step-9-select-delegated-permissions","depth":4},{"value":"Step 10: Verify configured permissions","id":"step-10-verify-configured-permissions","depth":4},{"value":"Configure the Frontegg portal","id":"configure-the-frontegg-portal","depth":3},{"value":"Additional resources","id":"additional-resources","depth":3}],"frontmatter":{"category":"Storage","displayName":"Microsoft OneDrive","seo":{"title":"Microsoft OneDrive integration"}},"lastModified":"2026-05-19T15:06:34.000Z","pagePropGetterError":{"message":"","name":""}},"slug":"/agen-for-work/connectors/marketplace/microsoft-onedrive","userData":{"isAuthenticated":false,"teams":["anonymous"]},"isPublic":true}