This is the Scenario:
In the same Azure tenant, I used one account (user_1_address
) to send emails to the other account (user_2_address
) using outlook (o365).
I sent 3 emails, one where user_2_address
is BCCed, one CCed, and one when it's the TO recipient.
I'm using Microsoft graph API to get a list of emails received by user_2_address
in a specific time range, using this query:
https://graph.microsoft.com/v1.0/users/{<user_2_id>}/messages?$filter=
receivedDateTime ge <some date> and receivedDateTime lt <some other date>
and isDraft eq false
and sender/emailAddress/address ne '<user_2_address>'
I'm getting all the three emails user_2_address
had received from user_1_address
. But in the email user_2 was BCCed the bccRecipients
list is empty, when it should contain user_2_address
:(
I have seen this question about sending an email from Gmail and BCC an outlook user:
Microsoft graph API: empty BCC field
In that case, also the bccRecipients
list was empty, but it was resolved by saying the BCC is removed when sending the emails from an external source (Gmail in that case). When for me it's not an external source - both users are using outlook in the same tenant.
So my questions are:
- Is it the desired behaviour, or is it a bug?
- Now, let's say I'm using the query above where I get all emails where the sender is not the
user_2_address
and it's not a draft. Can I assume that every email I get whereuser_2_address
is not in theccRecipients
andtoRecipients
lists - that email was BCCed touser_2_address
?
Thanks!