Entra ID Groups with Left / Expired Members
The question it answers: Which groups still have members whose employee leave date has passed, and which ones?
At a glance
Section titled “At a glance”| Where in the app | Entra ID › Groups › Groups With Expired / Left Members |
| 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.groups.expired-left-members |
Columns
Section titled “Columns”| Column | Key | Type |
|---|---|---|
| Display Name | DisplayName | Text |
| Description | Description | Text |
| Left/Expired Member Count | Members.Count | Number |
| Left/Expired Members | Members | Text |
| Expiration Date Time | ExpirationDateTime | DateTime |
| Security Group | SecurityEnabled | YesNo |
| Synchronised | OnPremisesSyncEnabled | YesNo |
| Membership Rule | MembershipRule | Text |
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 | |
Group.Read.All | Microsoft Graph | Read all groups |
Data sources it reads
GET /v1.0/users?$select=...,employeeLeaveDateTimeGET /v1.0/groups?$expand=membersGET /v1.0/groups?$expand=owners
Through the API and MCP
Section titled “Through the API and MCP”GET /ir-api/v1/reports/entra.groups.expired-left-members?size=100An AI assistant reads it with the MCP tool get_report and the id entra.groups.expired-left-members. The client needs the Read grant for Entra ID. See Using the API.