Connect your Microsoft 365 tenant to Viio to pull a live directory, surface real-world activity, and spot idle or over-assigned licences—so you can trim spend without slowing anyone down.
Capabilities
Capability | What Viio pulls from Microsoft 365 |
✅ Users | Display name, primary email, Azure AD status, roles, last sign-in time |
✅ Usage | Last activity across Exchange, Teams, SharePoint, OneDrive and more, plus monthly sign-in counts (Graph usage reports) |
✅ Plans & Licences | Subscription (SKU) assigned to each user, licence consumption and seats owned |
Prerequisites
You must be a Global Administrator (or another role that can grant tenant-wide consent) to authorise the app.
Reports privacy setting – in Microsoft 365 Admin Center → Settings → Org settings → Reports, clear the checkbox Display concealed user, group, and site names in all reports. This lets Graph return user-level data. Microsoft Learn
Be ready to sign in at
login.microsoftonline.com
with MFA if it’s enforced.Viio requests the following Microsoft Graph application permissions:
Reports.Read.All
– read usage reports Microsoft LearnDirectory.Read.All
– read users and licences Microsoft Learn
Setup
Go to Viio → Integrations and choose Microsoft 365.
Click Connect Microsoft 365.
Sign in with a Global Admin account. Review the permission consent screen and click Accept.
Back in Viio, the first sync starts automatically and typically finishes within 15 minutes. Progress shows on the integration tile.
Disconnecting
• In Viio, open Installed apps → Microsoft 365 → Remove.
• Or revoke the “Viio” enterprise application from Entra ID → Enterprise applications.
Troubleshooting & FAQ
Symptom | Quick fix |
User column shows “Anonymous” | The privacy checkbox is still ticked. Uncheck it (see Prerequisites) and wait for the next sync. Microsoft Learn |
No usage data | Make sure you granted Reports.Read.All. Re-authorise the integration if unsure. |
“403 Forbidden” on connect | The signer isn’t a Global Admin or equivalent. Sign in with the correct role and try again. |
Data stopped updating | Admin revoked consent or token expired (after 90 days of no use). Reconnect Microsoft 365 from Viio. |
Technical details
Authentication – Viio uses Azure AD OAuth 2.0 with the scopes above; tokens refresh automatically.
Primary Graph endpoints
GET /users
– full user roster Microsoft LearnGET /subscribedSkus
– list of purchased SKUs and seat counts Microsoft LearnGET /reports/getOffice365ActiveUserDetail(period='D30')
– workload-level activity per user Microsoft Learn
Data cadence – Viio syncs Microsoft 365 every 24 hours
Viio automatically honours Microsoft Graph rate limits and backs off if thresholds are hit.