Skip to content

Guest Lifecycle

The question it answers: Which guest accounts are stale or never used, and how much can they still reach through group membership?

Every guest account with how long it has existed, when it was last used, and how much it can still reach through group and team membership. Built from cached users, groups and sign-in activity.

Where in the appEntra ID › Users › Guest Lifecycle
WorkloadEntra ID
KindTable
DataBuilt from the tenant data IntensiveReports keeps in memory and refreshes in the background, so it opens at once.
LicenceMicrosoft Entra ID P1 - required for sign-in activity. Without it guests are still listed, but ‘last activity’ and the stale buckets stay empty.
Report id (API and MCP)entra.users.stale-guests
ColumnKeyType
Display NameDisplayNameLink
User Principal NameUserPrincipalNameText
External domainExternalDomainText
StateStaleStateStatus
Invite stateExternalUserStateText
Age (days)AgeInDaysText
Last activityLastActivityDateTimeDate
GroupsGroupMembershipCountText
Group namesGroupNamesStringText
FilterKey (API)On when the page opens
Show only stale guestsstaleNo
Show only guests with group accesswith-accessNo

Licence: Microsoft Entra ID P1 - required for sign-in activity. Without it guests are still listed, but ‘last activity’ and the stale buckets stay empty.

Application permissions on the IntensiveReports app registration (all permissions):

PermissionAPIWhat it allowsNote
AuditLog.Read.AllMicrosoft GraphRead all audit log data
Directory.Read.AllMicrosoft GraphRead directory data
User.Read.AllMicrosoft GraphRead all users’ full profiles
User-LifeCycleInfo.Read.AllMicrosoft GraphRead all users’ lifecycle information
Group.Read.AllMicrosoft GraphRead all groups
Data sources it reads
  • GET /v1.0/users?$select=signInActivity
  • GET /v1.0/groups
GET /ir-api/v1/reports/entra.users.stale-guests?size=100
GET /ir-api/v1/reports/entra.users.stale-guests?filter=stale

An AI assistant reads it with the MCP tool get_report and the id entra.users.stale-guests. The client needs the Read grant for Entra ID. See Using the API.