Working with the call records API in Microsoft Graph

Important

APIs under the /beta version in Microsoft Graph are subject to change. Use of these APIs in production applications is not supported. To determine whether an API is available in v1.0, use the Version selector.

Call records provide usage and diagnostic information about the calls and online meetings that occur within your organization when using Microsoft Teams or Skype for Business. You can use the call records APIs to subscribe to call records, list call records, and look up call records by IDs. A call record is created after a call or meeting ends and the record is retained for 30 days.

The call records API is defined in the OData sub-namespace, microsoft.graph.callRecords.

Key resource types

Resource Methods
callRecord List callRecords
Get callRecord
directRoutingLogRow getDirectRoutingCalls
participant List participants_v2
pstnBlockedUsersLogRow getPstnBlockedUsersLog
pstnCallLogRow getPstnCalls
pstnOnlineMeetingDialoutReport getPstnOnlineMeetingDialoutReport
segment List sessions
Get callRecord
session List sessions
Get callRecord
smsLogRow getSmsLog

Call record structure

The callRecord entity represents a single peer-to-peer call or a group call between multiple participants, sometimes referred to as an online meeting.

A peer-to-peer call contains a single session between the two participants in the call. Group calls contain one or more session entities. In a group call, each session is between the participant and a service endpoint.

Each session contains one or more segment entities. A segment represents a media link between two endpoints. For most calls, only one segment will be present for each session, however sometimes there may be one or more intermediate endpoints.

Image of a the data structure representing a complete call record

In the diagram above, the numbers denote how many children of each type can be present. For example, a 1..N relationship between a callRecord and a session means one callRecord instance can contain one or more session instances. Similarly, a 1..N relationship between a segment and a media means one segment instance can contain one or more media streams.