Announcing the General Availability of Microsoft Graph reporting APIs
Published Dec 18 2017 05:23 PM 52.9K Views
Microsoft

General Availability of Microsoft Graph reporting APIs for retrieving Office 365 product usage data

The usage reports in the Office 365 admin center enable admins to understand their company's usage across the Office 365 services. However, many of you have existing reporting solutions such as a company reporting application or a web portal in place. To assure that you can monitor your IT services in one unified location, the usage reporting APIs complement the usage reports and allow organizations and independent software vendors to incorporate Office 365 usage data into their existing reporting solutions. Using these APIs, you can retrieve the data available in all of the usage reports, including organization level summaries per service, entity level (user, sites, accounts) usage information for reporting periods of the last 7/30/90/180 days, and daily activity aggregates.

 

Get started with the new APIs

The new APIs are available now, and any user with global admin, product admin rights (for Exchange, Skype for Business and SharePoint), or a reports reader role can retrieve data through these APIs.

 

You can leverage the Microsoft Graph documentation for the reporting API and submit feature requests by asking or voting on an idea on UserVoice. Please submit questions by posting them on Stack Overflow and tagging microsoftgraph.

 

With this announcement, we are announcing the deprecation of the following APIs within the Office 365 Reporting Web Service: ConnectionbyClientType, ConnectionbyClientTypeDetail, CsActiveUser, CsAVConferenceTime, CsP2PAVTime, CsConference, CsP2PSession, GroupActivity, MailboxActivity, GroupActivity, MailboxUsage, MailboxUsageDetail, StaleMailbox and StaleMailboxDetail.

 

We will remove these APIs, as well as any related PowerShell cmdlets, on January 29, 2018.

If you are currently using APIs or any of the related PowerShell cmdlets from the Office 365 Reporting Web Service, please start planning the migration of any subsystems within your organization.

 

Below is a summary of the APIs and cmdlets that will be deprecated.

Office 365 Reporting web service

reference page

Office 365 reporting-related

Windows PowerShell cmdlets

Description

MS Graph Replacement

CsActiveUser* reports

Get-CsAVConferenceTimeReport

The number of active, logged-in Lync Online users during the reporting period

This method is being deprecated as of January 29, 2018. It is replaced by the new MS Graph Reporting API available at

 

https://developer.microsoft.com/en-us/graph/docs/api-reference/v1.0/resources/skype_for_business_act...

CsAVConferenceTime* reports

Get-CsActiveUserReport

The amount of time logged-in organization users participated in Lync Online conferences during the reporting period

This method is being deprecated as of January 29, 2018. It is replaced by the new MS Graph Reporting API available at

https://developer.microsoft.com/en-us/graph/docs/api-reference/v1.0/resources/skype_for_business_org...

 

https://developer.microsoft.com/en-us/graph/docs/api-reference/v1.0/resources/skype_for_business_par...

 

https://developer.microsoft.com/en-us/graph/docs/api-reference/v1.0/resources/skype_for_business_pee...

CsP2PAVTime* reports

Get-CsP2PAVTimeReport

 

Get-CsClientDeviceReport

 

 

View statistics about the client devices that connected to Skype for Business Online in your cloud-based organization.

These methods are being deprecated as of January 29, 2018. They are being replaced by the new MS Graph Reporting API available at

 

https://developer.microsoft.com/en-us/graph/docs/api-reference/v1.0/resources/skype_for_business_dev...

Get-CsClientDeviceDetailReport

View statistics about the number of peer-to-peer sessions and conferences by users and devices that connected to Skype for Business Online in your cloud-based organization.

CsConference* reports

Get-CsConferenceReport

The count of Lync Online conferences and peer-to-peer sessions during the reporting period.

This method is being deprecated as of January 29, 2018. It is replaced by the new MS Graph Reporting API available at

 

https://developer.microsoft.com/en-us/graph/docs/api-reference/v1.0/resources/skype_for_business_org...

 

https://developer.microsoft.com/en-us/graph/docs/api-reference/v1.0/resources/skype_for_business_par...

 

https://developer.microsoft.com/en-us/graph/docs/api-reference/v1.0/resources/skype_for_business_pee...

CsP2PSession* reports

Get-CsP2PSessionReport

 

Get-CsUserActivitiesReport

View number and type of activities that a user participated in while connected to Skype for Business Online in your cloud-based organization.

This method is being deprecated as of January 29, 2018. It is replaced by the new MS Graph Reporting API available at

 

https://developer.microsoft.com/en-us/graph/docs/api-reference/v1.0/api/reportroot_getskypeforbusine...

 

