ExchangeMessageTrace.Read.All
Allows the app to search the email message trace, without a signed-in user.
Permission Details
Search the email message trace
Allows the app to search the email message trace, without a signed-in user.
89b20d8a-76e2-4057-867b-9961f800b9a4
Search the email message trace
Allows the app to search the email message trace on behalf of the signed-in user.
b2e7d27e-14e7-41ad-bb15-a88ceb9c3e90
Properties
Properties is shown from stable Microsoft Graph v1.0 metadata.
| Property | Type | Description |
|---|---|---|
fromIP |
StringNullable |
The source IP address. For incoming messages, this value is the public IP address of the SMTP email server that sent the message. , , Supports $filter (eq). |
id |
String |
The unique identifier for the message trace. , , Supports $filter (eq). |
messageId |
StringNullable |
The Message-ID header field of the message. The format of the Message-ID depends on the messaging server that sent the message. , , Supports $filter (eq). |
receivedDateTime |
DateTimeOffset |
The date and time when the message was received by Exchange Online. The timestamp is in UTC format. , , Supports $filter (ge, le). |
recipientAddress |
StringNullable |
The SMTP email address of the user that the message was addressed to. , , Supports $filter (eq). |
senderAddress |
StringNullable |
The SMTP email address of the user the message was purportedly from. , , Supports $filter (eq). |
size |
Int32 |
The size of the message in bytes. |
status |
exchangeMessageTraceStatus |
The delivery status of the message. The possible values are: gettingStatus, pending, failed, delivered, expanded, quarantined, filteredAsSpam, unknownFutureValue. , , Supports $filter (eq). |
subject |
StringNullable |
The subject line of the message. , , Supports $filter (contains, startsWith, endsWith). |
toIP |
StringNullable |
The destination IP address. For outgoing messages, this value is the public IP address in the resolved MX record for the destination domain. For incoming messages to Exchange Online, this value is blank. , , Supports $filter (eq). |
JSON Representation
JSON representation is shown from stable Microsoft Graph v1.0 metadata.
{
"@odata.type": "#microsoft.graph.exchangeMessageTrace",
"fromIP": "String",
"id": "String (identifier)",
"messageId": "String",
"receivedDateTime": "String (timestamp)",
"recipientAddress": "String",
"senderAddress": "String",
"size": "Int32",
"status": "String",
"subject": "String",
"toIP": "String"
}
Relationships
Relationships is shown from stable Microsoft Graph v1.0 metadata.
| Relationship | Type | Description |
|---|---|---|
status |
exchangeMessageTraceStatus |
Related status data exposed by this resource. |
Graph Methods
Microsoft Graph v1.0 endpoints are mapped directly from refreshed Microsoft Learn permissions tables.
| Methods |
|---|
GET
/admin/exchange/tracing/messageTraces
|
GET
/admin/exchange/tracing/messageTraces/{exchangeMessageTraceId}/getDetailsByRecipient(recipientAddress='parameterValue')
|
Microsoft Graph beta endpoints are mapped directly from refreshed Microsoft Learn permissions tables.
| Methods |
|---|
GET
/admin/exchange/tracing/messageTraces
|
GET
/admin/exchange/tracing/messageTraces/{exchangeMessageTraceId}/getDetailsByRecipient(recipientAddress='parameterValue')
|
Microsoft Graph PowerShell v1.0 commands are not available from refreshed Microsoft Learn PowerShell snippets for this permission.
No deterministic PowerShell command map is available for this permission.
Browse PowerShell docsMicrosoft Graph PowerShell beta commands are not available from refreshed Microsoft Learn PowerShell snippets for this permission.
No deterministic PowerShell command map is available for this permission.
Browse PowerShell docsCode Examples
// Code snippets are only available for the latest version. Current version is 5.x
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.Admin.Exchange.Tracing.MessageTraces.GetAsync();
const options = {
authProvider,
};
const client = Client.init(options);
let getDetailsByRecipient = await client.api('/admin/exchange/tracing/messageTraces/7e3b2b2e-1b5e-4b17-80cc-2af6c1d9a3b1/getDetailsByRecipient(recipientAddress='[email protected]')')
.get();
Connect-MgGraph -Scopes "ExchangeMessageTrace.Read.All"
Invoke-MgGraphRequest -Method GET -Uri "https://graph.microsoft.com/v1.0/admin/exchange/tracing/messageTraces"
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph import GraphServiceClient
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
result = await graph_client.admin.exchange.tracing.message_traces.get()
App Registration
Navigate to Azure Portal
Go to App registrations in Microsoft Entra admin center
Add API Permission
Select your app → API permissions → Add a permission → Microsoft Graph
Select Permission Type
Choose Application permissions or delegated permissions and search for ExchangeMessageTrace.Read.All
Grant Admin Consent
Application permissions always require admin consent.