Integrating with Microsoft 365 (Single Tenant)

Frankie Ryan
Frankie Ryan
  • Updated

A Microsoft 365 integration enables you to connect your client's apps, services, and data. This article walks you through the essential steps of configuring a Single-tenant Microsoft 365 integration, from ensuring you have the proper prerequisites and licenses to verifying connectivity and syncing user data.

Note: This article captures third-party steps and/or an interface that may have since been updated.
Note: A configured Azure application is required to grant ScalePad access to your information to integrate Microsoft 365 with ScalePad.  

Who can use this feature?

  • ScalePad Hub Administrators
  • Users with Manage Sync Settings permissions in their ScalePad Hub account.
 

What you'll need:

  • Administrator Credentials: From the Azure Navigation menu, under Roles and administrators, confirm that you have Global Administrator user credentials for Microsoft Azure.
    MS365_Roles_Administrators.png
  • A Microsoft work account with access to the Microsoft 365 tenant and subscriptions you want to report on. This integration syncs Microsoft 365 subscription and user data. An Intune subscription is not required for that reporting. To sync managed-device hardware, compliance, or software data, configure the separate Microsoft Endpoint Manager integration and meet its Intune prerequisites.
 

Creating multiple instances

ScalePad supports setting up multiple instances of the Microsoft 365 single-tenant integration directly through your account. Multiple single-tenant integrations allow you to maintain clear boundaries and proper data governance across client environments.

This separation allows you to:

  • Enforce Data Isolation: Keep each client’s data and configurations separate, aiding security and compliance.
  • Customize Access: Use unique Azure credentials and permissions for each tenant, enabling tailored integration settings per client.
  • Granular Management: Align each tenant’s integration with different policy or licensing needs (e.g., one client might have different subscription and user-reporting requirements from another).

Integration steps in Microsoft Azure

Creating the ScalePad application

We recommend creating a dedicated application that ScalePad uses to access Microsoft 365 subscription and user information.

  1. Sign in to Microsoft Azure as a Global Administrator.
  2. Use the Search resources box to find and select App registrations.

     
  3. Click +New Registration.

     
  4. Enter a user-facing display name for the new application registration (for example, ScalePad Microsoft 365 single tenant Integration).
     
  5. Under Supported account types, select Single tenant only.
    Leave the rest of the default settings as is.  
  6. Click Register to create the application.

     
  7. Note the Application (client) ID and the Directory (tenant) ID under the newly created application. These will be required to complete the integration.

Configuring ScalePad application permissions

Users/admins must grant permissions to applications before they can call APIs. For full functionality, the following permissions are required:

  • Microsoft Graph
    • AuditLog.Read.All
    • DeviceManagementApps.Read.All
    • DeviceManagementManagedDevices.Read.All
    • Organization.Read.All
    • Reports.Read.All
    • User.Read.All - The User.Read.All permission is necessary to retrieve user data.
    • ReportSettings.ReadWrite.All
    • SecurityEvents.Read.All
  1. Within the created application, expand Manage in the left navigation panel, and click API permissions.
     
  2. Click Add a permission.
     
  3. In the Request API permissions screen, select Microsoft Graph and then choose Application permissions.

     
  4. In the Select permissions section, expand the categories listed below and select the documented API permissions.

    Category Permission required
    AuditLog AuditLog.Read.All
    DeviceManagementApps DeviceManagementApps.Read.All
    DeviceManagementManagedDevices DeviceManagementManagedDevices.Read.All
    Directory Directory.Read.All
    Organization Organization.Read.All
    ReportSettings ReportSettings.ReadWrite.All
    Reports Reports.Read.All
    SecurityEvents SecurityEvents.Read.All
    User User.Read.All
  5. Once all permissions are selected, click Add permissions.
     
  6. Confirm that the required application permissions show in the Configured permissions section
     
  7. Click Grant admin consent for... to add administrator consent for each permission.
     

Granting ScalePad application access

Client secrets, also known as application passwords, are secret strings the application uses to prove its identity when it requests a token.

  1. Within the created application, click Certificates & secrets in the left navigation panel, under Manage.
     
  2. In the Client secrets section, click the New client secret button.

     
  3. Add a description and expiry for the client secret. We recommend 6 months.
     
  4. Click the Add button.
     
  5. Copy and save the Client secret Value, as this value is required to integrate with ScalePad.

     

Important:

  • Copy and save the Client Secret Value immediately. It won't be available once you navigate away from the page, and you'll need to generate a new one.
     
  • Ensure you copy the Value and not the Secret ID. Secret ID is just an identifier for the credential; it isn't the value required for integrating with ScalePad.
 

Authentication steps

Azure portal authentication

  1. Within the created application, click Authentication in the left navigation panel under Manage.
     
  2. Under Platform configurations, click Add a platform and choose Web. (If Web already exists, click Add URI)
     
  3. Enter the redirect URI as follows:
    • https://app.scalepad.com/account/integration/oauth
       
  4. Click Configure
     
  5. Under Supported account types, ensure Single Tenant Only is selected.

Adding credentials to ScalePad

  1. Within ScalePad, navigate to the Microsoft 365 single tenant add integration page and fill in the following information gathered previously:
    • Azure tenant ID
    • Azure application (client) ID
    • Azure Client Secret


       
  2. Click Connect now.
     
  3. After the page has been saved, click Authorize, which will open a popup to a Microsoft authorization page to run through.

Choosing which client receives the data

A single-tenant integration brings in one Microsoft 365 tenant. ScalePad suggests a client for it by matching the tenant's name in Microsoft 365 to your client names. If the names are too different, the tenant's data can go to another client or to a new client.

To choose the client yourself:

  1. Open the ScalePad Integration Center and go to Map clients.
  2. Wait for discovery to find the tenant.
  3. In the tenant's row, select the ScalePad client that should receive the data, and accept the mapping.
  4. Click Save and sync now.

For more on mapping options and defaults, see Client Mapping: Connect clients from your integration to clients in ScalePad.

Sync timing

After you authorize the integration, ScalePad starts the first sync. The integration can show as connected and healthy before your client's Microsoft 365 data is ready.

The first sync can take up to 48 hours. This is expected, and you don't need to do anything during that time.

Note: Until the first sync finishes, the client's Microsoft 365 page shows a message that the integration hasn't been configured. This message goes away once the client's data has synced. You don't need to connect the integration again.  

If Microsoft 365 data still doesn't appear under Assets > Microsoft 365 after 48 hours, check which client the tenant is mapped to in Map clients. If it's mapped to the right client, contact our support team.


Any questions? Reach out to our ScalePad CS support team by submitting a support ticket.
:sparkles: NEW :sparkles: Join our MSP Power-Ups - Free 15-minute micro-workshops + live Q&A with our ScalePad CS experts. Sign up here to reserve your spot.

Related to

Was this article helpful?

Yes! No