Get-CsUsersBlockedReport

View Skype for Business Online users who have been blocked due to fraudulent call activities.

This method is being deprecated as of January 29, 2018. There is no MS Graph replacement.

 

Get-CsPSTNConferenceTimeReport

Show the number of minutes that Skype for Business Online users spent in dial-in or dial-out conferences.

This method is being deprecated as of January 29, 2018. There is no MS Graph replacement.

 

Get-CsPSTNUsageDetailReport

View public switched telephone network (PSTN) usage details for Skype for Business Online users.

This method is being deprecated as of January 29, 2018. There is no MS Graph replacement.

ConnectionbyClientType* reports

Get-ConnectionByClientTypeReport

The number and types of email client-access methods used by the organization's users during the reporting period. For example, Outlook Web Access, Exchange Web services, and so on.

This method is being deprecated as of January 29, 2018. It is replaced by the new MS Graph Reporting API available at  https://developer.microsoft.com/en-us/graph/docs/api-reference/v1.0/resources/email_app_usage_report...

ConnectionbyClientTypeDetail* reports

Get-ConnectionByClientTypeDetailReport

MailboxActivity* reports

 

GroupActivity* reports

Get-MailboxActivityReport

 

Get-GroupActivityReport

Office 365 users created and deleted, summarized over the indicated time periods. Active Directory Domain Services (AD DS) replication can sometimes delay this information up to a day.

This method is being deprecated as of January 29, 2018. It is replaced by the new MS Graph Reporting API available at

 

https://developer.microsoft.com/en-us/graph/docs/api-reference/v1.0/resources/mailbox_usage_reports

 

https://developer.microsoft.com/en-us/graph/docs/api-reference/v1.0/resources/office_365_groups_acti...

 

Get-ExternalActivityByDomainReport  

 

This method is being deprecated as of January 29, 2018. There is no MS Graph replacement.

 

Get-ExternalActivityByUserReport

 

This method is being deprecated as of January 29, 2018. There is no MS Graph replacement.

 

Get-ExternalActivityReport

 

This method is being deprecated as of January 29, 2018. There is no MS Graph replacement.

 

Get-ExternalActivitySummaryReport

 

 

This method is being deprecated as of January 29, 2018. There is no MS Graph replacement.

 

Get-LicenseVsUsageSummaryReport   

 

To retrieve a report that identifies the number of active users for installed software licenses (workloads).

This method is being deprecated as of January 29, 2018. There is no MS Graph replacement.

MailboxUsage report

Get-MailboxUsageReport

Summary and detailed statistics about organization user mailboxes.

This method is being deprecated as of January 29, 2018. It is replaced by the new MS Graph Reporting API available at

 

https://developer.microsoft.com/en-us/graph/docs/api-reference/v1.0/resources/mailbox_usage_reports

MailboxUsageDetail report

Get-MailboxUsageDetailReport

MailDetail report

Get-MailDetailReport

 

This method will continue to work as expected and is not impacted by this deprecation

MailDetailDlpPolicy report

Get-MailDetailDlpPolicyReport

 

This method will continue to work as expected and is not impacted by this deprecation

MailDetailMalware report

Get-MailDetailMalwareReport

 

This method will continue to work as expected and is not impacted by this deprecation

MailDetailSpam report

Get-MailDetailSpamReport

 

This method will continue to work as expected and is not impacted by this deprecation

MailDetailTransportRule report

Get-MailDetailTransportRuleReport

 

This method will continue to work as expected and is not impacted by this deprecation

MailFilterList report

Get-MailFilterListReport

 

This method will continue to work as expected and is not impacted by this deprecation

MailTraffic report

Get-MailTrafficReport

 

This method will continue to work as expected and is not impacted by this deprecation

MailTrafficPolicy report

Get-MailTrafficPolicyReport

 

This method will continue to work as expected and is not impacted by this deprecation

MailTrafficSummary reports

Get-MailTrafficSummaryReport

 

This method will continue to work as expected and is not impacted by this deprecation

MailTrafficTop report

Get-MailTrafficTopReport

 

This method will continue to work as expected and is not impacted by this deprecation

MessageTrace report

Get-MessageTrace

 

This method will continue to work as expected and is not impacted by this deprecation

MessageTraceDetail report

Get-MessageTraceDetail

 

This method will continue to work as expected and is not impacted by this deprecation

MxRecordReport report

Get-MxRecordReport

 

This method will continue to work as expected and is not impacted by this deprecation

 

Get-O365ClientOSReport

Get a summary report of client operating system use.

