Identifying Read status of emails in Exchange Online / Office 365

%3CLINGO-SUB%20id%3D%22lingo-sub-236753%22%20slang%3D%22en-US%22%3EIdentifying%20Read%20status%20of%20emails%20in%20Exchange%20Online%20%2F%20Office%20365%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-236753%22%20slang%3D%22en-US%22%3E%3CP%3ESo%20I%20cant%20find%20an%20answer%20to%20this%2C%20Im%20trying%20to%20find%20a%20way%20in%20powershell%20to%20report%20on%20read%20status%20of%20mail%20from%20a%20sender.%3C%2FP%3E%3CP%3E%3CBR%20%2F%3EId%20like%20to%20reiterate%2C%20I%20want%20to%20find%20a%20way%20to%20report%20on%20READ%20STATUS%20of%20mail%20in%20Office%20365%2FExchange%20Online.%3C%2FP%3E%3CP%3E%3CBR%20%2F%3EI%20know%20I%20can%20carry%20out%20Get-MessageTrace%20to%20get%20the%20delivery%20status%20and%20Get-MessageTraceDetail%20.%20I%20know%20you%20can%20use%20Search-MessageTrackingReport%20to%20query%20on%20prem%20solution%20but%20I%20cant%20for%20the%20life%20of%20me%20find%20a%20way%20to%20do%20this%20for%20a%20cloud%20deployment.%3C%2FP%3E%3CP%3E%3CBR%20%2F%3EAccording%20to%20Microsoft%20the%20Search-MessageTrackingReport%20was%20replaced%20with%20Get-MessageTrace%20and%20Get-MessageTraceDetail%20for%20online%20solutions.%20But%20as%20far%20as%20I%20can%20tell%20it%20does%20not%20have%20the%20same%20functionality.%3C%2FP%3E%3CP%3E%3CBR%20%2F%3Eref%3A%20%3CA%20href%3D%22https%3A%2F%2Fpractical365.com%2Fexchange-server%2Ftracking-read-email-messages-exchange-server%2F%22%20target%3D%22_self%22%20rel%3D%22nofollow%20noopener%20noreferrer%22%3ETracking-read-email-messages-exchange-server%3C%2FA%3E%20(shows%20how%20to%20use%20Search-MessageTrackingReport%20to%20identify%20READ%20status.%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-LABS%20id%3D%22lingo-labs-236753%22%20slang%3D%22en-US%22%3E%3CLINGO-LABEL%3EOffice%20365%3C%2FLINGO-LABEL%3E%3CLINGO-LABEL%3EWindows%20PowerShell%3C%2FLINGO-LABEL%3E%3C%2FLINGO-LABS%3E%3CLINGO-SUB%20id%3D%22lingo-sub-268241%22%20slang%3D%22en-US%22%3ERe%3A%20Identifying%20Read%20status%20of%20emails%20in%20Exchange%20Online%20%2F%20Office%20365%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-268241%22%20slang%3D%22en-US%22%3E%3CP%3EYes%2C%20I%20have%20taken%20a%20look%20at%20that%20post%20and%20it%20wasnt%20particularly%20helpful.%20Throwing%20up%20multiple%20bad%20request%20responses%20(400s).%20But%20thanks%20none%20the%20less%2C%20I've%20been%20looking%20for%20an%20answer%20to%20this%20question%20for%20a%20while%20now%20and%20it%20seems%20its%20just%20not%20possibe%20at%20the%20moment.%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-237932%22%20slang%3D%22en-US%22%3ERe%3A%20Identifying%20Read%20status%20of%20emails%20in%20Exchange%20Online%20%2F%20Office%20365%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-237932%22%20slang%3D%22en-US%22%3E%3CP%3EYou%20cannot%20get%20this%20information%20from%20the%20message%20trace%20logs%2C%20they%20only%20cover%20routing%20details.%20If%20you%20need%20the%20total%20numbers%20of%20read%2Funread%20messages%20for%20a%20period%2C%20you%20can%20find%20them%20in%20the%20Usage%20reports%20in%20the%20O365%20Admin%20portal.%20If%20you%20need%20those%20details%20on%20a%20per-message%20basis%2C%20you%20will%20have%20to%20use%20some%20EWS%20based%20script%20(example%3A%20%3CA%20href%3D%22https%3A%2F%2Fblogs.technet.microsoft.com%2Fsanthse%2Fget-readstatus%2F%22%20target%3D%22_blank%22%20rel%3D%22noopener%20noreferrer%22%3Ehttps%3A%2F%2Fblogs.technet.microsoft.com%2Fsanthse%2Fget-readstatus%2F%3C%2FA%3E)%20or%20resort%20to%20other%20workarounds%20such%20as%20using%20the%20Search-Mailbox%20cmdlets%20with%20the%20-LogLevel%20switch.%3C%2FP%3E%3C%2FLINGO-BODY%3E
New Contributor

So I cant find an answer to this, Im trying to find a way in powershell to report on read status of mail from a sender.


Id like to reiterate, I want to find a way to report on READ STATUS of mail in Office 365/Exchange Online.


I know I can carry out Get-MessageTrace to get the delivery status and Get-MessageTraceDetail . I know you can use Search-MessageTrackingReport to query on prem solution but I cant for the life of me find a way to do this for a cloud deployment.


According to Microsoft the Search-MessageTrackingReport was replaced with Get-MessageTrace and Get-MessageTraceDetail for online solutions. But as far as I can tell it does not have the same functionality.


ref: Tracking-read-email-messages-exchange-server (shows how to use Search-MessageTrackingReport to identify READ status.

2 Replies

You cannot get this information from the message trace logs, they only cover routing details. If you need the total numbers of read/unread messages for a period, you can find them in the Usage reports in the O365 Admin portal. If you need those details on a per-message basis, you will have to use some EWS based script (example: https://blogs.technet.microsoft.com/santhse/get-readstatus/) or resort to other workarounds such as using the Search-Mailbox cmdlets with the -LogLevel switch.

Yes, I have taken a look at that post and it wasnt particularly helpful. Throwing up multiple bad request responses (400s). But thanks none the less, I've been looking for an answer to this question for a while now and it seems its just not possibe at the moment.