Forum Discussion
Alex Massey
Nov 15, 2022Copper Contributor
Automation of MailFlow Status Report via REST
Hi, I am looking for a way to automate the pulling of the MailFlow Status report but I've not been able to find anything that works. There appears to be an old reporting service on https://reports.of...
VasilMichev
Nov 15, 2022MVP
It's not going away yet, in fact they added OAuth support for it recently: https://www.michev.info/Blog/Post/4067/modern-authentication-oauth-support-for-the-reporting-web-service-in-office-365
The alternative is to get the full span of message trace events and built the reports yourself.
The alternative is to get the full span of message trace events and built the reports yourself.
- Alex MasseyNov 15, 2022Copper Contributor
VasilMichev Do you know where the updated/latest documentation is so I can figure out whether or not the MailFlowStatus report is going to give me the specific details I need and what odata filters I can use to set a start & end date for the data or whether I need to message trace every message and build the numbers myself. So far after just playing around with the endpoints I cant figure out how to get more than 7 days worth of data. Until I read your OAuth notes I didn't even know the $metadata endpoint existed. Seems very weird that the modern UI reports are not available via any kind of documented API or on the Graph.
- VasilMichevNov 16, 2022MVPThe UI reports are not based on this data afaik, they use an internal API we don't have access to. The documentation for the old reporting web service hasn't changed, the only bits they've updated in the past few years are the OAuth support ones. https://learn.microsoft.com/en-us/previous-versions/office/developer/o365-enterprise-developers/jj984342(v=office.15)
- Alex MasseyNov 16, 2022Copper Contributor
Hmm getting a 404 on that link, looks like it may not have copied all of it.
In that case do you know what filter options I have to do on the MailFlowStatus to get say 01/10/22 to 31/10/22 stats? Every option I try ends up as a filter error based on random articles I've found online (they are however for different reports so I'm not surprised the options are slightly different). Making random attempts along the following lines hasn't yielded any results
https://reports.office365.com/ecp/ReportingWebService/Reporting.svc/MailFlowStatus?$format=json&$filter=StartDate%20eq%20%2701/10/2022%27%20and%20EndDate%20eq%20%2731/10/2022%27