This method is being deprecated as of January 29, 2018. There is no MS Graph replacement.

 

Get-O365ClientOSDetailReport

Get a detailed report of client operating system use.

This method is being deprecated as of January 29, 2018. There is no MS Graph replacement.

 

Get-O365ClientBrowserReport

Get a summary report of client browser use.

This method is being deprecated as of January 29, 2018. There is no MS Graph replacement.

 

Get-O365ClientBrowserDetailReport

Get a detailed report of client browser use.

This method is being deprecated as of January 29, 2018. There is no MS Graph replacement.

OutboundConnectorReport report

Get-OutboundConnectorReport

 

This method will continue to work as expected and is not impacted by this deprecation.

 

Get-PartnerClientExpiringSubscriptionReport

 

This method is being deprecated as of January 29, 2018. There is no MS Graph replacement.

 

Get-PartnerCustomerUserReport

 

This method is being deprecated as of January 29, 2018. There is no MS Graph replacement.

 

Get-ScorecardClientDeviceReport

 

This method is being deprecated as of January 29, 2018. There is no MS Graph replacement.

 

Get-ScorecardClientOSReport

 

This method is being deprecated as of January 29, 2018. There is no MS Graph replacement.

 

Get-ScorecardClientOutlookReport

 

 

This method is being deprecated as of January 29, 2018. There is no MS Graph replacement.

 

Get-ScorecardMetricsReport

 

This method is being deprecated as of January 29, 2018. There is no MS Graph replacement.

ServiceDeliveryReport report

Get-ServiceDeliveryReport

 

This method will continue to work as expected and is not impacted by this deprecation

 

Get-SPOActiveUserReport

View statistics about Microsoft SharePoint Online users in your cloud-based organization.

 This method is being deprecated as of January 29, 2018. It is replaced by the new MS Graph Reporting API available at

 

https://developer.microsoft.com/en-us/graph/docs/api-reference/v1.0/api/reportroot_getsharepointacti...

 

Get-SPOOneDriveForBusinessFileActivityReport   

 

This method is being deprecated as of January 29, 2018. It is replaced by the new MS Graph Reporting API available at

 

https://developer.microsoft.com/en-us/graph/docs/api-reference/v1.0/api/reportroot_getonedriveactivi...

 

Get-SPOOneDriveForBusinessUserStatisticsReport  

 

This method is being deprecated as of January 29, 2018. It is replaced by the new MS Graph Reporting API available at

 

https://developer.microsoft.com/en-us/graph/docs/api-reference/v1.0/api/reportroot_getonedriveactivi...

 

Get-SPOSkyDriveProDeployedReport

View the number of My Site sites in your cloud-based organization.

 This method is being deprecated as of January 29, 2018. It is replaced by the new MS Graph Reporting API available at

 

https://developer.microsoft.com/en-us/graph/docs/api-reference/v1.0/api/reportroot_getonedriveactivi...

 

Get-SPOSkyDriveProStorageReport

View statistics about the space taken up (in MB) by My Sites in your cloud-based organization.

This method is being deprecated as of January 29, 2018. It is replaced by the new MS Graph Reporting API available at

 

https://developer.microsoft.com/en-us/graph/docs/api-reference/v1.0/api/reportroot_getonedriveusages...

 

 

 

Get-SPOTeamSiteDeployedReport

View the number of My Site sites in your cloud-based organization.

 

 This method is being deprecated as of January 29, 2018. It is replaced by the new MS Graph Reporting API available at

 

https://developer.microsoft.com/en-us/graph/docs/api-reference/v1.0/api/reportroot_getsharepointsite...

 

Get-SPOTeamSiteStorageReport

View statistics about the space taken up (in MB) by team sites in your cloud-based organization.

 This method is being deprecated as of January 29, 2018. It is replaced by the new MS Graph Reporting API available at

 

https://developer.microsoft.com/en-us/graph/docs/api-reference/v1.0/api/reportroot_getsharepointsite...

 

Get-SPOTenantStorageMetricReport

View statistics about the space taken up (in MB) by all sites in for your cloud-based organization.

 This method is being deprecated as of January 29, 2018. It is replaced by the new MS Graph Reporting API available at

 

 https://developer.microsoft.com/en-us/graph/docs/api-reference/v1.0/api/reportroot_getsharepointsite...

StaleMailbox report

Get-StaleMailboxReport

The details and summary counts of mailboxes that have not been accessed within the indicated time period.

This method is being deprecated as of January 29, 2018. It is replaced by the new MS Graph Reporting API available at

 

https://developer.microsoft.com/en-us/graph/docs/api-reference/v1.0/resources/email_activity_reports

