Directory Data Quality
The question it answers: Which enabled members are missing a department, job title, manager or usage location, or share a display name?
Dynamic groups, licence assignment, access reviews by manager, org charts and every department report in this console depend on a few user attributes being filled in. Licensed users without a usage location cannot receive some licences at all and are listed first.
At a glance
Section titled “At a glance”| Where in the app | Entra ID › Identity Lifecycle › Directory Data Quality |
| Workload | Entra ID |
| Kind | Table |
| Data | Built from the tenant data IntensiveReports keeps in memory and refreshes in the background, so it opens at once. |
| Licence | No extra licence needed. |
| Report id (API and MCP) | entra.lifecycle.directory-data-quality |
Columns
Section titled “Columns”| Column | Key | Type |
|---|---|---|
| User | DisplayName | Link |
| Missing | Missing | Status |
| Department | Department | Text |
| Job title | JobTitle | Text |
| Usage location | UsageLocation | Text |
| Manager | HasManager | YesNo |
| Licensed | Licensed | YesNo |
| UPN | UserPrincipalName | Text |
Filters
Section titled “Filters”| Filter | Key (API) | On when the page opens |
|---|---|---|
| Only users with missing data | missing | Yes |
What it needs
Section titled “What it needs”Licence: No extra licence needed.
Application permissions on the IntensiveReports app registration (all permissions):
| Permission | API | What it allows | Note |
|---|---|---|---|
User.Read.All | Microsoft Graph | Read all users’ full profiles | |
User-LifeCycleInfo.Read.All | Microsoft Graph | Read all users’ lifecycle information |
Data sources it reads
GET /v1.0/users (department, jobTitle, usageLocation, assignedLicenses)GET /v1.0/users?$select=id&$expand=manager($select=id)
Through the API and MCP
Section titled “Through the API and MCP”GET /ir-api/v1/reports/entra.lifecycle.directory-data-quality?size=100GET /ir-api/v1/reports/entra.lifecycle.directory-data-quality?filter=missingAn AI assistant reads it with the MCP tool get_report and the id entra.lifecycle.directory-data-quality. The client needs the Read grant for Entra ID. See Using the API.