Teams Phone Emergency Address Compliance
The question it answers: Which users with a phone number have no emergency address or location?
Every phone number assigned to a user needs an emergency location so an emergency call reaches the right responders with the caller’s address. In the US this is required by law (Kari’s Law, RAY BAUM’S Act); similar rules exist elsewhere. Direct Routing users can be covered by dynamic emergency calling instead.
At a glance
Section titled “At a glance”| Where in the app | Tenant › Teams Voice, Power Platform & Copilot › Emergency Addresses (E911) |
| Workload | Teams and collaboration |
| Kind | Findings list · dashboard tile |
| Data | Read from Microsoft 365 when someone first opens it, then kept for the report cache lifetime (Settings > Data & cache, 1 hour unless changed). It reads through PowerShell (Exchange Online or SharePoint Online), so the first load takes longer than a Graph report. |
| Licence | Teams Phone. |
| Report id (API and MCP) | tenant.collaboration.emergency-addresses |
Columns
Section titled “Columns”| Column | Key | Type |
|---|---|---|
| Severity | Severity | Status |
| Number type | Category | Text |
| User / address | Subject | Link |
| Check | Setting | Text |
| Number / validation | Value | Text |
| Finding | Finding | Text |
| Emergency address | Detail | Text |
| Date | When | Date |
| Count | Number | Number |
A findings list hides columns that no row fills. Severity is Critical, Serious, Warning, OK or Info; rows rated Critical, Serious or Warning need attention (Working with findings).
What it needs
Section titled “What it needs”Licence: Teams Phone.
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 |
Roles and other setup:
- Teams PowerShell app-only (certificate) with the Teams Administrator role or equivalent
Data sources it reads
Get-CsPhoneNumberAssignmentGet-CsOnlineLisCivicAddressGET /v1.0/users (cached)
Through the API and MCP
Section titled “Through the API and MCP”GET /ir-api/v1/reports/tenant.collaboration.emergency-addresses?size=100An AI assistant reads it with the MCP tool get_report and the id tenant.collaboration.emergency-addresses. The client needs the Read grant for Teams and collaboration. See Using the API.