PSTN Usage & Direct Routing Failures (30 days)
The question it answers: How many PSTN minutes did each user and destination use in the last 30 days, and which Direct Routing calls failed?
How many PSTN minutes does each user and destination use - the Calling Plan pool and pay-as-you-go spend - and which Direct Routing calls fail on which SBC with which SIP code.
At a glance
Section titled “At a glance”| Where in the app | Tenant › Teams Voice, Power Platform & Copilot › PSTN Usage & DR Failures |
| 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). |
| Licence | Teams Phone with Calling Plans, Operator Connect or Direct Routing. |
| Report id (API and MCP) | tenant.collaboration.pstn-usage |
Columns
Section titled “Columns”| Column | Key | Type |
|---|---|---|
| Severity | Severity | Status |
| View | Category | Text |
| User / destination / SBC | Subject | Link |
| Check | Setting | Text |
| Calls / minutes / charge | Value | Text |
| Finding | Finding | Text |
| Detail | Detail | Text |
| Last call | When | Date |
| Minutes / failures | 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 with Calling Plans, Operator Connect or Direct Routing.
Application permissions on the IntensiveReports app registration (all permissions):
| Permission | API | What it allows | Note |
|---|---|---|---|
CallRecords.Read.All | Microsoft Graph | Read all call records |
Data sources it reads
GET /v1.0/communications/callRecords/getPstnCalls(fromDateTime,toDateTime)GET /v1.0/communications/callRecords/getDirectRoutingCalls(fromDateTime,toDateTime)
Through the API and MCP
Section titled “Through the API and MCP”GET /ir-api/v1/reports/tenant.collaboration.pstn-usage?size=100An AI assistant reads it with the MCP tool get_report and the id tenant.collaboration.pstn-usage. The client needs the Read grant for Teams and collaboration. See Using the API.