StaleMailboxDetail report

Get-StaleMailboxDetailReport

 

16 Comments
Deleted
Not applicable

Thanks for the heads-up

Many thanks @Brent Davis for the great post !

Ahem, so why the /beta endpoint, still? :)

Microsoft

@Vasil Michev, we have updated the content, thank you! Beta endpoint is the place where we publish previews of our APIs and allow us making necessary changes based on feedback. This is part of an on-going effort, so we will continue adding new APIs for new reports, and customers will see them first in beta. The APIs released to V1 will be kept intact in terms of API signature. 

 

Deleted
Not applicable

 

Thanks for this post, lots of good stuff in the Graph API, but not a great deal of time for people who are using the existing API or PowerShell cmdlets.

 

Anything that relies on an API requires some development changes, usually, this has a lead time, particularly for third-party products.
IT Pro’s may well be using PowerShell cmdlets but don’t fully understand how to achieve the same outcome via an API.

 

I've had a quick look at the Skype for Business coverage and written up my notes here:

http://tomtalks.uk/2017/12/microsoft-graph-api-office-365-usage-reporting-ga-existing-api-powershell...

 

thanks

 

Tom

Microsoft

@Brent Davis great post and glad to see the v1 end points lit up.  Where can we discuss data questions?  The API's are a great start but I'm looking for a relationship model or how the data could be collated to derive the same aggregate values.   An example of inconsistencies occurring between https://developer.microsoft.com/en-us/graph/docs/api-reference/beta/resources/onedrive_activity_repo... (User detail vs. User Counts).  A bit of documentation on how to summarize the two would be helpful.

Copper Contributor

1. Is it possible next time you plan to deprecate some functionalities to give the end users more that 60 days time?

2. Do you have some roadmap and or strategy where the new data that applies to the usage and utilization of the o365 services will be published to the Graph or O365 reporting services?

 

Copper Contributor

Either there were issues or some of this data was moved previous to this date.

And I 100 % agree with Tom as not a great deal of people are using the Graph API

Copper Contributor

What about the reports being deprecated  with no replacement  ?

How do we get those details?

Copper Contributor

Hello @Brent Davis , today (Feb 8th 2018) the O365 roadmap annouced the "General Availability of Microsoft Graph Reporting APIs and Office 365 adoption content pack APIs", (Feature ID: 15033).

 

Where can I find information on how to use "Office 365 adoption content pack APIs" with PowerBI ?

 

Thanks in advance.

Microsoft

@Qais ASSEF, the usage reporting API documentation can be found here:

 

https://developer.microsoft.com/en-us/graph/docs/api-reference/v1.0/resources/report

 

Thanks,

Brent

Brass Contributor

@Brent Davis - the client OS and browser reports were helpful in the past, I recall using them as data points when making decisions within our organization previously.  I went to look for them in PowerShell and then the Graph API today and saw they were deprecated, too bad, I wish you'd reconsider including them.

Copper Contributor

Why did Microsoft deprecate (in this case remove, not actually deprecate) functionality without a replacement?

 

I'm sure a lot of the other functionality that was removed is probably useful as well, but specifically, I am interested in the following powershell commands:

 

Get-CsPSTNUsageDetailReport

and

Get-CsPSTNConferenceTimeReport

 

If you're going to remove the Powershell functionality, why not have a replacement for it in the Graph API?  The manual process is not very useful.  It requires a lot of manual work to get the results we need:

  1. Log into office.com
  2. Click on admin applet
  3. Expand admin centers
  4. Click on teams admin center
  5. Click on legacy admin center
  6. Click on reports
  7. Click on export to Excel
  8. Open file in excel
  9. Extract lines specific to extensions that user is interested in
  10. Copy lines to new spreadsheet
  11. Email spreadsheet to end user

That's a lot of work to do once a week.

 

All of this is needed because for whatever reason there isn't any granular permission levels for the Teams/Skype for Business info.  Non-admin users can't access it, and it's an allow all access to account, or allow no access to account approach.  I don't want general staffers having access to everything in Teams and Skype for Business.  Even then, if they only had access to the call logs, I don't want them having access to the call logs for the business owner.

 

When will you have the functionality of this Powershell function in the Graph API?

Copper Contributor

What is the replacement for Get-CsPSTNUsageDetailReport. I need an automated process without human intervention.

 

Copper Contributor

Is there any plan to support Modern Authentication for Office 365 reporting webservice? Is there any roadmap to provide alternatives?

Brass Contributor
Version history
Last update:
‎Jan 23 2018 09:27 AM
Updated by: