callRecord: getPstnCalls
Namespace: microsoft.graph.callRecords
Get a log of PSTN calls as a collection of pstnCallLogRow entries.
Note
This API doesn't return information for Telstra or Softbank calling plans.
This API is available in the following national cloud deployments.
Global service | US Government L4 | US Government L5 (DOD) | China operated by 21Vianet |
---|---|---|---|
✅ | ✅ | ✅ | ❌ |
Permissions
Choose the permission or permissions marked as least privileged for this API. Use a higher privileged permission or permissions only if your app requires it. For details about delegated and application permissions, see Permission types. To learn more about these permissions, see the permissions reference.
Permission type | Least privileged permissions | Higher privileged permissions |
---|---|---|
Delegated (work or school account) | Not supported. | Not supported. |
Delegated (personal Microsoft account) | Not supported. | Not supported. |
Application | CallRecords.Read.All | Not available. |
HTTP request
GET /communications/callRecords/getPstnCalls(fromDateTime={fromDateTime},toDateTime={toDateTime})
Function parameters
In the request URL, provide the following query parameters with values. The following table shows the parameters that can be used with this function.
Parameter | Type | Description |
---|---|---|
fromDateTime | DateTimeOffset | Start of time range to query. UTC, inclusive. Time range is based on the call start time. |
toDateTime | DateTimeOffset | End of time range to query. UTC, inclusive. |
Important
The fromDateTime and toDateTime values cannot be more than a date range of 90 days.
Request headers
Name | Description |
---|---|
Authorization | Bearer {token}. Required. Learn more about authentication and authorization. |
Response
If successful, this function returns a 200 OK
response code and a collection of pstnCallLogRow entries in the response body.
If there are more than 1,000 entries in the date range, the body also includes an @odata.nextLink
with a URL to query the next page of call entries. The last page in the date range doesn't have @odata.nextLink
. For more information, see paging Microsoft Graph data in your app.
Example
The following example shows getting a collection of records for PSTN calls that occurred in the specified date range. The response includes "@odata.count": 1000
to enumerate the number of records in this first response, and @odata.nextLink
to get records beyond the first 1,000. For readability, the response shows only a collection of one record. Assume there are more than 1,000 calls in that date range.
Request
The following example shows a request.
GET https://graph.microsoft.com/v1.0/communications/callRecords/getPstnCalls(fromDateTime=2019-11-01,toDateTime=2019-12-01)
Response
The following example shows the response.
Note: The response object shown here might be shortened for readability.
HTTP/1.1 200 OK
{
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#Collection(microsoft.graph.callRecords.pstnCallLogRow)",
"@odata.count": 1000,
"value": [
{
"id": "9c4984c7-6c3c-427d-a30c-bd0b2eacee90",
"callId": "[email protected]",
"userId": "db03c14b-06eb-4189-939b-7cbf3a20ba27",
"userPrincipalName": "[email protected]",
"userDisplayName": "Richard Malk",
"startDateTime": "2019-11-01T00:00:08.2589935Z",
"endDateTime": "2019-11-01T00:03:47.2589935Z",
"duration": 219,
"charge": 0.00,
"callType": "user_in",
"currency": "USD",
"calleeNumber": "+1234567890",
"usageCountryCode": "US",
"tenantCountryCode": "US",
"connectionCharge": 0.00,
"callerNumber": "+0123456789",
"destinationContext": null,
"destinationName": "United States",
"conferenceId": null,
"licenseCapability": "MCOPSTNU",
"inventoryType": "Subscriber",
"operator": "Microsoft",
"callDurationSource": "microsoft"
}
],
"@odata.nextLink": "https://graph.microsoft.com/v1.0/communications/callRecords/getPstnCalls(from=2019-11-01,to=2019-12-01)?$skip=1000"
}