Microsoft Graph
Unified gateway to security insights - all from a unified Microsoft Graph Security API.
Analytics & SIEM · Microsoft Graph Security
Details
| ID | Microsoft Graph |
|---|---|
| Provider | Microsoft |
| Category | Analytics & SIEM |
| From Version | 5.0.0 |
| Docker Image | demisto/crypto:1.0.0.10120494 |
| Supported Modules | Agentix Cloud Runtime Security Cloud Posture Security XSIAM EDR Cortex Cloud |
README
⚠️ Microsoft Graph Security Legacy Alerts Deprecation
Note: Microsoft has deprecated the Legacy Alerts API. As of April 10, 2026, the Legacy Alerts endpoint no longer returns data. This integration now exclusively uses the Alerts v2 API. For more details, see the Microsoft documentation.
Unified gateway to security insights - all from a unified Microsoft Graph Security API.
This integration was integrated and tested with version 1.0 of Microsoft Graph.
Authentication
For more details about the authentication used in this integration, see Microsoft Integrations - Authentication
Note: The eDiscovery and Threat Assessment commands are only supported when using the Authorization Code flow with Delegated (work or school account) permission type.
When using the Authorization Code flow for this integration, you should log in as an administrator or a user with administrative privileges (Security Reader or Security Administrator) after running the msg-generate-login-url command and the login window appears. For more information, see here.
Fetch Incidents and Alerts
Use the Fetch incidents type parameter to control what this integration ingests. You can select Alerts, Incidents, or both:
- Alerts - Each Microsoft Graph Security alert is fetched on its own.
- Incidents - Each Microsoft Graph Security incident is fetched on its own, with all of its associated alerts embedded within it (retrieved via
$expand=alerts) and stored as raw JSON. This gives you one grouped incident that already contains its underlying alerts, instead of many separate alert incidents.
You can narrow what is fetched using the Alerts Filter and Incidents Filter parameters. These accept an OData $filter expression, for example severity eq 'medium' and status eq 'active'. For the supported syntax and operators, see Microsoft query parameters.
Important Notes
- Due to API limitations, the msg-search-alerts command does not filter Office 365 provider alerts.\
For more information, see: https://github.com/microsoftgraph/security-api-solutions/issues/56. - The following properties are supported as filters:
- Alerts Filter parameter (and alert filter arguments): assignedTo, classification, determination, createdDateTime, lastUpdateDateTime, severity, serviceSource and status. See Microsoft optional alert query parameters.
- Incidents Filter parameter: assignedTo, classification, createdDateTime, determination, lastUpdateDateTime, severity, and status. See Microsoft optional incident query parameters.
- The filter should be provided as an OData
$filterexpression, for exampleseverity eq 'medium' and status eq 'active'. For the general syntax and operators, see Microsoft query parameters.
- The header include-unknown-enum-members is used when fetching alerts. It ensures that fields with unknown values are correctly mapped to the appropriate service. Learn More.
- When using Threat Assessment, only the following properties are supported as filters for the filter parameter: expectedAssessment, ContentType, status and requestSource.
- When using Threat Assessment for information protection, the following limits apply to any request:
- For email, the resource is a unique network message ID/recipient pair. For example, submitting an email with the same message ID sent to the same person multiple times in a 15 minutes period will trigger the limit per resource limits listed in the following table. However, you can submit up to 150 unique emails every 15 minutes (tenant limit).
Operation Limit per tenant Limit per resource (email, URL, file) POST 150 requests per 15 minutes and 10000 requests per 24 hours. 1 request per 15 minutes and 3 requests per 24 hours.
Required Permissions
- User.Read.All - Application (Only required if using the deprecated commands:
msg-get-userandmsg-get-users) - SecurityIncident.Read.All - Delegated or Application (required for the command
msg-list-security-incidentand Fetch Incidents) - SecurityIncident.ReadWrite.All - Delegated or Application (required for the command
msg-update-security-incidentand Fetch Incidents) - ThreatHunting.Read.All - Delegated or Application (required for the command
msg-advanced-hunting)
Alerts:
- SecurityAlert.Read.All - Application (required for the commands:
msg-search-alertsandmsg-get-alert-details) - SecurityAlert.ReadWrite.All - Application (required for updating alerts with the commands:
msg-update-alertandmsg-create-alert-comment)
eDiscovery:
- eDiscovery.Read.All - Delegated (Required for the
list-ediscoverycommands) - eDiscovery.ReadWrite.All - Delegated (Required for the
create/update/delete-ediscovery,msg-export-result-ediscovery-datacommands) - eDiscovery.Download.Read - Delegated (Required for the msg-list-case-operation, download_file=True command)
More information about defining this permission can be found here.
Threat Assessment:
- Mail.Read.Shared - Delegated
- ThreatAssessment.ReadWrite.All - Delegated
- User.Read.All - Delegated
Configure Microsoft Graph Security on Cortex
- Navigate to Settings > Integrations > Servers & Services.
- Search for Microsoft Graph Security.
-
Click Add instance to create and configure a new integration instance.
Parameter Description Required Azure Cloud When selecting the Custom option, the Host URL parameter must be filled. More information about National clouds can be found here. False Host URL The host URL. When using this parameter, select the Custom option for the Azure Cloud. More information about National clouds can be found here. False Application ID or Client ID The app registration ID. True Token or Tenant ID The tenant ID. True Key or Client Secret The app registration secret. False Authorization code Get the authorization code from steps 3-5 in the self deployed authorization process. False Application redirect URI (for self-deployed mode) The app registration redirect URI. False Certificate Thumbprint Used for certificate authentication, as it appears in the “Certificates & secrets” page of the app. False Private Key Used for certificate authentication. The private key of the registered certificate. False Use Azure Managed Identities Relevant only if the integration is running on Azure VM. If selected, authenticates based on the value provided for the Azure Managed Identities Client ID field. If no value is provided for the Azure Managed Identities Client ID field, authenticates based on the System Assigned Managed Identity. For additional information, see the Help tab. False Azure Managed Identities Client ID The Managed Identities client ID for authentication - relevant only if the integration is running on Azure VM. False Trust any certificate (not secure) Whether to trust any certificate. If True, not secure. False Use system proxy settings Whether to use system proxy settings. False Use a self-deployed Azure application Whether to use a self-deployed application. False Fetch incidents Whether to fetch incidents. False Incident type The incident type to apply. False First fetch timestamp ( <number> <time unit>, e.g., 12 hours, 7 days)<number> <time unit>, for example 1 hour, 30 minutes.False Fetch limit per type The maximum number of items to fetch per type. Applies to both alerts and incidents. Note that when fetching incidents, no more than 50 can be fetched per cycle, due to a Microsoft limitation. False Fetch incidents type Select which record types to fetch. You can select Alerts, Incidents, or both. False Alerts Service Sources Relevant only when fetching Alerts (incidents have no service source). Multiple serviceSourcevalues can be provided, separated by commas, for example “microsoftDefenderForEndpoint,microsoftCloudAppSecurity”. If empty, alerts of all service sources will be fetched.False Alerts Filter Use this field to filter fetched alerts according to their properties. Applies only when fetching Alerts. Overrides the service sources list, if given. Filter should be in the format “{property} eq ‘{property-value}’”. Multiple filters can be applied separated with “ and “, for example “createdDateTime eq YYYY-MM-DD and severity eq ‘high’”. False Incidents Filter Use this field to filter fetched incidents according to their properties. Applies only when fetching Incidents. Filter should be in the format “{property} eq ‘{property-value}’”. Multiple filters can be applied separated with “ and “, for example “severity eq ‘high’ and status eq ‘active’”. False Microsoft 365 Defender context When selected, the hunting query result is also saved to the Microsoft 365 Defender context path. Relevant only for the msg-advanced-hunting command. False - Click Test to validate the URLs, token, and connection.
Commands
You can execute these commands from the CLI, as part of an automation, or in a playbook.
After you successfully execute a command, a DBot message appears in the War Room with the command details.
msg-auth-test
Tests connectivity to Microsoft Graph Security.
Base Command
msg-auth-test
Input
| Argument Name | Description | Required |
|---|---|---|
| permission_type | Which permissions the integration should have. Possible values are: ediscovery, alerts, alerts, ediscovery. Default is ediscovery. | Optional |
Context Output
There is no context output for this command.
Command example
!msg-auth-test permission_type=ediscovery
Human Readable Output
Authentication was successful.
msg-search-alerts
List alerts (security issues) within a customer’s tenant that Microsoft or partner security solutions have identified.
Base Command
msg-search-alerts
Input
| Argument Name | Description | Required |
|---|---|---|
| last_modified | When the alert was last modified in the following string format - YYYY-MM-DD. Possible values are: Last24Hours, Last48Hours, LastWeek. | Optional |
| severity | Alert severity - set by vendor/provider. Possible values are: unknown, informational, low, medium, high. | Optional |
| category | Category of the alert, e.g., credentialTheft, ransomware (Categories can be added or removed by vendors.). | Optional |
| time_from | The start time (creation time of alert) for the search in the following string format - YYYY-MM-DD. | Optional |
| time_to | The end time (creation time of alert) for the search in the following string format - YYYY-MM-DD. | Optional |
| filter | Use this field to filter on any of the alert properties in the format “{property} eq ‘{property-value}’”, e.g. “category eq ‘ransomware’”. | Optional |
| classification | Use this field to filter by alert’s classification. Possible values are: unknown, truePositive, falsePositive, benignPositive. | Optional |
| service_source | Use this field to filter the alerts by the service or product that created this alert. Possible values are: microsoftDefenderForEndpoint, microsoftDefenderForIdentity, microsoftDefenderForOffice365, microsoft365Defender, microsoftAppGovernance, microsoftDefenderForCloudApps. | Optional |
| status | Use this field to filter by alert’s status. Possible values are: unknown, new, inProgress, resolved. | Optional |
| page | Page number to return, zero indexed. | Optional |
| page_size | Number of results in a page. Default is 50. The limit is 2000. | Optional |
| limit | Number of total results to return. Default is 50. | Optional |
Context Output
| Path | Type | Description |
|---|---|---|
| MsGraph.Alert.ID | string | Alert ID. |
| MsGraph.Alert.Title | string | Alert title. |
| MsGraph.Alert.Category | string | Alert category. |
| MsGraph.Alert.Severity | string | Alert severity. |
| MsGraph.Alert.CreatedDate | date | Alert created date. |
| MsGraph.Alert.Status | string | Alert status. |
| MsGraph.Alert.ActorDisplayName | Unknown | Alert actor name. |
| MsGraph.Alert.AlertWebUrl | String | Alert web URL. |
| MsGraph.Alert.AssignedTo | Unknown | Alert assignee. |
| MsGraph.Alert.Classification | Unknown | Alert classification. |
| MsGraph.Alert.Description | String | Alert description. |
| MsGraph.Alert.DetectionSource | String | Alert detection source. |
| MsGraph.Alert.DetectorId | String | Alert detector ID. |
| MsGraph.Alert.Determination | Unknown | Alert determination. |
| MsGraph.Alert.Evidence.@odata.Type | String | Alert evidence. |
| MsGraph.Alert.Evidence.AzureAdDeviceId | String | Evidence Azure device ID. |
| MsGraph.Alert.Evidence.CreatedDate | Date | Evidence creation time. |
| MsGraph.Alert.Evidence.DefenderAvStatus | String | Evidence Defender AV status. |
| MsGraph.Alert.Evidence.DeviceDnsName | String | Evidence device DNS name. |
| MsGraph.Alert.Evidence.FirstSeenDateTime | Date | Evidence first seen time. |
| MsGraph.Alert.Evidence.HealthStatus | String | Evidence health status. |
| MsGraph.Alert.Evidence.MdeDeviceId | String | Evidence MDE device ID. |
| MsGraph.Alert.Evidence.OnboardingStatus | String | Evidence onboarding status. |
| MsGraph.Alert.Evidence.OsBuild | Number | Evidence OS build. |
| MsGraph.Alert.Evidence.OsPlatform | String | Evidence OS platform. |
| MsGraph.Alert.Evidence.RbacGroupId | Number | Evidence RBAC group ID. |
| MsGraph.Alert.Evidence.RbacGroupName | String | Evidence RBAC group name. |
| MsGraph.Alert.Evidence.RemediationStatus | String | Evidence remediation status. |
| MsGraph.Alert.Evidence.RemediationStatusDetails | Unknown | Evidence remediation status details. |
| MsGraph.Alert.Evidence.RiskScore | String | Evidence risk score. |
| MsGraph.Alert.Evidence.Tags | String | Evidence tags. |
| MsGraph.Alert.Evidence.Verdict | String | Evidence verdict. |
| MsGraph.Alert.Evidence.Version | String | Evidence version. |
| MsGraph.Alert.Evidence.VmMetadata | Unknown | Evidence VM metadata. |
| MsGraph.Alert.FirstActivityDateTime | Date | Evidence first activity time. |
| MsGraph.Alert.IncidentId | String | Alert incident ID. |
| MsGraph.Alert.IncidentWebUrl | String | Alert incident URL. |
| MsGraph.Alert.LastActivityDateTime | Date | Alert last activity time. |
| MsGraph.Alert.LastUpdateDateTime | Date | Alert last update time. |
| MsGraph.Alert.ProviderAlertId | String | Alert provider ID. |
| MsGraph.Alert.RecommendedActions | String | Alert recommended action. |
| MsGraph.Alert.ResolvedDateTime | Date | Alert closing time. |
| MsGraph.Alert.ServiceSource | String | Alert service source. |
| MsGraph.Alert.TenantId | String | Alert tenant ID. |
| MsGraph.Alert.ThreatDisplayName | Unknown | Alert threat display name. |
| MsGraph.Alert.ThreatFamilyName | Unknown | Alert threat family name. |
Human Readable Output
Microsoft Security Graph Alerts
ID IncidentId Status Severity DetectionSource ServiceSource Title Category CreatedDate LastUpdateDateTime id new medium customTi microsoftDefenderForEndpoint test alert None 2022-10-03T03:39:21.7562976Z 2023-04-17T11:01:31.7566667Z
msg-get-alert-details
Get details for a specific alert.
Base Command
msg-get-alert-details
Input
| Argument Name | Description | Required |
|---|---|---|
| alert_id | The alert ID - Provider-generated GUID/unique identifier. | Required |
Context Output
| Path | Type | Description |
|---|---|---|
| MsGraph.Alert.ID | string | Alert ID. |
| MsGraph.Alert.Title | string | Alert title. |
| MsGraph.Alert.Category | string | Alert category. |
| MsGraph.Alert.Severity | string | Alert severity. |
| MsGraph.Alert.CreatedDate | date | Alert created date. |
| MsGraph.Alert.Status | string | Alert status. |
| MsGraph.Alert.@odata.Context | String | Alert odata context. |
| MsGraph.Alert.ActorDisplayName | Unknown | Alert actor name. |
| MsGraph.Alert.AlertWebUrl | String | Alert web URL. |
| MsGraph.Alert.AssignedTo | Unknown | Alert assignee. |
| MsGraph.Alert.Classification | Unknown | Alert classification. |
| MsGraph.Alert.Comments.Comment | String | Alert comment. |
| MsGraph.Alert.Comments.CreatedByDisplayName | String | Alert comment creator name. |
| MsGraph.Alert.Comments.CreatedDate | Date | Alert comment creation time. |
| MsGraph.Alert.Description | String | Alert description. |
| MsGraph.Alert.DetectionSource | String | Alert detection source. |
| MsGraph.Alert.DetectorId | String | Alert detector ID. |
| MsGraph.Alert.Determination | Unknown | Alert determination. |
| MsGraph.Alert.Evidence.@odata.Type | String | Alert evidence. |
| MsGraph.Alert.Evidence.CreatedDate | Date | Evidence creation time. |
| MsGraph.Alert.Evidence.DetectionStatus | Unknown | Evidence detection status. |
| MsGraph.Alert.Evidence.ImageFile.FileName | String | Evidence image file name. |
| MsGraph.Alert.Evidence.ImageFile.FilePath | String | Evidence image file path. |
| MsGraph.Alert.Evidence.ImageFile.FilePublisher | Unknown | Evidence image file publisher. |
| MsGraph.Alert.Evidence.ImageFile.FileSize | Unknown | Evidence image file size. |
| MsGraph.Alert.Evidence.ImageFile.Issuer | Unknown | Evidence image file issuer. |
| MsGraph.Alert.Evidence.ImageFile.Sha1 | String | Evidence image file SHA1 hash. |
| MsGraph.Alert.Evidence.ImageFile.Sha256 | String | Evidence image file SHA256 hash. |
| MsGraph.Alert.Evidence.ImageFile.Signer | Unknown | Evidence image file signer. |
| MsGraph.Alert.Evidence.MdeDeviceId | Unknown | Evidence MDE device ID. |
| MsGraph.Alert.Evidence.ParentProcessCreationDateTime | Date | Evidence parent process creation time. |
| MsGraph.Alert.Evidence.ParentProcessId | Number | Evidence parent process process ID. |
| MsGraph.Alert.Evidence.ParentProcessImageFile | Unknown | Evidence parent process image file. |
| MsGraph.Alert.Evidence.ProcessCommandLine | String | Evidence process command line. |
| MsGraph.Alert.Evidence.ProcessCreationDateTime | Date | Evidence process creation time. |
| MsGraph.Alert.Evidence.ProcessId | Number | Evidence process ID. |
| MsGraph.Alert.Evidence.RemediationStatus | String | Evidence remediation status. |
| MsGraph.Alert.Evidence.RemediationStatusDetails | Unknown | Evidence remediation status details. |
| MsGraph.Alert.Evidence.UserAccount.AccountName | String | Evidence user account name. |
| MsGraph.Alert.Evidence.UserAccount.AzureAdUserId | Unknown | Evidence user account Azure AD user ID. |
| MsGraph.Alert.Evidence.UserAccount.DisplayName | String | Evidence user account display name. |
| MsGraph.Alert.Evidence.UserAccount.DomainName | Unknown | Evidence user account domain name. |
| MsGraph.Alert.Evidence.UserAccount.UserPrincipalName | Unknown | Evidence user account user principal name. |
| MsGraph.Alert.Evidence.UserAccount.UserSid | String | Evidence user account user SID. |
| MsGraph.Alert.Evidence.Verdict | String | Evidence verdict. |
| MsGraph.Alert.Evidence.FileDetails.FileName | String | Evidence file details file name. |
| MsGraph.Alert.Evidence.FileDetails.FilePath | String | Evidence file details file path. |
| MsGraph.Alert.Evidence.FileDetails.FilePublisher | Unknown | Evidence file details file publisher. |
| MsGraph.Alert.Evidence.FileDetails.FileSize | Unknown | Evidence file details file size. |
| MsGraph.Alert.Evidence.FileDetails.Issuer | Unknown | Evidence file details file issuer. |
| MsGraph.Alert.Evidence.FileDetails.Sha1 | String | Evidence file details SHA1 hash. |
| MsGraph.Alert.Evidence.FileDetails.Sha256 | String | Evidence file details SHA256 hash. |
| MsGraph.Alert.Evidence.FileDetails.Signer | Unknown | Evidence file details file signer. |
| MsGraph.Alert.Evidence.CֹountryLetterCode | Unknown | Evidence country letter code. |
| MsGraph.Alert.Evidence.IpAddress | String | Evidence IP address. |
| MsGraph.Alert.Evidence.AzureAdDeviceId | Unknown | Evidence Azure AD device ID. |
| MsGraph.Alert.Evidence.DefenderAvStatus | String | Evidence Defender AV status. |
| MsGraph.Alert.Evidence.DeviceDnsName | String | Evidence device DNS name. |
| MsGraph.Alert.Evidence.FirstSeenDateTime | Date | Evidence first seen time. |
| MsGraph.Alert.Evidence.HealthStatus | String | Evidence health status. |
| MsGraph.Alert.Evidence.OnboardingStatus | String | Evidence onboarding status. |
| MsGraph.Alert.Evidence.OsBuild | Unknown | Evidence OS build. |
| MsGraph.Alert.Evidence.OsPlatform | String | Evidence OS platform. |
| MsGraph.Alert.Evidence.RbacGroupId | Number | Evidence RBAC group ID. |
| MsGraph.Alert.Evidence.RbacGroupName | String | Evidence RBAC group name. |
| MsGraph.Alert.Evidence.RiskScore | String | Evidence risk score. |
| MsGraph.Alert.Evidence.Version | String | Evidence version. |
| MsGraph.Alert.Evidence.VmMetadata | Unknown | Evidence VM metadata. |
| MsGraph.Alert.FirstActivityDateTime | Date | Evidence first activity time. |
| MsGraph.Alert.IncidentId | String | Alert incident ID. |
| MsGraph.Alert.IncidentWebUrl | String | Alert incident URL. |
| MsGraph.Alert.LastActivityDateTime | Date | Alert last activity time. |
| MsGraph.Alert.LastUpdateDateTime | Date | Alert last update time. |
| MsGraph.Alert.ProviderAlertId | String | Alert provider ID. |
| MsGraph.Alert.RecommendedActions | String | Alert recommended action. |
| MsGraph.Alert.ResolvedDateTime | Date | Alert closing time. |
| MsGraph.Alert.ServiceSource | String | Alert service source. |
| MsGraph.Alert.TenantId | String | Alert tenant ID. |
| MsGraph.Alert.ThreatDisplayName | Unknown | Alert threat display name. |
| MsGraph.Alert.ThreatFamilyName | Unknown | Alert threat family name. |
Human Readable Output
Microsoft Security Graph Alert Details -
ID IncidentId Status Severity DetectionSource ServiceSource Title Category CreatedDate LastUpdateDateTime new medium customTi microsoftDefenderForEndpoint test alert None 2022-10-03T03:39:21.7562976Z 2023-04-17T11:01:31.7566667Z
msg-update-alert
Update an editable alert property within any integrated solution to keep alert status and assignments in sync across solutions using its reference ID.
Base Command
msg-update-alert
Input
| Argument Name | Description | Required |
|---|---|---|
| alert_id | The Alert ID. Provider-generated GUID/unique identifier. | Required |
| assigned_to | Name of the analyst the alert is assigned to for triage, investigation, or remediation. | Optional |
| status | Alert lifecycle status (stage). Possible values are: unknown, newAlert, inProgress, resolved, new. | Optional |
| classification | Use this field to update the alert’s classification. Possible values are: unknown, truePositive, falsePositive, informationalExpectedActivity. | Optional |
| determination | Use this field to update the alert’s determination. Possible values are: unknown, malware, phishing, other, securityTesting, multiStagedAttack, maliciousUserActivity, lineOfBusinessApplication, unwantedSoftware. | Optional |
Context Output
| Path | Type | Description |
|---|---|---|
| MsGraph.Alert.ID | string | Alert ID. |
| MsGraph.Alert.Status | string | Alert status, will appear only if changed. |
Human Readable Output
Alert has been successfully updated.
msg-create-alert-comment
Create a comment for an existing alert.
Base Command
msg-create-alert-comment
Input
| Argument Name | Description | Required |
|---|---|---|
| alert_id | The Alert ID - Provider-generated GUID/unique identifier. | Required |
| comment | The comment to add to each alert. | Required |
Context Output
| Path | Type | Description |
|---|---|---|
| MsGraph.AlertComment.ID | String | The alert ID that the comment was added to. |
| MsGraph.AlertComment.Comments.Comment | String | The comment itself |
| MsGraph.AlertComment.Comments.CreatedByDisplayName | String | The comment’s creator display name |
| MsGraph.AlertComment.Comments.CreatedDate | Date | The comment’s creation time |
Human Readable Output
Microsoft Security Graph Create Alert Comment -
comment createdByDisplayName createdDate comment Cortex XSOAR MS Graph Dev 2023-04-17T10:57:18.5231438Z comment Cortex XSOAR MS Graph Dev 2023-04-17T11:01:31.7427859Z comment Cortex XSOAR MS Graph Dev 2023-04-17T13:30:22.3995128Z
ms-graph-security-auth-reset
Run this command if for some reason you need to rerun the authentication process.
Base Command
ms-graph-security-auth-reset
Input
There are no input arguments for this command.
Context Output
There is no context output for this command.
eDiscovery Commands
msg-list-ediscovery-cases
Lists edicovery cases.
Base Command
msg-list-ediscovery-cases
Input
| Argument Name | Description | Required |
|---|---|---|
| case_id | The ID of the eDiscovery case. If provided, only this id will be returned. | Optional |
| limit | The maximum number of results to return. Default is 50. | Optional |
| all_results | Show all results if true. Possible values are: true, false. | Optional |
Context Output
| Path | Type | Description |
|---|---|---|
| MsGraph.eDiscoveryCase.CaseId | String | The ID of the eDiscovery case. |
| MsGraph.eDiscoveryCase.CaseStatus | String | The case status. Possible values are: unknown, active, pendingDelete, closing, closed, and closedWithError. |
| MsGraph.eDiscoveryCase.CreatedDateTime | Date | The date and time when the entity was created. The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z |
| MsGraph.eDiscoveryCase.Description | String | The case description. |
| MsGraph.eDiscoveryCase.DisplayName | String | The case name. |
| MsGraph.eDiscoveryCase.ExternalId | String | The external case number for customer reference. |
| MsGraph.eDiscoveryCase.LastModifiedDateTime | Date | The latest date and time when the case was modified. The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z |
| MsGraph.eDiscoveryCase.ClosedBy.User.DisplayName | String | The user who closed the case. |
| MsGraph.eDiscoveryCase.LastModifiedBy.User.DisplayName | String | The user who last modified the case. |
| MsGraph.eDiscoveryCase.ClosedDateTime | Date | The date and time when the case was closed. The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z |
Command example
!msg-list-ediscovery-cases limit=5
Context Example
{
"MsGraph": {
"eDiscoveryCase": [
{
"CaseId": "06386565-47d4-410b-96f9-007978319c02",
"CaseStatus": "active",
"ClosedBy": {
"User": {
"DisplayName": ""
}
},
"CreatedDateTime": "2023-06-18T10:55:12.63Z",
"Description": "",
"DisplayName": "a",
"ExternalId": "123",
"LastModifiedBy": {
"User": {
"DisplayName": "Content Test"
}
},
"LastModifiedDateTime": "2023-06-20T12:25:05.797Z"
},
{
"CaseId": "44bbe68b-0da1-42b4-9ad0-00e8b52f64e2",
"CaseStatus": "active",
"ClosedBy": {
"User": {
"DisplayName": ""
}
},
"CreatedDateTime": "2023-06-18T11:59:33.44Z",
"Description": "",
"DisplayName": "asassdda",
"ExternalId": "",
"LastModifiedBy": {
"User": {
"DisplayName": "Content Test"
}
},
"LastModifiedDateTime": "2023-06-18T11:59:33.44Z"
},
{
"CaseId": "f108b7fa-d177-438e-9679-01cd79e3df3f",
"CaseStatus": "active",
"ClosedBy": {
"User": {
"DisplayName": ""
}
},
"CreatedDateTime": "2023-06-20T07:08:01.95Z",
"Description": "wrking",
"DisplayName": "justw orkok?",
"ExternalId": "",
"LastModifiedBy": {
"User": {
"DisplayName": "Content Test"
}
},
"LastModifiedDateTime": "2023-06-20T07:08:01.95Z"
},
{
"CaseId": "f346c6f5-1d66-4fab-a46b-0abc99c2cef0",
"CaseStatus": "active",
"ClosedBy": {
"User": {
"DisplayName": ""
}
},
"CreatedDateTime": "2023-06-18T11:54:59.873Z",
"Description": "",
"DisplayName": "asasdda",
"ExternalId": "",
"LastModifiedBy": {
"User": {
"DisplayName": "Content Test"
}
},
"LastModifiedDateTime": "2023-06-18T11:54:59.873Z"
},
{
"CaseId": "1a346a94-5220-46ae-a821-0bbbadf4009d",
"CaseStatus": "active",
"ClosedBy": {
"User": {
"DisplayName": ""
}
},
"CreatedDateTime": "2023-06-12T07:05:27.557Z",
"Description": "Test Case 104 description",
"DisplayName": "Test Case 104",
"ExternalId": "",
"LastModifiedBy": {
"User": {
"DisplayName": "Content Test"
}
},
"LastModifiedDateTime": "2023-06-12T07:05:27.557Z"
}
]
}
}
Human Readable Output
Results
Display Name Description External Id Case Status Case Id Created Date Time Last Modified Date Time Last Modified By Name a 123 active 06386565-47d4-410b-96f9-007978319c02 2023-06-18T10:55:12.63Z 2023-06-20T12:25:05.797Z Content Test asassdda active 44bbe68b-0da1-42b4-9ad0-00e8b52f64e2 2023-06-18T11:59:33.44Z 2023-06-18T11:59:33.44Z Content Test justw orkok? wrking active f108b7fa-d177-438e-9679-01cd79e3df3f 2023-06-20T07:08:01.95Z 2023-06-20T07:08:01.95Z Content Test asasdda active f346c6f5-1d66-4fab-a46b-0abc99c2cef0 2023-06-18T11:54:59.873Z 2023-06-18T11:54:59.873Z Content Test Test Case 104 Test Case 104 description active 1a346a94-5220-46ae-a821-0bbbadf4009d 2023-06-12T07:05:27.557Z 2023-06-12T07:05:27.557Z Content Test
msg-create-ediscovery-case
Create a new eDiscovery case. This command only creates an eDiscovery (Premium) case using the new case format. To learn more about the new case format in eDiscovery, see https://learn.microsoft.com/en-us/microsoft-365/compliance/advanced-ediscovery-new-case-format.
Base Command
msg-create-ediscovery-case
Input
| Argument Name | Description | Required |
|---|---|---|
| display_name | The name of the eDiscovery case. | Required |
| description | The case description. | Optional |
| external_id | The external case number for customer reference. | Optional |
Context Output
| Path | Type | Description |
|---|---|---|
| MsGraph.eDiscoveryCase.CaseId | String | The ID of the eDiscovery case. |
| MsGraph.eDiscoveryCase.CaseStatus | String | The case status. Possible values are unknown, active, pendingDelete, closing, closed, and closedWithError. |
| MsGraph.eDiscoveryCase.CreatedDateTime | Date | The date and time when the entity was created. The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z |
| MsGraph.eDiscoveryCase.Description | String | The case description. |
| MsGraph.eDiscoveryCase.DisplayName | String | The case name. |
| MsGraph.eDiscoveryCase.ExternalId | String | The external case number for customer reference. |
| MsGraph.eDiscoveryCase.LastModifiedDateTime | Date | The latest date and time when the case was modified. The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z |
Command example
!msg-create-ediscovery-case display_name=`my case name11234` external_id=123 description=`description of the case`
Context Example
{
"MsGraph": {
"eDiscoveryCase": {
"CaseId": "6dfd17fe-43c5-411f-a194-abdc9492bfa0",
"CaseStatus": "active",
"CreatedDateTime": "2023-07-06T07:42:34.897Z",
"Description": "description of the case",
"DisplayName": "my case name11234",
"ExternalId": "123",
"LastModifiedDateTime": "2023-07-06T07:42:34.897Z"
}
}
}
Human Readable Output
Results
Display Name Description External Id Case Status Case Id Created Date Time Last Modified Date Time my case name11234 description of the case 123 active 6dfd17fe-43c5-411f-a194-abdc9492bfa0 2023-07-06T07:42:34.897Z 2023-07-06T07:42:34.897Z
msg-update-ediscovery-case
Update an eDiscovery case.
Base Command
msg-update-ediscovery-case
Input
| Argument Name | Description | Required |
|---|---|---|
| case_id | The ID of the eDiscovery case. | Required |
| display_name | The name of the eDiscovery case. | Required |
| description | The case description. | Optional |
| external_id | The external case number for customer reference. | Optional |
Context Output
There is no context output for this command.
Command example
!msg-update-ediscovery-case case_id=6dfd17fe-43c5-411f-a194-abdc9492bfa0 display_name=`new display name` external_id=123 description=`new description of the case`
Human Readable Output
Case with id 6dfd17fe-43c5-411f-a194-abdc9492bfa0 was updated successfully.
msg-close-ediscovery-case
Close an eDiscovery case.
When the legal case or investigation supported by a eDiscovery (Standard) case is completed, you can close the case. Here’s what happens when you close a case:
If the case contains any eDiscovery holds, they’ll be turned off. After the hold is turned off, a 30-day grace period (called a delay hold) is applied to content locations that were on hold. This helps prevent content from being immediately deleted and provides admins the opportunity to search for and restore content before it may be permanently deleted after the delay hold period expires. For more information, see Removing content locations from an eDiscovery hold.
Closing a case only turns off the holds that are associated with that case. If other holds are placed on a content location (such as a Litigation Hold, a retention policy, or a hold from a different eDiscovery (Standard) case) those holds will still be maintained.
The case is still listed on the eDiscovery (Standard) page in the Microsoft Purview compliance portal. The details, holds, searches, and members of a closed case are retained.
You can edit a case after it’s closed. For example, you can add or remove members, create searches, and export search results. The primary difference between active and closed cases is that eDiscovery holds are turned off when a case is closed.
Base Command
msg-close-ediscovery-case
Input
| Argument Name | Description | Required |
|---|---|---|
| case_id | The ID of the eDiscovery case. | Required |
Context Output
There is no context output for this command.
Command example
!msg-close-ediscovery-case case_id=6dfd17fe-43c5-411f-a194-abdc9492bfa0
Human Readable Output
Case with id 6dfd17fe-43c5-411f-a194-abdc9492bfa0 was closed successfully.
msg-reopen-ediscovery-case
Reopen an eDiscovery case. When you reopen an eDiscovery (Premium) case, any holds that were in place when the case was closed won’t be automatically reinstated. After the case is reopened, you’ll have to go to the Holds tab and turn on the previous holds. To turn on a hold, select it to display the flyout page, and then set the Status toggle to On.
Base Command
msg-reopen-ediscovery-case
Input
| Argument Name | Description | Required |
|---|---|---|
| case_id | The ID of the eDiscovery case. | Required |
Context Output
There is no context output for this command.
Command example
!msg-reopen-ediscovery-case case_id=6dfd17fe-43c5-411f-a194-abdc9492bfa0
Human Readable Output
Case with id 6dfd17fe-43c5-411f-a194-abdc9492bfa0 was reopened successfully.
msg-delete-ediscovery-case
Delete an eDiscovery case. Before you can delete a case, you must first delete all holds listed on the holds page of the case. That includes deleting holds with a status of Off. Default hold policies can only be deleted when the hold is turned off. You must close an active case to turn off any default hold policies in the case. Once the holds are turned off for default hold policies, they can be deleted.
Base Command
msg-delete-ediscovery-case
Input
| Argument Name | Description | Required |
|---|---|---|
| case_id | The ID of the eDiscovery case. | Required |
Context Output
There is no context output for this command.
Command example
!msg-delete-ediscovery-case case_id=6dfd17fe-43c5-411f-a194-abdc9492bfa0
Human Readable Output
Case was deleted successfully.
msg-create-ediscovery-custodian
Create a new ediscoveryCustodian object. After the custodian object is created, you will need to create the custodian’s userSource to reference their mailbox and OneDrive for Business site.
Base Command
msg-create-ediscovery-custodian
Input
| Argument Name | Description | Required |
|---|---|---|
| case_id | The ID of the eDiscovery case. | Required |
| Custodian’s primary SMTP address. | Required |
Context Output
| Path | Type | Description |
|---|---|---|
| MsGraph.eDiscoveryCustodian.CreatedDateTime | Date | Date and time when the custodian was added to the case. |
| MsGraph.eDiscoveryCustodian.CustodianId | String | The ID for the custodian in the specified case. Read-only. |
| MsGraph.eDiscoveryCustodian.CustodianStatus | String | Status of the custodian. Possible values are: active, released. |
| MsGraph.eDiscoveryCustodian.DisplayName | String | Display name of the custodian. |
| MsGraph.eDiscoveryCustodian.Email | String | Email address of the custodian. |
| MsGraph.eDiscoveryCustodian.HoldStatus | String | The hold status of the custodian.The possible values are: notApplied, applied, applying, removing, partial. |
| MsGraph.eDiscoveryCustodian.LastModifiedDateTime | Date | Date and time the custodian object was last modified. |
Command example
!msg-create-ediscovery-custodian case_id=84abfff1-dd69-4559-8f4e-8225e0d505c5 email=testbox2@yoursite.onmicrosoft.com
Context Example
{
"MsGraph": {
"eDiscoveryCustodian": {
"CreatedDateTime": "2023-07-06T07:53:36.9441479Z",
"CustodianId": "0af7ca2b84bc4cff930d5d301cc4caf3",
"CustodianStatus": "active",
"DisplayName": "testbox2",
"Email": "yourmail@yoursite.onmicrosoft.com",
"HoldStatus": "notApplied",
"LastModifiedDateTime": "2023-07-06T07:53:36.9441479Z"
}
}
}
Human Readable Output
Results
Display Name Custodian Status Custodian Id Created Date Time Last Modified Date Time Hold Status testbox2 yourmail@yoursite.onmicrosoft.com active 0af7ca2b84bc4cff930d5d301cc4caf3 2023-07-06T07:53:36.9441479Z 2023-07-06T07:53:36.9441479Z notApplied
msg-list-ediscovery-custodians
List custodians on a given eDiscovery case.
Base Command
msg-list-ediscovery-custodians
Input
| Argument Name | Description | Required |
|---|---|---|
| case_id | The ID of the eDiscovery case. | Required |
| custodian_id | The ID of the custodian on the given eDiscovery case. If provided, only this ID will be returned. | Optional |
| limit | Number of total results to return. Default is 50. | Optional |
| all_results | Show all results if true. Possible values are: true, false. | Optional |
Context Output
| Path | Type | Description |
|---|---|---|
| MsGraph.eDiscoveryCustodian.CreatedDateTime | Date | Date and time when the custodian was added to the case. |
| MsGraph.eDiscoveryCustodian.CustodianId | String | The ID for the custodian in the specified case. Read-only. |
| MsGraph.eDiscoveryCustodian.CustodianStatus | String | Status of the custodian. Possible values are: active, released. |
| MsGraph.eDiscoveryCustodian.DisplayName | String | Display name of the custodian. |
| MsGraph.eDiscoveryCustodian.Email | String | Email address of the custodian. |
| MsGraph.eDiscoveryCustodian.HoldStatus | String | The hold status of the custodian. The possible values are: notApplied, applied, applying, removing, partial. |
| MsGraph.eDiscoveryCustodian.LastModifiedDateTime | Date | Date and time the custodian object was last modified. |
| MsGraph.eDiscoveryCustodian.ReleasedDateTime | Date | Date and time the custodian was released from the case. |
Command example
!msg-list-ediscovery-custodians all_results=true case_id=84abfff1-dd69-4559-8f4e-8225e0d505c5
Context Example
{
"MsGraph": {
"eDiscoveryCustodian": {
"CreatedDateTime": "2023-07-06T07:53:36.9441479Z",
"CustodianId": "0af7ca2b84bc4cff930d5d301cc4caf3",
"CustodianStatus": "active",
"DisplayName": "testbox2",
"Email": "mail@yoursite.onmicrosoft.com",
"HoldStatus": "notApplied",
"LastModifiedDateTime": "2023-07-06T07:53:36.9441479Z"
}
}
}
Human Readable Output
Results
Display Name Custodian Status Custodian Id Created Date Time Last Modified Date Time Hold Status testbox2 mail@yoursite.onmicrosoft.com active 0af7ca2b84bc4cff930d5d301cc4caf3 2023-07-06T07:53:36.9441479Z 2023-07-06T07:53:36.9441479Z notApplied
msg-activate-ediscovery-custodian
Activate a custodian that has been released from a case to make them part of the case again. For details, see https://learn.microsoft.com/en-us/microsoft-365/compliance/ediscovery-manage-new-custodians?view=o365-worldwide#re-activate-custodian.
Base Command
msg-activate-ediscovery-custodian
Input
| Argument Name | Description | Required |
|---|---|---|
| case_id | The ID of the eDiscovery case. | Required |
| custodian_id | The ID of the eDiscovery case. on the given eDiscovery case. | Required |
Context Output
There is no context output for this command.
Command example
!msg-activate-ediscovery-custodian custodian_id=0af7ca2b84bc4cff930d5d301cc4caf3 case_id=84abfff1-dd69-4559-8f4e-8225e0d505c5
Human Readable Output
Custodian with id 0af7ca2b84bc4cff930d5d301cc4caf3 Case was reactivated on case with id 84abfff1-dd69-4559-8f4e-8225e0d505c5 successfully.
msg-release-ediscovery-custodian
Release a custodian from a case. For details, see https://learn.microsoft.com/en-us/microsoft-365/compliance/manage-new-custodians#release-a-custodian-from-a-case.
Base Command
msg-release-ediscovery-custodian
Input
| Argument Name | Description | Required |
|---|---|---|
| case_id | The ID of the eDiscovery case. | Required |
| custodian_id | The ID of the eDiscovery case. on the given eDiscovery case. | Required |
Context Output
There is no context output for this command.
Command example
!msg-release-ediscovery-custodian custodian_id=0af7ca2b84bc4cff930d5d301cc4caf3 case_id=84abfff1-dd69-4559-8f4e-8225e0d505c5
Human Readable Output
Custodian with id 0af7ca2b84bc4cff930d5d301cc4caf3 was released from case with id 84abfff1-dd69-4559-8f4e-8225e0d505c5 successfully.
msg-create-ediscovery-custodian-site-source
Create a new siteSource object associated with an eDiscovery custodian. Use the msg-list-ediscovery-custodians command in order to get all available custodians.
Base Command
msg-create-ediscovery-custodian-site-source
Input
| Argument Name | Description | Required |
|---|---|---|
| case_id | The ID of the eDiscovery case. | Required |
| custodian_id | The ID of the eDiscovery case. on the given eDiscovery case. | Required |
| site | URL of the site; for example, https://contoso.sharepoint.com/sites/HumanResources. | Required |
Context Output
| Path | Type | Description |
|---|---|---|
| MsGraph.CustodianSiteSource.CreatedBy.Application.DisplayName | String | The name of the application who created the siteSource. |
| MsGraph.CustodianSiteSource.CreatedBy.Application.ID | String | The ID of the application who created the siteSource. |
| MsGraph.CustodianSiteSource.CreatedBy.User.DisplayName | String | The name of the user who created the siteSource. |
| MsGraph.CustodianSiteSource.CreatedBy.User.ID | String | The ID of the user who created the siteSource. |
| MsGraph.CustodianSiteSource.CreatedBy.User.UserPrincipalName | String | Internet-style login name of the user who created the siteSource. |
| MsGraph.CustodianSiteSource.CreatedDateTime | Date | The date and time the siteSource was created. |
| MsGraph.CustodianSiteSource.DisplayName | String | The display name of the siteSource. This will be the name of the SharePoint site. |
| MsGraph.CustodianSiteSource.HoldStatus | String | The hold status of the siteSource. The possible values are: notApplied, applied, applying, removing, partial. |
| MsGraph.CustodianSiteSource.SiteSourceId | String | The ID of the siteSource. |
Command example
!msg-create-ediscovery-custodian-site-source custodian_id=0af7ca2b84bc4cff930d5d301cc4caf3 case_id=84abfff1-dd69-4559-8f4e-8225e0d505c5 site=https://yourdev.sharepoint.com/sites/site_test_1
Context Example
{
"MsGraph": {
"CustodianSiteSource": {
"CreatedBy": {
"Application": {
"DisplayName": "Cortex XSOAR - MS Graph Security Dev",
"ID": "734f96d8-b19c-4ab1-9382-e04aa9a5debd"
},
"User": {
"DisplayName": "Content Test",
"ID": "38c41451-94b8-44cc-8c02-649208c43b6b",
"UserPrincipalName": "ContentTest@yoursite.onmicrosoft.com"
}
},
"CreatedDateTime": "0001-01-01T00:00:00Z",
"DisplayName": "site_test_1",
"HoldStatus": "notApplied",
"SiteSourceId": "862f0a64-e7db-46e0-a97f-9156b4f693ee"
}
}
}
Human Readable Output
Results
Display Name Site Source Id Hold Status Created Date Time Created By Name Created By UPN Created By App Name site_test_1 862f0a64-e7db-46e0-a97f-9156b4f693ee notApplied 0001-01-01T00:00:00Z Content Test ContentTest@yoursite.onmicrosoft.com Cortex XSOAR - MS Graph Security Dev
msg-create-ediscovery-custodian-user-source
Create a new userSource object associated with an eDiscovery custodian. Use the msg-list-ediscovery-custodians command in order to get all available custodians.
Base Command
msg-create-ediscovery-custodian-user-source
Input
| Argument Name | Description | Required |
|---|---|---|
| case_id | The ID of the eDiscovery case. | Required |
| custodian_id | The ID of the eDiscovery case. on the given eDiscovery case. | Required |
| SMTP address of the user. | Required | |
| included_sources | Specifies which sources are included in this group. Possible values are: mailbox, site, mailbox, site. | Required |
Context Output
| Path | Type | Description |
|---|---|---|
| MsGraph.CustodianUserSource.CreatedBy.Application.DisplayName | String | The name of the application who created the userSource. |
| MsGraph.CustodianUserSource.CreatedBy.Application.ID | String | The ID of the application who created the userSource. |
| MsGraph.CustodianUserSource.CreatedBy.User.DisplayName | String | The name of the user who created the userSource. |
| MsGraph.CustodianUserSource.CreatedBy.User.ID | String | The ID of the user who created the userSource. |
| MsGraph.CustodianUserSource.CreatedBy.User.UserPrincipalName | String | Internet-style login name of the user who created the userSource. |
| MsGraph.CustodianUserSource.CreatedDateTime | Date | The date and time the userSource was created. |
| MsGraph.CustodianUserSource.DisplayName | String | The display name associated with the mailbox and site. |
| MsGraph.CustodianUserSource.Email | String | Email address of the user’s mailbox. |
| MsGraph.CustodianUserSource.HoldStatus | String | The hold status of the userSource. The possible values are: notApplied, applied, applying, removing, partial. |
| MsGraph.CustodianUserSource.IncludedSources | String | Specifies which sources are included in this group. Possible values are: mailbox, site. |
| MsGraph.CustodianUserSource.UserSourceId | String | The ID of the userSource. This is not The ID of the actual group. |
Command example
!msg-create-ediscovery-custodian-user-source custodian_id=0af7ca2b84bc4cff930d5d301cc4caf3 case_id=84abfff1-dd69-4559-8f4e-8225e0d505c5 email=testbox2@yoursite.onmicrosoft.com included_sources="mailbox, site"
Context Example
{
"MsGraph": {
"CustodianUserSource": {
"CreatedBy": {
"Application": {
"DisplayName": "Cortex XSOAR - MS Graph Security Dev",
"ID": "734f96d8-b19c-4ab1-9382-e04aa9a5debd"
},
"User": {
"DisplayName": "Content Test",
"ID": "38c41451-94b8-44cc-8c02-649208c43b6b",
"UserPrincipalName": "ContentTest@yoursite.onmicrosoft.com"
}
},
"CreatedDateTime": "0001-01-01T00:00:00Z",
"DisplayName": "testbox2",
"Email": "testbox2@yoursite.onmicrosoft.com",
"HoldStatus": "notApplied",
"IncludedSources": "mailbox,site",
"UserSourceId": "0af7ca2b-84bc-4cff-930d-5d301cc4caf3"
}
}
}
Human Readable Output
Results
Display Name User Source Id Hold Status Created Date Time Created By Name Created By UPN Created By App Name Included Sources testbox2 testbox2@yoursite.onmicrosoft.com 0af7ca2b-84bc-4cff-930d-5d301cc4caf3 notApplied 0001-01-01T00:00:00Z Content Test ContentTest@yoursite.onmicrosoft.com Cortex XSOAR - MS Graph Security Dev mailbox,site
msg-list-ediscovery-custodian-user-sources
Get a list of the userSource objects associated with an eDiscoveryCustodian. Use the msg-list-ediscovery-custodians command in order to get all available custodians.
Base Command
msg-list-ediscovery-custodian-user-sources
Input
| Argument Name | Description | Required |
|---|---|---|
| case_id | The ID of the eDiscovery case. | Required |
| custodian_id | The ID of the eDiscovery case. on the given eDiscovery case. | Required |
| user_source_id | The ID of the userSource. If provided, only this id will be returned. | Optional |
| limit | Number of total results to return. Default is 50. | Optional |
| all_results | Show all results if true. Possible values are: true, false. | Optional |
Context Output
| Path | Type | Description |
|---|---|---|
| MsGraph.CustodianUserSource.CreatedBy.Application.DisplayName | String | The name of the application who created the userSource. |
| MsGraph.CustodianUserSource.CreatedBy.Application.ID | String | The ID of the application who created the userSource. |
| MsGraph.CustodianUserSource.CreatedBy.User.DisplayName | String | The name of the user who created the userSource. |
| MsGraph.CustodianUserSource.CreatedBy.User.ID | String | The ID of the user who created the userSource. |
| MsGraph.CustodianUserSource.CreatedBy.User.UserPrincipalName | String | Internet-style login name of the user who created the userSource. |
| MsGraph.CustodianUserSource.CreatedDateTime | Date | The date and time the userSource was created. |
| MsGraph.CustodianUserSource.DisplayName | String | The display name associated with the mailbox and site. |
| MsGraph.CustodianUserSource.Email | String | Email address of the user’s mailbox. |
| MsGraph.CustodianUserSource.HoldStatus | String | The hold status of the userSource. The possible values are: notApplied, applied, applying, removing, partial. |
| MsGraph.CustodianUserSource.IncludedSources | String | Specifies which sources are included in this group. Possible values are: mailbox, site. |
| MsGraph.CustodianUserSource.SiteWebUrl | String | The URL of the user’s OneDrive for Business site. Read-only. |
| MsGraph.CustodianUserSource.UserSourceId | String | The ID of the userSource. This is not The ID of the actual group. |
Command example
!msg-list-ediscovery-custodian-user-sources custodian_id=0af7ca2b84bc4cff930d5d301cc4caf3 case_id=84abfff1-dd69-4559-8f4e-8225e0d505c5
Context Example
{
"MsGraph": {
"CustodianUserSource": {
"CreatedBy": {
"Application": {
"DisplayName": "Cortex XSOAR - MS Graph Security Dev",
"ID": "734f96d8-b19c-4ab1-9382-e04aa9a5debd"
},
"User": {
"DisplayName": "Content Test",
"ID": "38c41451-94b8-44cc-8c02-649208c43b6b",
"UserPrincipalName": "ContentTest@yoursite.onmicrosoft.com"
}
},
"CreatedDateTime": "2023-07-06T08:04:21.1548801Z",
"DisplayName": "testbox2",
"Email": "testbox2@yoursite.onmicrosoft.com",
"HoldStatus": "notApplied",
"IncludedSources": "mailbox,site",
"SiteWebUrl": "https://yourdev-my.sharepoint.com/personal/testbox2_yourdev_onmicrosoft_com",
"UserSourceId": "0af7ca2b-84bc-4cff-930d-5d301cc4caf3"
}
}
}
Human Readable Output
Results
Display Name User Source Id Hold Status Created Date Time Created By Name Created By UPN Created By App Name Site Web Url Included Sources testbox2 testbox2@yoursite.onmicrosoft.com 0af7ca2b-84bc-4cff-930d-5d301cc4caf3 notApplied 2023-07-06T08:04:21.1548801Z Content Test ContentTest@yoursite.onmicrosoft.com Cortex XSOAR - MS Graph Security Dev https://yourdev-my.sharepoint.com/personal/testbox2_yourdev_onmicrosoft_com mailbox,site
msg-list-ediscovery-custodian-site-sources
Get a list of the siteSource objects associated with an eDiscoveryCustodian. Use the msg-list-ediscovery-custodians command in order to get all available custodians.
Base Command
msg-list-ediscovery-custodian-site-sources
Input
| Argument Name | Description | Required |
|---|---|---|
| case_id | The ID of the eDiscovery case. | Required |
| custodian_id | The ID of the eDiscovery case. on the given eDiscovery case. | Required |
| site_source_id | The ID of the siteSource. If provided, only this id will be returned. | Optional |
| limit | Number of total results to return. Default is 50. | Optional |
| all_results | Show all results if true. Possible values are: true, false. | Optional |
Context Output
| Path | Type | Description |
|---|---|---|
| MsGraph.CustodianSiteSource.CreatedBy.Application.DisplayName | String | The name of the application who created the siteSource. |
| MsGraph.CustodianSiteSource.CreatedBy.Application.ID | String | The ID of the application who created the siteSource. |
| MsGraph.CustodianSiteSource.CreatedBy.User.DisplayName | String | The name of the user who created the siteSource. |
| MsGraph.CustodianSiteSource.CreatedBy.User.ID | String | The ID of the user who created the siteSource. |
| MsGraph.CustodianSiteSource.CreatedBy.User.UserPrincipalName | String | Internet-style login name of the user who created the siteSource. |
| MsGraph.CustodianSiteSource.CreatedDateTime | Date | The date and time the siteSource was created. |
| MsGraph.CustodianSiteSource.DisplayName | String | The display name of the siteSource. This will be the name of the SharePoint site. |
| MsGraph.CustodianSiteSource.HoldStatus | String | The hold status of the siteSource. The possible values are: notApplied, applied, applying, removing, partial. |
| MsGraph.CustodianSiteSource.SiteSourceId | String | The ID of the siteSource. |
| MsGraph.CustodianSiteSource.Site.ID | String | The unique identifier of the item. Read-only. |
| MsGraph.CustodianSiteSource.Site.WebUrl | String | URL that displays the item in the browser. Read-only. |
| MsGraph.CustodianSiteSource.Site.CreatedDate | Date | The date and time the siteSource was created. |
Command example
!msg-list-ediscovery-custodian-site-sources custodian_id=0af7ca2b84bc4cff930d5d301cc4caf3 case_id=84abfff1-dd69-4559-8f4e-8225e0d505c5 site_source_id=862f0a64-e7db-46e0-a97f-9156b4f693ee
Context Example
{
"MsGraph": {
"CustodianSiteSource": {
"CreatedBy": {
"User": {
"ID": "38c41451-94b8-44cc-8c02-649208c43b6b"
}
},
"CreatedDateTime": "2023-07-06T08:02:28.5670187Z",
"DisplayName": "site_test_1",
"HoldStatus": "removing",
"Site": {
"CreatedDate": "2023-07-06T08:02:28.5670187Z",
"ID": "862f0a64-e7db-46e0-a97f-9156b4f693ee",
"WebUrl": "https://yourdev.sharepoint.com/sites/site_test_1"
},
"SiteSourceId": "862f0a64-e7db-46e0-a97f-9156b4f693ee"
}
}
}
Human Readable Output
Results
Display Name Site Source Id Hold Status Created Date Time site_test_1 862f0a64-e7db-46e0-a97f-9156b4f693ee removing 2023-07-06T08:02:28.5670187Z
msg-apply-hold-ediscovery-custodian
Start the process of applying hold on eDiscovery custodians.
Available return statuses:
notApplied - The custodian is not on hold (all sources in it are not on hold).
applied - The custodian is on hold (all sources are on hold).
applying - The custodian is in applying hold state (applyHold operation triggered).
removing - The custodian is in removing the hold state(removeHold operation triggered).
partial - The custodian is in mixed state where some sources are on hold and some not on hold or error state.
Base Command
msg-apply-hold-ediscovery-custodian
Input
| Argument Name | Description | Required |
|---|---|---|
| case_id | The ID of the eDiscovery case. | Required |
| custodian_id | A comma-seperated list of custodians ids to apply a hold to. | Required |
Context Output
There is no context output for this command.
Command example
!msg-apply-hold-ediscovery-custodian custodian_id=09f05c43ffc54ff88cf5c5e89699375d,0af7ca2b84bc4cff930d5d301cc4caf3 case_id=84abfff1-dd69-4559-8f4e-8225e0d505c5
Human Readable Output
Apply hold status is running.
msg-remove-hold-ediscovery-custodian
Start the process of removing hold from eDiscovery custodians.
Base Command
msg-remove-hold-ediscovery-custodian
Input
| Argument Name | Description | Required |
|---|---|---|
| case_id | The ID of the eDiscovery case. | Required |
| custodian_id | A comma-seperated list of custodians ids to remove a hold from. | Required |
Context Output
There is no context output for this command.
Command example
!msg-remove-hold-ediscovery-custodian custodian_id=09f05c43ffc54ff88cf5c5e89699375d,0af7ca2b84bc4cff930d5d301cc4caf3 case_id=84abfff1-dd69-4559-8f4e-8225e0d505c5
Human Readable Output
Remove hold status is running.
msg-create-ediscovery-non-custodial-data-source
Create a new eDiscoveryNoncustodialDataSource object.
Base Command
msg-create-ediscovery-non-custodial-data-source
Input
| Argument Name | Description | Required |
|---|---|---|
| case_id | The ID of the eDiscovery case. | Required |
| site | URL of the site, for example, https://contoso.sharepoint.com/sites/HumanResources. | Optional |
| Email address of the user’s mailbox. | Optional |
Context Output
| Path | Type | Description |
|---|---|---|
| MsGraph.NoncustodialDataSource.CreatedDateTime | Date | Created date and time of the nonCustodialDataSource. |
| MsGraph.NoncustodialDataSource.DataSourceId | String | Unique identifier of the nonCustodialDataSource. |
| MsGraph.NoncustodialDataSource.DataSourceStatus | String | Latest status of the nonCustodialDataSource. Possible values are: Active, Released. |
| MsGraph.NoncustodialDataSource.DisplayName | String | Display name of the noncustodialDataSource. |
| MsGraph.NoncustodialDataSource.HoldStatus | String | The hold status of the nonCustodialDataSource.The possible values are: notApplied, applied, applying, removing, partial |
| MsGraph.NoncustodialDataSource.LastModifiedDateTime | Date | Last modified date and time of the nonCustodialDataSource. |
| MsGraph.NoncustodialDataSource.ReleasedDateTime | Date | Date and time that the nonCustodialDataSource was released from the case. |
Command example
!msg-create-ediscovery-non-custodial-data-source case_id=84abfff1-dd69-4559-8f4e-8225e0d505c5 site=https://yourdev.sharepoint.com/sites/site_test_1
Context Example
{
"MsGraph": {
"NoncustodialDataSource": {
"CreatedDateTime": "2023-07-06T08:22:32.3121523Z",
"DataSourceId": "38394332433939353236344630434633",
"DataSourceStatus": "active",
"DisplayName": "site_test_1",
"HoldStatus": "notApplied",
"LastModifiedDateTime": "2023-07-06T08:22:32.3121523Z",
"ReleasedDateTime": "0001-01-01T00:00:00Z"
}
}
}
Human Readable Output
Results
Created Date Time Data Source Id Data Source Status Display Name Hold Status Last Modified Date Time Released Date Time 2023-07-06T08:22:32.3121523Z 38394332433939353236344630434633 active site_test_1 notApplied 2023-07-06T08:22:32.3121523Z 0001-01-01T00:00:00Z
msg-list-ediscovery-non-custodial-data-sources
Get a list of the non-custodial data sources and their properties.
Base Command
msg-list-ediscovery-non-custodial-data-sources
Input
| Argument Name | Description | Required |
|---|---|---|
| case_id | The ID of the eDiscovery case. | Required |
| data_source_id | The ID of the dataSource. If provided, only this id will be returned. | Optional |
| limit | The maximum number of results to return. Default is 50. | Optional |
| all_results | Show all results if true. Possible values are: true, false. | Optional |
Context Output
| Path | Type | Description |
|---|---|---|
| MsGraph.NoncustodialDataSource.CreatedDateTime | Date | Created date and time of the nonCustodialDataSource. |
| MsGraph.NoncustodialDataSource.DataSourceId | String | Unique identifier of the nonCustodialDataSource. |
| MsGraph.NoncustodialDataSource.DataSourceStatus | String | Latest status of the nonCustodialDataSource. Possible values are: Active, Released. |
| MsGraph.NoncustodialDataSource.DisplayName | String | Display name of the noncustodialDataSource. |
| MsGraph.NoncustodialDataSource.HoldStatus | String | The hold status of the nonCustodialDataSource.The possible values are: notApplied, applied, applying, removing, partial |
| MsGraph.NoncustodialDataSource.LastModifiedDateTime | Date | Last modified date and time of the nonCustodialDataSource. |
| MsGraph.NoncustodialDataSource.ReleasedDateTime | Date | Date and time that the nonCustodialDataSource was released from the case. |
Command example
!msg-list-ediscovery-non-custodial-data-sources case_id=84abfff1-dd69-4559-8f4e-8225e0d505c5
Context Example
{
"MsGraph": {
"NoncustodialDataSource": {
"CreatedDateTime": "2023-07-06T08:22:32.3121523Z",
"DataSourceId": "38394332433939353236344630434633",
"DisplayName": "site_test_1",
"HoldStatus": "notApplied",
"LastModifiedDateTime": "2023-07-06T08:22:32.3121523Z",
"ReleasedDateTime": "0001-01-01T00:00:00Z",
"Status": "active"
}
}
}
Human Readable Output
Results
Display Name Data Source Id Hold Status Created Date Time Last Modified Date Time Released Date Time Status site_test_1 38394332433939353236344630434633 notApplied 2023-07-06T08:22:32.3121523Z 2023-07-06T08:22:32.3121523Z 0001-01-01T00:00:00Z active
msg-create-ediscovery-search
Create a new eDiscoverySearch object.
Base Command
msg-create-ediscovery-search
Input
| Argument Name | Description | Required |
|---|---|---|
| case_id | The ID of the eDiscovery case. | Required |
| display_name | The display name of the search. | Required |
| description | The description of the search. | Optional |
| content_query | The query string used for the search. The query string format is KQL (Keyword Query Language). For details, see https://learn.microsoft.com/en-us/microsoft-365/compliance/keyword-queries-and-search-conditions.. You can refine searches by using fields paired with values; for example, subject:”Quarterly Financials” AND Date>=06/01/2016 AND Date<=07/01/2016. | Optional |
| data_source_scopes | When specified, the collection will span across a service for an entire workload. Possible values are: none, allTenantMailboxes, allTenantSites, allCaseCustodians, allCaseNoncustodialDataSources. | Optional |
Context Output
| Path | Type | Description |
|---|---|---|
| MsGraph.eDiscoverySearch.ContentQuery | String | The query string in KQL (Keyword Query Language) query. For details, see see https://learn.microsoft.com/en-us/microsoft-365/compliance/keyword-queries-and-search-conditions.. You can refine searches by using fields paired with values; for example, subject:”Quarterly Financials” AND Date>=06/01/2016 AND Date<=07/01/2016. |
| MsGraph.eDiscoverySearch.CreatedBy.Application.DisplayName | String | Name of the application who created the eDiscovery search. |
| MsGraph.eDiscoverySearch.CreatedBy.Application.ID | String | ID of the application who created the eDiscovery search. |
| MsGraph.eDiscoverySearch.CreatedBy.User.DisplayName | String | Name of the user who created the eDiscovery search. |
| MsGraph.eDiscoverySearch.CreatedBy.User.ID | String | ID of the user who created the eDiscovery search. |
| MsGraph.eDiscoverySearch.CreatedBy.User.UserPrincipalName | String | Internet-style login name of the user who created the eDiscovery search. |
| MsGraph.eDiscoverySearch.CreatedDateTime | Date | The date and time the eDiscovery search was created. |
| MsGraph.eDiscoverySearch.DataSourceScopes | String | When specified, the collection will span across a service for an entire workload. Possible values are: none, allTenantMailboxes, allTenantSites, allCaseCustodians, allCaseNoncustodialDataSources. |
| MsGraph.eDiscoverySearch.Description | String | The description of the eDiscovery search. |
| MsGraph.eDiscoverySearch.DisplayName | String | The display name of the eDiscovery search. |
| MsGraph.eDiscoverySearch.LastModifiedDateTime | Date | The last date and time the eDiscovery search was modified. |
| MsGraph.eDiscoverySearch.SearchId | String | The ID for the eDiscovery search. |
Command example
!msg-create-ediscovery-search case_id=84abfff1-dd69-4559-8f4e-8225e0d505c5 display_name=`my search` data_source_scopes=allCaseNoncustodialDataSources
Context Example
{
"MsGraph": {
"eDiscoverySearch": {
"ContentQuery": "",
"CreatedBy": {
"Application": {
"DisplayName": "Cortex XSOAR - MS Graph Security Dev",
"ID": "734f96d8-b19c-4ab1-9382-e04aa9a5debd"
},
"User": {
"DisplayName": "Content Test",
"ID": "38c41451-94b8-44cc-8c02-649208c43b6b",
"UserPrincipalName": "ContentTest@yoursite.onmicrosoft.com"
}
},
"CreatedDateTime": "2023-07-06T08:25:36.9874937Z",
"DataSourceScopes": "allCaseNoncustodialDataSources",
"Description": "",
"DisplayName": "my search",
"LastModifiedDateTime": "2023-07-06T08:25:36.9874937Z",
"SearchId": "e7282eff-ba81-43cb-9027-522a343f6692"
}
}
}
Human Readable Output
Results
Display Name Data Source Scopes Search Id Created By Name Created By App Name Created By UPN Created Date Time Last Modified Date Time my search allCaseNoncustodialDataSources e7282eff-ba81-43cb-9027-522a343f6692 Content Test Cortex XSOAR - MS Graph Security Dev ContentTest@yoursite.onmicrosoft.com 2023-07-06T08:25:36.9874937Z 2023-07-06T08:25:36.9874937Z
msg-update-ediscovery-search
Update an eDiscoverySearch object.
Base Command
msg-update-ediscovery-search
Input
| Argument Name | Description | Required |
|---|---|---|
| case_id | The ID of the eDiscovery case. | Required |
| search_id | The ID of the eDiscovery search. | Required |
| display_name | The display name of the search. | Required |
| description | The description of the search. | Optional |
| content_query | The query string used for the search. The query string format is KQL (Keyword Query Language). For details, see Keyword queries and search conditions for Content Search and eDiscovery. You can refine searches by using fields paired with values, for example, subject:”Quarterly Financials” AND Date>=06/01/2016 AND Date<=07/01/2016. | Optional |
| data_source_scopes | When specified, the collection will span across a service for an entire workload. Possible values are: none, allTenantMailboxes, allTenantSites, allCaseCustodians, allCaseNoncustodialDataSources. | Optional |
Context Output
There is no context output for this command.
Command example
!msg-update-ediscovery-search case_id=84abfff1-dd69-4559-8f4e-8225e0d505c5 display_name=newname search_id=e7282eff-ba81-43cb-9027-522a343f6692
Human Readable Output
eDiscovery search e7282eff-ba81-43cb-9027-522a343f6692 was updated successfully.
msg-list-ediscovery-searchs
Get the list of eDiscoverySearch resources from an eDiscovery case.
Base Command
msg-list-ediscovery-searchs
Input
| Argument Name | Description | Required |
|---|---|---|
| case_id | The ID of the eDiscovery case. | Required |
| search_id | The ID of the eDiscovery search. If provided, only this id will be returned. | Optional |
| limit | The maximum number of results to return. Default is 50. | Optional |
| all_results | Show all results if true. Possible values are: true, false. | Optional |
Context Output
| Path | Type | Description |
|---|---|---|
| MsGraph.eDiscoverySearch.ContentQuery | String | The query string in KQL (Keyword Query Language) query. For details, see Keyword queries and search conditions for Content Search and eDiscovery. You can refine searches by using fields paired with values; for example, subject:”Quarterly Financials” AND Date>=06/01/2016 AND Date<=07/01/2016. |
| MsGraph.eDiscoverySearch.CreatedBy.Application.DisplayName | String | Name of the application who created the eDiscovery search. |
| MsGraph.eDiscoverySearch.CreatedBy.Application.ID | String | ID of the application who created the eDiscovery search. |
| MsGraph.eDiscoverySearch.CreatedBy.User.DisplayName | String | Name of the user who created the eDiscovery search. |
| MsGraph.eDiscoverySearch.CreatedBy.User.ID | String | ID of the user who created the eDiscovery search. |
| MsGraph.eDiscoverySearch.CreatedBy.User.UserPrincipalName | String | Internet-style login name of the user who created the eDiscovery search. |
| MsGraph.eDiscoverySearch.CreatedDateTime | Date | The date and time the eDiscovery search was created. |
| MsGraph.eDiscoverySearch.DataSourceScopes | String | When specified, the collection will span across a service for an entire workload. Possible values are: none, allTenantMailboxes, allTenantSites, allCaseCustodians, allCaseNoncustodialDataSources. |
| MsGraph.eDiscoverySearch.Description | String | The description of the eDiscovery search. |
| MsGraph.eDiscoverySearch.DisplayName | String | The display name of the eDiscovery search. |
| MsGraph.eDiscoverySearch.SearchId | String | The ID for the eDiscovery search. |
| MsGraph.eDiscoverySearch.LastModifiedDateTime | String | The last date and time the eDiscovery search was modified. |
| MsGraph.eDiscoverySearch.LastModifiedBy.Application.DisplayName | String | Name of the application who last modified the eDiscovery search. |
| MsGraph.eDiscoverySearch.LastModifiedBy.Application.ID | String | ID of the application who last modified the eDiscovery search. |
| MsGraph.eDiscoverySearch.LastModifiedBy.User.DisplayName | String | Name of the user who last modified the eDiscovery search. |
| MsGraph.eDiscoverySearch.LastModifiedBy.User.ID | String | ID of the user who last modified the eDiscovery search. |
| MsGraph.eDiscoverySearch.LastModifiedBy.User.UserPrincipalName | String | Internet-style login name of the user who last modified the eDiscovery search. |
Command example
!msg-list-ediscovery-searchs case_id=84abfff1-dd69-4559-8f4e-8225e0d505c5
Context Example
{
"MsGraph": {
"eDiscoverySearch": {
"ContentQuery": "",
"CreatedBy": {
"Application": {
"DisplayName": "Cortex XSOAR - MS Graph Security Dev",
"ID": "734f96d8-b19c-4ab1-9382-e04aa9a5debd"
},
"User": {
"DisplayName": "Content Test",
"ID": "38c41451-94b8-44cc-8c02-649208c43b6b",
"UserPrincipalName": "ContentTest@yoursite.onmicrosoft.com"
}
},
"CreatedDateTime": "2023-07-06T08:25:36.9874937Z",
"DataSourceScopes": "allCaseNoncustodialDataSources",
"Description": "",
"DisplayName": "newname",
"LastModifiedBy": {
"Application": {
"DisplayName": "Cortex XSOAR - MS Graph Security Dev",
"ID": "734f96d8-b19c-4ab1-9382-e04aa9a5debd"
},
"User": {
"DisplayName": "Content Test",
"ID": "38c41451-94b8-44cc-8c02-649208c43b6b",
"UserPrincipalName": "ContentTest@yoursite.onmicrosoft.com"
}
},
"LastModifiedDateTime": "2023-07-06T08:27:51.5611704Z",
"SearchId": "e7282eff-ba81-43cb-9027-522a343f6692"
}
}
}
Human Readable Output
Results
Display Name Data Source Scopes Search Id Created By Name Created By App Name Created By UPN Created Date Time Last Modified Date Time newname allCaseNoncustodialDataSources e7282eff-ba81-43cb-9027-522a343f6692 Content Test Cortex XSOAR - MS Graph Security Dev ContentTest@yoursite.onmicrosoft.com 2023-07-06T08:25:36.9874937Z 2023-07-06T08:27:51.5611704Z
msg-purge-ediscovery-data
Deletes mailbox items in Exchange or messages in Microsoft Teams that are included in an eDiscovery search.
You can collect and purge the following categories of Teams content:
Teams 1:1 chats - Chat messages, posts, and attachments shared in a Teams conversation between two people. Teams 1:1 chats are also called conversations.
Teams group chats - Chat messages, posts, and attachments shared in a Teams conversation between three or more people. Also called 1:N chats or group conversations.
Teams channels - Chat messages, posts, replies, and attachments shared in a standard Teams channel.
Private channels - Message posts, replies, and attachments shared in a private Teams channel.
Shared channels - Message posts, replies, and attachments shared in a shared Teams channel.
Base Command
msg-purge-ediscovery-data
Input
| Argument Name | Description | Required |
|---|---|---|
| case_id | The ID of the eDiscovery case. | Required |
| search_id | The ID of the eDiscovery search. | Required |
| purge_type | Whether the action is soft delete or hard delete. Possible values are: permanentlyDelete, recoverable. | Optional |
| purge_areas | Define the locations to be in scope of the purge action. Possible values are: teamsMessages, mailboxes. | Optional |
Context Output
| Path | Type | Description |
|---|---|---|
| MsGraph.eDiscoveryCase.Purge.OperationID | String | The ID of the purge operation. Use this ID to retrieve the operation status via ‘msg-list-case-operation’. |
| MsGraph.eDiscoveryCase.Purge.Status | String | The status of the purge operation. |
Command example
!msg-purge-ediscovery-data case_id=00000000-0000-0000-0000-000000000000 search_id=11111111-1111-1111-1111-111111111111 purge_type=permanentlyDelete purge_areas=mailboxes
Context Example
{
"MsGraph": {
"eDiscoveryCase": {
"Purge": {
"OperationID": "example-operation-id",
"Status": "succeeded"
}
}
}
}
Human Readable Output
eDiscovery purge status is succeeded.
- Operation ID: example-operation-id
msg-delete-ediscovery-search
Delete an eDiscoverySearch object.
Base Command
msg-delete-ediscovery-search
Input
| Argument Name | Description | Required |
|---|---|---|
| case_id | The ID of the eDiscovery case. | Required |
| search_id | The ID of the eDiscovery search. | Optional |
Context Output
There is no context output for this command.
Command example
!msg-delete-ediscovery-search case_id=84abfff1-dd69-4559-8f4e-8225e0d505c5 search_id=e7282eff-ba81-43cb-9027-522a343f6692
Human Readable Output
eDiscovery search e7282eff-ba81-43cb-9027-522a343f6692 was deleted successfully.
Threat Assessment Commands
msg-create-mail-assessment-request
Create and retrieve a mail threat assessment.
Note:
- The message given in the command’s argument message_id has to contain X-MS-Exchange-Organization-Network-Message-Id header in the message or in the X-MS-Office365-Filtering-Correlation-Id header in quarantined messages.
-
Delegated Mail permissions (Mail.Read or Mail.Read.Shared) are required to access the mail received by the user (recipient email and message user), which means that if the authenticated user is different from the user specified in the recipient_email and message_user, then Read and manage permissions on behalf of the given user need to be added for the authenticated user via Microsoft 365 admin center.
- Go to Microsoft 365 admin center.
- Choose the user email which will be provided in the command’s arguments.
- Click on Manage product licenses.
- Go to Mail.
- Under Mailbox permissions, click on Read and manage permissions.
- click on Add permissions.
- Choose the authenticated user email from the list of given users.
- Click on add.
Base Command
msg-create-mail-assessment-request
Input
| Argument Name | Description | Required |
|---|---|---|
| recipient_email | The email of the user who recieved the mail. | Required |
| expected_assessment | the expected assessment: blocked or unblocked | Required |
| category | The category of the threat: phishing, malware or spam. | Required |
| message_user | Message user, the user’s id or the user’s email. | Required |
| message_id | Message id, Message has to contain ‘X-MS-Exchange-Organization-Network-Message-Id’ header in the message or the ‘X-MS-Office365-Filtering-Correlation-Id’ header in quarantined messages. | Required |
Context Output
| Path | Type | Description |
|---|---|---|
| MSGraphMail.MailAssessment.ID | String | Request id. |
| MSGraphMail.MailAssessment.CreatedDateTime | Date | Created data of the threat assessment request. |
| MSGraphMail.MailAssessment.ContentType | String | The content type of threat assessment. |
| MSGraphMail.MailAssessment.ExpectedAssessment | String | The expected assessment from submitter. Possible values are: block, unblock. |
| MSGraphMail.MailAssessment.Category | String | The threat category. Possible values are: spam, phishing, malware. |
| MSGraphMail.MailAssessment.Status | String | The assessment process status. Possible values are: pending, completed. |
| MSGraphMail.MailAssessment.RequestSource | String | The source of threat assessment request. Possible values are: administrator. |
| MSGraphMail.MailAssessment.RecipientEmail | String | The mail recipient whose policies are used to assess the mail. |
| MSGraphMail.MailAssessment.DestinationRoutingReason | String | The reason for mail routed to its destination. Possible values are: none, mailFlowRule, safeSender, blockedSender, advancedSpamFiltering, domainAllowList, domainBlockList, notInAddressBook, firstTimeSender, autoPurgeToInbox, autoPurgeToJunk, autoPurgeToDeleted, outbound, notJunk, junk. |
| MSGraphMail.MailAssessment.MessageID | String | Extracted from the message URI which is The resource URI of the mail message for assessment. |
| MSGraphMail.MailAssessment.CreatedUserID | String | User id. |
| MSGraphMail.MailAssessment.CreatedUsername | String | Username. |
| MSGraphMail.MailAssessment.ResultType | String | Result of the request. |
| MSGraphMail.MailAssessment.ResultMessage | String | Message of the result. |
Command example
!msg-create-mail-assessment-request recipient_email="avishai@demistodev.onmicrosoft.com" expectedAssessment=unblock category=spam user_id=3fa9f28b-eb0e-463a-ba7b-8089fe9991e2 user_message=AAMkAGY3OTQyMzMzLWYxNjktNDE0My05NmZhLWQ5MGY1YjIyNzBkNABGAAAAAACYCKjWAnXBTrnhgWJCcLX7BwDrxRwRjq-zTrN6vWSzK4OWAAAAAAEJAADrxRwRjq-zTrN6vWSzK4OWAAY5aBb-AAA=
Context Example
{
"id": "11922306-b25b-4605-ff0d-08d772fcf996",
"createdDateTime": "2019-11-27T05:45:14.0962061Z",
"contentType": "mail",
"expectedAssessment": "unblock",
"category": "spam",
"status": "completed",
"requestSource": "administrator",
"recipientEmail": "avishai@demistodev.onmicrosoft.com",
"destinationRoutingReason": "notJunk",
"messageUri": "",
"createdBy": {
"user": {
"id": "c52ce8db-3e4b-4181-93c4-7d6b6bffaf60",
"displayName": "Ronald Admin"
}
},
"results": [
{
"id": "63798129-a62c-4f9e-2c6d-08d772fcfb0e",
"createdDateTime": "2019-11-27T05:45:16.55Z",
"resultType": "checkPolicy",
"message": "No policy was hit."
},
{
"id": "d38c2448-79eb-467e-2495-08d772fdb7d1",
"createdDateTime": "2019-11-27T05:50:33.243Z",
"resultType": "rescan",
"message": "Not Spam"
}
]
}
Human Readable Output
Mail assessment request
ID Created DateTime Content Type Expected Assessment Category Status Request Source Recipient Email Destination Routing Reason Created User ID Created Username 11922306-b25b-4605-ff0d-08d772fcf996 “2019-11-27T05:45:14.0962061Z” unblock spam completed administrator avishai@demistodev.onmicrosoft.com notJunk 63798129-a62c-4f9e-2c6d-08d772fcfb0e No policy was hit.
msg-create-email-file-assessment-request
Create and retrieve an email file threat assessment.
Note: File has to contain X-MS-Exchange-Organization-Network-Message-Id header in the message or in the X-MS-Office365-Filtering-Correlation-Id header in quarantined messages.
Base Command
msg-create-email-file-assessment-request
Input
| Argument Name | Description | Required |
|---|---|---|
| recipient_email | The email of the user who recieved the mail. | Required |
| expected_assessment | the expected assessment: blocked or unblocked | Required |
| category | The category of the threat: phishing, malware or spam. | Required |
| content_data | content of an email file. | Optional |
| entry_id | entry id of file uploaded in the war room. | Optional |
Context Output
| Path | Type | Description |
|---|---|---|
| MSGraphMail.EmailAssessment.ID | String | Request id. |
| MSGraphMail.EmailAssessment.CreatedDateTime | Date | Created data of the threat assessment request. |
| MSGraphMail.EmailAssessment.ContentType | String | The content type of threat assessment. |
| MSGraphMail.EmailAssessment.ExpectedAssessment | String | The expected assessment from submitter. Possible values are: block, unblock. |
| MSGraphMail.EmailAssessment.Category | String | The threat category. Possible values are: spam, phishing, malware. |
| MSGraphMail.EmailAssessment.Status | String | The assessment process status. Possible values are: pending, completed. |
| MSGraphMail.EmailAssessment.RequestSource | String | The source of threat assessment request. Possible values are: administrator. |
| MSGraphMail.EmailAssessment.RecipientEmail | String | The mail recipient whose policies are used to assess the mail. |
| MSGraphMail.EmailAssessment.DestinationRoutingReason | String | The reason for mail routed to its destination. Possible values are: none, mailFlowRule, safeSender, blockedSender, advancedSpamFiltering, domainAllowList, domainBlockList, notInAddressBook, firstTimeSender, autoPurgeToInbox, autoPurgeToJunk, autoPurgeToDeleted, outbound, notJunk, junk. |
| MSGraphMail.EmailAssessment.CreatedUserID | String | User id. |
| MSGraphMail.EmailAssessment.CreatedUsername | String | Username. |
| MSGraphMail.EmailAssessment.ResultType | String | Result of the request. |
| MSGraphMail.EmailAssessment.ResultMessage | String | Message of the result. |
Command example
!msg-create-email-file-assessment-request recipient_email="avishai@demistodev.onmicrosoft.com" expectedAssessment=unblock category=phishing entry_id=12359704829584
Context Example
{
"id": "76598306-b25b-4605-ff0d-03kgmtfcf996",
"createdDateTime": "2019-11-27T05:45:14.0962061Z",
"contentType": "mail",
"expectedAssessment": "unblock",
"category": "phishing",
"status": "completed",
"requestSource": "administrator",
"recipientEmail": "avishai@demistodev.onmicrosoft.com",
"destinationRoutingReason": "notJunk",
"createdBy": {
"user": {
"id": "c52ce8db-3e4b-4181-93c4-7d6b6bffaf60",
"displayName": "Ronald Admin"
}
},
"results": [
{
"id": "63798129-a62c-4f9e-2c6d-08d772fcfb0e",
"createdDateTime": "2019-11-27T05:45:16.55Z",
"resultType": "checkPolicy",
"message": "Phishing attempt."
}
]
}
Human Readable Output
Mail assessment request
ID Created DateTime Content Type Expected Assessment Category Status Request Source Recipient Email Destination Routing Reason Created User ID Created Username 76598306-b25b-4605-ff0d-03kgmtfcf996 “2019-11-27T05:45:14.0962061Z” unblock phishing completed administrator avishai@demistodev.onmicrosoft.com notJunk 63798129-a62c-4f9e-2c6d-08d772fcfb0e Phishing attempt.
msg-create-file-assessment-request
Create and retrieve a file threat assessment.
Base Command
msg-create-file-assessment-request
Input
| Argument Name | Description | Required |
|---|---|---|
| file_name | The file name. | Required |
| expected_assessment | the expected assessment: blocked or unblocked | Required |
| category | The category of the threat: phishing, malware or spam. | Required |
| content_data | content of an email file. | Optional |
| entry_id | entry id of file uploaded in the war room. | Optional |
Context Output
| Path | Type | Description |
|---|---|---|
| MSGraphMail.FileAssessment.ID | String | Request id. |
| MSGraphMail.FileAssessment.CreatedDateTime | Date | Created data of the threat assessment request. |
| MSGraphMail.FileAssessment.ContentType | String | The content type of threat assessment. |
| MSGraphMail.FileAssessment.ExpectedAssessment | String | The expected assessment from submitter. Possible values are: block, unblock. |
| MSGraphMail.FileAssessment.Category | String | The threat category. Possible values are: phishing, malware. |
| MSGraphMail.FileAssessment.Status | String | The assessment process status. Possible values are: pending, completed. |
| MSGraphMail.FileAssessment.RequestSource | String | The source of threat assessment request. Possible values are: administrator. |
| MSGraphMail.FileAssessment.FileName | String | The file name. |
| MSGraphMail.FileAssessment.CreatedUserID | String | User id. |
| MSGraphMail.FileAssessment.CreatedUsername | String | Username. |
| MSGraphMail.FileAssessment.ResultType | String | Result of the request. |
| MSGraphMail.FileAssessment.ResultMessage | String | Message of the result. |
Command example
!msg-create-file-assessment-request file_name="test_file.txt" expectedAssessment=block category=phishing entry_id=1235970482958bkf4
Context Example
{
"id": "0796306-b456-4605-ff0d-03kgmtfcf876",
"createdDateTime": "2019-11-27T05:45:14.0962061Z",
"contentType": "file",
"expectedAssessment": "block",
"category": "phishing",
"status": "completed",
"requestSource": "administrator",
"fileName": "test_file.txt",
"createdBy": {
"user": {
"id": "c52ce8db-3e4b-4181-93c4-7d6b6bffaf60",
"displayName": "Ronald Admin"
}
},
"results": [
{
"id": "63798129-a62c-4f9e-2c6d-08d772fcfb0e",
"createdDateTime": "2019-11-27T05:45:16.55Z",
"resultType": "checkPolicy",
"message": "Phishing attempt."
}
]
}
Human Readable Output
Mail assessment request
ID Created DateTime Content Type Expected Assessment Category Status Request Source File Name Created User ID Created Username 0796306-b456-4605-ff0d-03kgmtfcf876 “2019-11-27T05:45:14.0962061Z” file block phishing completed administrator test_file.txt 63798129-a62c-4f9e-2c6d-08d772fcfb0e Phishing attempt.
msg-create-url-assessment-request
Create and retrieve url threat assessment.
Base Command
msg-create-url-assessment-request
Input
| Argument Name | Description | Required |
|---|---|---|
| url | The URL. | Required |
| expected_assessment | the expected assessment: blocked or unblocked | Required |
| category | The category of the threat: phishing, malware or spam. | Required |
Context Output
| Path | Type | Description |
|---|---|---|
| MSGraphMail.UrlAssessment.ID | String | Request id. |
| MSGraphMail.UrlAssessment.CreatedDateTime | Date | Created data of the threat assessment request. |
| MSGraphMail.UrlAssessment.ContentType | String | The content type of threat assessment. |
| MSGraphMail.UrlAssessment.ExpectedAssessment | String | The expected assessment from submitter. Possible values are: block, unblock. |
| MSGraphMail.UrlAssessment.Category | String | The threat category. Possible values are: spam, phishing, malware. |
| MSGraphMail.UrlAssessment.Status | String | The assessment process status. Possible values are: pending, completed. |
| MSGraphMail.UrlAssessment.RequestSource | String | The source of threat assessment request. Possible values are: administrator. |
| MSGraphMail.UrlAssessment.Url | String | The url. |
| MSGraphMail.UrlAssessment.CreatedUserID | String | User id. |
| MSGraphMail.UrlAssessment.CreatedUsername | String | Username. |
| MSGraphMail.UrlAssessment.ResultType | String | Result of the request. |
| MSGraphMail.UrlAssessment.ResultMessage | String | Message of the result. |
| MSGraphMail.UrlAssessment.RecipientEmail | String | Recipient Email. |
| MSGraphMail.UrlAssessment.DestinationRoutingReason | String | Destination Routing Reason. |
Command example
!msg-create-url-assessment-request url="httpp://support.clean-mx.de/clean-mx/viruses.php" expectedAssessment=block category=malware
Context Example
{
"id": "0796306-b456-4605-ff0d-03okmtgcf876",
"createdDateTime": "2019-11-27T05:45:14.0962061Z",
"contentType": "url",
"expectedAssessment": "block",
"category": "malware",
"status": "completed",
"requestSource": "administrator",
"url": "httpp://support.clean-mx.de/clean-mx/viruses.php",
"createdBy": {
"user": {
"id": "c52ce8db-3e4b-4181-93c4-7d6b6bffaf60",
"displayName": "Ronald Admin"
}
},
"results": [
{
"id": "63798129-a62c-4f9e-2c6d-08d772fcfb0e",
"createdDateTime": "2019-11-27T05:45:16.55Z",
"resultType": "checkPolicy",
"message": "Malware attempt."
}
]
}
Human Readable Output
Mail assessment request
ID Created DateTime Content Type Expected Assessment Category Status Request Source URL Created User ID Created Username 0796306-b456-4605-ff0d-03okmtgcf876 “2019-11-27T05:45:14.0962061Z” url block malware completed administrator httpp://support.clean-mx.de/clean-mx/viruses.php 63798129-a62c-4f9e-2c6d-08d772fcfb0e Malware attempt.
msg-list-threat-assessment-requests
Retrieve all threat assessment requests.
Base Command
msg-list-threat-assessment-requests
Input
| Argument Name | Description | Required |
|---|---|---|
| request_id | The request id. | Optional |
| filter | Available fields for filter are:expectedAssessment,ContentType,status,requestSource. Example:category eq ‘malware’ | Optional |
| order_by | Drop -down: id, createdDateTime, ContentType, expectedAssessment, category, status, requestSource, category | Optional |
| sort_order | desc or asc. | Optional |
| limit | Default is 50. | Optional |
| next_token | the retrieved token from first run when there’s more data to retrieve. | Optional |
Context Output
| Path | Type | Description |
|---|---|---|
| MSGraphMail.AssessmentRequest.ID | String | Request id. |
| MSGraphMail.AssessmentRequest.CreatedDateTime | Date | Created data of the threat assessment request. |
| MSGraphMail.AssessmentRequest.ContentType | String | The content type of threat assessment. |
| MSGraphMail.AssessmentRequest.ExpectedAssessment | String | The expected assessment from submitter. Possible values are: block, unblock. |
| MSGraphMail.AssessmentRequest.Category | String | The threat category. Possible values are: spam, phishing, malware. |
| MSGraphMail.AssessmentRequest.Status | String | The assessment process status. Possible values are: pending, completed. |
| MSGraphMail.AssessmentRequest.RequestSource | String | The source of threat assessment request. Possible values are: administrator. |
| MSGraphMail.AssessmentRequest.DestinationRoutingReason | String | The destination Routing Reason. |
| MSGraphMail.AssessmentRequest.RecipientEmail | String | The recipient email. |
| MSGraphMail.AssessmentRequest.URL | String | The url. |
| MSGraphMail.AssessmentRequest.FileName | String | The file name. |
| MSGraphMail.AssessmentRequest.CreatedUserID | String | User id. |
| MSGraphMail.AssessmentRequest.CreatedUsername | String | Username. |
| MSGraphMail.AssessmentRequest.ResultType | String | Result of the request. |
| MSGraphMail.AssessmentRequest.ResultMessage | String | Message of the result. |
| MsGraph.AssessmentRequestNextToken.next_token | String | the next token from the previous run. |
Command example
#### Context Example
```json
{
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#informationProtection/threatAssessmentRequests",
"@odata.nextLink": "https://graph.microsoft.com/v1.0/informationProtection/threatAssessmentRequests?$skiptoken=eyJQYWdlQ29va2llIjoiPHJvdyBpZF9JZGVudGl0",
"value": [
{
"@odata.type": "#microsoft.graph.mailAssessmentRequest",
"id": "49c5ef5b-1f65-444a-e6b9-08d772ea2059",
"createdDateTime": "2019-11-27T03:30:18.6890937Z",
"contentType": "mail",
"expectedAssessment": "block",
"category": "spam",
"status": "pending",
"requestSource": "administrator",
"recipientEmail": "avishaibrandies@microsoft.com",
"destinationRoutingReason": "notJunk",
"messageUri": "https://graph.microsoft.com/v1.0/users/c52ce8db-3e4b-4181-93c4-7d6b6bffaf60/messages/AAMkADU3MWUxOTU0LWNlOTEt=",
"createdBy": {
"user": {
"id": "c52ce8db-3e4b-4181-93c4-7d6b6bffaf60",
"displayName": "Ronald Admin"
}
}
},
{
"@odata.type": "#microsoft.graph.emailFileAssessmentRequest",
"id": "ab2ad9b3-2213-4091-ae0c-08d76ddbcacf",
"createdDateTime": "2019-11-20T17:05:06.4088076Z",
"contentType": "mail",
"expectedAssessment": "block",
"category": "malware",
"status": "completed",
"requestSource": "administrator",
"recipientEmail": "tifc@a830edad9050849EQTPWBJZXODQ.onmicrosoft.com",
"destinationRoutingReason": "notJunk",
"contentData": "",
"createdBy": {
"user": {
"id": "c52ce8db-3e4b-4181-93c4-7d6b6bffaf60",
"displayName": "Ronald Admin"
}
}
}
]
}
Human Readable Output
###Next Token is: eyJQYWdlQ29va2llIjoiPHJvdyBpZF9JZGVudGl
Mail assessment request
ID Created DateTime Content Type Expected Assessment Category Status Request Source Recipient Email Created User ID Created Username destinationRoutingReason 49c5ef5b-1f65-444a-e6b9-08d772ea2059 “2019-11-27T03:30:18.6890937Z” block spam pending administrator avishaibrandies@microsoft.com 63798129-a62c-4f9e-2c6d-08d772fcfb0e spam attempt. notJunk ab2ad9b3-2213-4091-ae0c-08d76ddbcacf 2019-11-20T17:05:06.4088076Z block malware pending administrator avishaibrandies@microsoft.com 63798129-a62c-4f9e-2c6d-08d772fcfb0e Malware attempt. notJunk
msg-generate-login-url
Generate the login URL used for the authorization code flow.
Base Command
msg-generate-login-url
Input
| Argument Name | Description | Required |
| — | — | — |
Context Output
There is no context output for this command.
Human Readable Output
Authorization instructions
- Click on the login URL to sign in and grant Cortex XSOAR permissions for your Azure Service Management.
You will be automatically redirected to a link with the following structure:
REDIRECT_URI?code=AUTH_CODE&session_state=SESSION_STATE- Copy the
AUTH_CODE(without thecode=prefix, and thesession_stateparameter)
and paste it in your instance configuration under the Authorization code parameter.
msg-advanced-hunting
Advanced hunting is a threat-hunting tool that uses specially constructed queries to examine the past 30 days of event data in Microsoft Graph Security.
To save result in context to ‘Microsoft365Defender’ as well, you can check the ‘Microsoft 365 Defender context’ checkbox in Instance Setting.
Base Command
msg-advanced-hunting
Input
| Argument Name | Description | Required |
|---|---|---|
| query | Advanced hunting query. | Required |
| limit | Number of entries. Enter -1 for unlimited query, In case a limit also appears in the query, priority will be given to the query. | Optional |
| timeout | The time limit in seconds for the http request to run | Optional |
Context Output
| Path | Type | Description |
|---|---|---|
| MsGraph.Hunt.query | String | The query used, also acted as a key. |
| MsGraph.Hunt.results | Unknown | The results of the query. |
| Microsoft365Defender.Hunt.query | String | The query used, also acted as a key. |
| Microsoft365Defender.Hunt.results | Unknown | The results of the query. |
Command example
!msg-advanced-hunting query=AlertInfo limit=1
Context Example
{
"Microsoft365Defender": {
"Hunt": {
"query": "AlertInfo | limit 1 ",
"results": [
{
"AlertId": "abc123",
"AttackTechniques": "",
"Category": "Exfiltration",
"DetectionSource": "Microsoft Data Loss Prevention",
"ServiceSource": "Microsoft Data Loss Prevention",
"Severity": "Medium",
"Timestamp": "2024-03-19T03:00:08Z",
"Title": "DLP policy (Custom policy) matched for email with subject (Splunk Report: High Or Critical Priority Host With Malware - 15 min)"
}
]
}
},
"MsGraph": {
"Hunt": {
"query": "AlertInfo | limit 1 ",
"results": [
{
"AlertId": "abc123",
"AttackTechniques": "",
"Category": "Exfiltration",
"DetectionSource": "Microsoft Data Loss Prevention",
"ServiceSource": "Microsoft Data Loss Prevention",
"Severity": "Medium",
"Timestamp": "2024-03-19T03:00:08Z",
"Title": "DLP policy (Custom policy) matched for email with subject (Splunk Report: High Or Critical Priority Host With Malware - 15 min)"
}
]
}
}
}
Human Readable Output
See Results Above
msg-list-security-incident
Get a list of incident objects that Microsoft 365 Defender created to track attacks in an organization. If you want a specific incident, enter an incident ID.
Base Command
msg-list-security-incident
Input
| Argument Name | Description | Required |
|---|---|---|
| incident_id | Incident’s ID. | Optional |
| limit | Number of incidents in the list. Maximum is 50. Default is 50. | Optional |
| timeout | The time limit in seconds for the http request to run. Default is 50. | Optional |
| status | The status of the incident. Possible values are: active, redirected, resolved, inProgress, unknownFutureValue, awaitingAction. | Optional |
| assigned_to | Owner of the incident. | Optional |
| severity | Indicates the possible impact on assets. The higher the severity, the greater the impact. Typically higher severity items require the most immediate attention. Possible values are: unknown, informational, low, medium, high, unknownFutureValue. | Optional |
| classification | The specification for the incident. | Optional |
| odata | Filter incidents using ‘odata’ query. | Optional |
| extra_data | Whether to include each incident’s related alerts in the response. Possible values are: true, false. Default is false. | Optional |
Context Output
| Path | Type | Description |
|---|---|---|
| MsGraph.Incident.assignedTo | string | Owner of the incident, or null if no owner is assigned. Free editable text. |
| MsGraph.Incident.classification | string | The specification for the incident. Possible values are unknown, falsePositive, truePositive, informationalExpectedActivity, unknownFutureValue. |
| MsGraph.Incident.comments | string | Array of comments created by the Security Operations (SecOps) team when the incident is managed. |
| MsGraph.Incident.createdDateTime | date | Time when the incident was first created. |
| MsGraph.Incident.customTags | string | Array of custom tags associated with an incident. |
| MsGraph.Incident.description | string | Description of the incident. |
| MsGraph.Incident.determination | string | Specifies the determination of the incident. Possible values are unknown, apt, malware, securityPersonnel, securityTesting, unwantedSoftware, other, multiStagedAttack, compromisedUser, phishing, maliciousUserActivity, clean, insufficientData, confirmedUserActivity, lineOfBusinessApplication, unknownFutureValue. |
| MsGraph.Incident.displayName | string | The incident name. |
| MsGraph.Incident.id | number | Unique identifier to represent the incident. |
| MsGraph.Incident.incidentWebUrl | string | The URL for the incident page in the Microsoft 365 Defender portal. |
| MsGraph.Incident.lastModifiedBy | string | The identity that last modified the incident. |
| MsGraph.Incident.lastUpdateDateTime | string | Time when the incident was last updated. |
| MsGraph.Incident.redirectIncidentId | string | Only populated in case an incident is grouped with another incident, as part of the logic that processes incidents. In such a case, the status property is redirected. |
| MsGraph.Incident.severity | string | Indicates the possible impact on assets. The higher the severity, the greater the impact. Typically higher severity items require the most immediate attention. Possible values are unknown, informational, low, medium, high, unknownFutureValue. |
| MsGraph.Incident.status | string | The status of the incident. Possible values are active, resolved, inProgress, redirected, unknownFutureValue, and awaitingAction. |
| MsGraph.Incident.tenantId | string | The Microsoft Entra tenant in which the alert was created. |
| MsGraph.Incident.systemTags | string | The system tags associated with the incident. |
Command example
!msg-list-security-incident limit=1
Context Example
{
"MsGraph": {
"Incident": {
"@odata.count": 26176,
"value": [
{
"Assigned to": null,
"Classification": "unknown",
"Created date time": "2024-03-19T08:08:33.2533333Z",
"Custom tags": "",
"Determination": "unknown",
"Display name": "DLP policy (Custom policy) matched for email with subject (Splunk Report: High Or Critical Priority Host With Malware - 15 min) involving one user",
"Severity": "medium",
"Status": "active",
"System tags": "",
"Updated date time": "2024-03-19T08:08:33.36Z",
"id": "12345"
}
]
}
}
}
Human Readable Output
Incidents
Display name id Severity Status Assigned to Custom tags System tags Classification Determination Created date time Updated date time DLP policy (Custom policy) matched for email with subject (Splunk Report: High Or Critical Priority Host With Malware - 15 min) involving one user 12345 medium active unknown unknown 2024-03-19T08:08:33.2533333Z 2024-03-19T08:08:33.36Z
msg-update-security-incident
Update the incident with the given ID.
Base Command
msg-update-security-incident
Input
| Argument Name | Description | Required |
|---|---|---|
| incident_id | Incident’s ID. | Required |
| status | Categorize incidents (as Active, Resolved, or Redirected). Possible values are: active, resolved, redirected, unknownFutureValue. | Optional |
| assigned_to | Owner of the incident. | Optional |
| determination | Determination of the incident. Possible values are: unknown, apt, malware, securityPersonnel, unwantedSoftware, other, multiStagedAttack, compromisedUser, phishing, maliciousUserActivity, notMalicious. | Optional |
| classification | The specification for the incident. Possible values are: unknown, falsePositive, truePositive, informationalExpectedActivity, unknownFutureValue. | Optional |
| severity | Indicates the possible impact on assets. The higher the severity, the bigger the impact. Typically, higher severity items require the most immediate attention. The possible values are: unknown, informational, low, medium, high, unknownFutureValue. | Optional |
| resolving_comment | User input that explains the resolution of the incident and the classification choice. It contains free editable text. | Optional |
| custom_tags | Array of custom tags associated with an incident. | Optional |
| timeout | The time limit in seconds for the http request to run. Default is 50. | Optional |
Context Output
| Path | Type | Description |
|---|---|---|
| MsGraph.Incident.assignedTo | String | Owner of the incident, or null if no owner is assigned. Free editable text. |
| MsGraph.Incident.classification | String | The specification for the incident. Possible values are unknown, falsePositive, truePositive, informationalExpectedActivity, unknownFutureValue. |
| MsGraph.Incident.comments | String | Array of comments created by the Security Operations (SecOps) team when the incident is managed. |
| MsGraph.Incident.createdDateTime | Date | Time when the incident was first created. |
| MsGraph.Incident.customTags | String | Array of custom tags associated with an incident. |
| MsGraph.Incident.description | String | Description of the incident. |
| MsGraph.Incident.determination | String | Specifies the determination of the incident. Possible values are unknown, apt, malware, securityPersonnel, securityTesting, unwantedSoftware, other, multiStagedAttack, compromisedUser, phishing, maliciousUserActivity, clean, insufficientData, confirmedUserActivity, lineOfBusinessApplication, unknownFutureValue. |
| MsGraph.Incident.displayName | String | The incident name. |
| MsGraph.Incident.id | String | Unique identifier to represent the incident. |
| MsGraph.Incident.incidentWebUrl | String | The URL for the incident page in the Microsoft 365 Defender portal. |
| MsGraph.Incident.lastModifiedBy | String | The identity that last modified the incident. |
| MsGraph.Incident.lastUpdateDateTime | Date | Time when the incident was last updated. |
| MsGraph.Incident.redirectIncidentId | String | Only populated in case an incident is grouped with another incident, as part of the logic that processes incidents. In such a case, the status property is redirected. |
| MsGraph.Incident.severity | String | Indicates the possible impact on assets. The higher the severity, the greater the impact. Typically higher severity items require the most immediate attention. Possible values are unknown, informational, low, medium, high, unknownFutureValue. |
| MsGraph.Incident.status | String | The status of the incident. Possible values are active, resolved, inProgress, redirected, unknownFutureValue, and awaitingAction. |
| MsGraph.Incident.tenantId | String | The Microsoft Entra tenant in which the alert was created. |
| MsGraph.Incident.systemTags | String collection | The system tags associated with the incident. |
Command example
!msg-update-security-incident incident_id=12345
Context Example
{
"MsGraph": {
"Incidents": {
"assignedTo": "test5",
"classification": "unknown",
"comments": [],
"createdDateTime": "2024-03-17T15:50:31.9033333Z",
"customTags": [],
"description": null,
"determination": "unknown",
"displayName": "Exfiltration incident involving one user",
"id": "12345",
"incidentWebUrl": "https://security.microsoft.com/incidents/12345?tid=abc123",
"lastModifiedBy": "Microsoft 365 Defender-AlertCorrelation",
"lastUpdateDateTime": "2024-03-19T07:24:34.7066667Z",
"redirectIncidentId": null,
"severity": "medium",
"status": "active",
"systemTags": [],
"tenantId": "abc123"
}
}
}
Human Readable Output
Updated incident No. 12345
Display name id Severity Status Assigned to Custom tags System tags Classification Determination Created date time Updated date time Exfiltration incident involving one user 12345 medium active test5 unknown unknown 2024-03-17T15:50:31.9033333Z 2024-03-19T07:24:34.7066667Z msg-run-estimate-statistics
Starts an eDiscovery estimate statistics operation in Microsoft Purview. The operation calculates the size and number of items matching the search query.
Base Command
msg-run-estimate-statistics
Input
| Argument Name | Description | Required |
|---|---|---|
| case_id | The ID of the eDiscovery case. | Required |
| search_id | The ID of the eDiscovery search. | Required |
| statistics_options | Bitwise options that specify the statistics to generate. The possible values are: includeRefiners, includeQueryStats, includeUnindexedStats, advancedIndexing, locationsWithoutHits. The advancedIndexing and locationsWithoutHits values are only considered if includeUnindexedStats is set. Possible values are: includeRefiners, includeQueryStats, includeUnindexedStats, advancedIndexing, locationsWithoutHits. | Optional |
Context Output
There is no context output for this command.
msg-get-last-estimate-statistics-operation
Retrieves the most recent eDiscovery estimate statistics operation for a given search in Microsoft Purview. Use this command after running ‘msg-run-estimate-statistics’ to check the results.
Base Command
msg-get-last-estimate-statistics-operation
Input
| Argument Name | Description | Required |
|---|---|---|
| case_id | The ID of the eDiscovery case. | Required |
| search_id | The ID of the eDiscovery search. | Required |
Context Output
| Path | Type | Description |
|---|---|---|
| MsGraph.eDiscovery.EstimateStatistics.CaseID | String | The ID of the eDiscovery case. |
| MsGraph.eDiscovery.EstimateStatistics.SearchID | String | The ID of the eDiscovery search. |
| MsGraph.eDiscovery.EstimateStatistics.OperationID | String | The ID of the last estimate statistics operation. |
| MsGraph.eDiscovery.EstimateStatistics.Status | String | The current status of the last estimate statistics operation (e.g., running, succeeded, failed). |
| MsGraph.eDiscovery.EstimateStatistics.PercentProgress | Number | The percent progress of the last estimate statistics operation. |
| MsGraph.eDiscovery.EstimateStatistics.CreatedDateTime | Date | The date and time when the estimate operation was created. |
| MsGraph.eDiscovery.EstimateStatistics.CompletedDateTime | Date | The date and time when the estimate operation completed. |
| MsGraph.eDiscovery.EstimateStatistics.IndexedItemsCount | Number | The number of indexed items found in the search. |
| MsGraph.eDiscovery.EstimateStatistics.IndexedItemsSize | Number | The total size (in bytes) of indexed items. |
| MsGraph.eDiscovery.EstimateStatistics.UnindexedItemsCount | Number | The number of unindexed items found in the search. |
| MsGraph.eDiscovery.EstimateStatistics.UnindexedItemsSize | Number | The total size (in bytes) of unindexed items. |
| MsGraph.eDiscovery.EstimateStatistics.TotalItemsCount | Number | The total number of items (indexed + unindexed). |
| MsGraph.eDiscovery.EstimateStatistics.TotalItemsSize | Number | The total size (in bytes) of all items (indexed + unindexed). |
msg-list-ediscovery-case-hold-policy
Get a list of the ediscoveryHoldPolicy objects and their properties.
Base Command
msg-list-ediscovery-case-hold-policy
Input
| Argument Name | Description | Required |
|---|---|---|
| case_id | The ID of the eDiscovery case. | Required |
| hold_policy_id | The ID of the legal hold policy. | Optional |
| limit | Number of total results to return. Default is 50. | Optional |
| all_results | Show all results if true. Possible values are: true, false. Default is false. | Optional |
Context Output
| Path | Type | Description |
|---|---|---|
| MsGraph.eDiscoveryCase.HoldPolicy.ID | String | The ID of the eDiscovery hold policy. |
| MsGraph.eDiscoveryCase.HoldPolicy.DisplayName | String | The display name of the legal hold. |
| MsGraph.eDiscoveryCase.HoldPolicy.Description | String | The legal hold description. |
| MsGraph.eDiscoveryCase.HoldPolicy.ContentQuery | String | KQL query that specifies content to be held. If empty, all content in the specified locations is held. |
| MsGraph.eDiscoveryCase.HoldPolicy.IsEnabled | Boolean | Indicates whether the hold is enabled and actively holding content. |
| MsGraph.eDiscoveryCase.HoldPolicy.Status | String | The status of the legal hold. Possible values are Pending, Error, Success. |
| MsGraph.eDiscoveryCase.HoldPolicy.Errors | String | Lists any errors that happened while placing the hold. |
| MsGraph.eDiscoveryCase.HoldPolicy.CreatedDateTime | Date | The date and time the legal hold was created. |
| MsGraph.eDiscoveryCase.HoldPolicy.LastModifiedDateTime | Date | The date and time the legal hold was last modified. |
| MsGraph.eDiscoveryCase.HoldPolicy.CreatedBy.Application.ID | String | The unique identifier of the application associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.CreatedBy.Application.DisplayName | String | The display name of the application associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.CreatedBy.Application.TenantId | String | The tenant ID of the application identity associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.CreatedBy.ApplicationInstance.ID | String | The unique identifier of the application instance associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.CreatedBy.ApplicationInstance.DisplayName | String | The display name of the application instance associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.CreatedBy.ApplicationInstance.TenantId | String | The tenant ID of the application instance identity associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.CreatedBy.Conversation.ID | String | The unique identifier of the conversation (team or channel) associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.CreatedBy.Conversation.DisplayName | String | The display name of the conversation (team or channel) associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.CreatedBy.Conversation.TenantId | String | The tenant ID of the conversation identity associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.CreatedBy.ConversationIdentityType.ID | String | The identifier describing whether the conversation identifies a team or channel. |
| MsGraph.eDiscoveryCase.HoldPolicy.CreatedBy.ConversationIdentityType.DisplayName | String | The display name describing whether the conversation identifies a team or channel. |
| MsGraph.eDiscoveryCase.HoldPolicy.CreatedBy.ConversationIdentityType.TenantId | String | The tenant ID of the conversation identity type. |
| MsGraph.eDiscoveryCase.HoldPolicy.CreatedBy.Device.ID | String | The unique identifier of the device associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.CreatedBy.Device.DisplayName | String | The display name of the device associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.CreatedBy.Device.TenantId | String | The tenant ID of the device identity associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.CreatedBy.Encrypted.ID | String | The unique identifier of the encrypted identity associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.CreatedBy.Encrypted.DisplayName | String | The display name of the encrypted identity associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.CreatedBy.Encrypted.TenantId | String | The tenant ID of the encrypted identity associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.CreatedBy.OnPremises.ID | String | The unique identifier of the on-premises identity associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.CreatedBy.OnPremises.DisplayName | String | The display name of the on-premises identity associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.CreatedBy.OnPremises.TenantId | String | The tenant ID of the on-premises identity associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.CreatedBy.Guest.ID | String | The unique identifier of the guest identity associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.CreatedBy.Guest.DisplayName | String | The display name of the guest identity associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.CreatedBy.Guest.TenantId | String | The tenant ID of the guest identity associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.CreatedBy.Phone.ID | String | The unique identifier of the phone identity associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.CreatedBy.Phone.DisplayName | String | The display name of the phone identity associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.CreatedBy.Phone.TenantId | String | The tenant ID of the phone identity associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.CreatedBy.User.ID | String | The unique identifier of the user associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.CreatedBy.User.DisplayName | String | The display name of the user associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.CreatedBy.User.TenantId | String | The tenant ID of the user identity associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.LastModifiedBy.Application.ID | String | The unique identifier of the application associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.LastModifiedBy.Application.DisplayName | String | The display name of the application associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.LastModifiedBy.Application.TenantId | String | The tenant ID of the application identity associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.LastModifiedBy.ApplicationInstance.ID | String | The unique identifier of the application instance associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.LastModifiedBy.ApplicationInstance.DisplayName | String | The display name of the application instance associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.LastModifiedBy.ApplicationInstance.TenantId | String | The tenant ID of the application instance identity associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.LastModifiedBy.Conversation.ID | String | The unique identifier of the conversation (team or channel) associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.LastModifiedBy.Conversation.DisplayName | String | The display name of the conversation (team or channel) associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.LastModifiedBy.Conversation.TenantId | String | The tenant ID of the conversation identity associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.LastModifiedBy.ConversationIdentityType.ID | String | The identifier describing whether the conversation identifies a team or channel. |
| MsGraph.eDiscoveryCase.HoldPolicy.LastModifiedBy.ConversationIdentityType.DisplayName | String | The display name describing whether the conversation identifies a team or channel. |
| MsGraph.eDiscoveryCase.HoldPolicy.LastModifiedBy.ConversationIdentityType.TenantId | String | The tenant ID of the conversation identity type. |
| MsGraph.eDiscoveryCase.HoldPolicy.LastModifiedBy.Device.ID | String | The unique identifier of the device associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.LastModifiedBy.Device.DisplayName | String | The display name of the device associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.LastModifiedBy.Device.TenantId | String | The tenant ID of the device identity associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.LastModifiedBy.Encrypted.ID | String | The unique identifier of the encrypted identity associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.LastModifiedBy.Encrypted.DisplayName | String | The display name of the encrypted identity associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.LastModifiedBy.Encrypted.TenantId | String | The tenant ID of the encrypted identity associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.LastModifiedBy.OnPremises.ID | String | The unique identifier of the on-premises identity associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.LastModifiedBy.OnPremises.DisplayName | String | The display name of the on-premises identity associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.LastModifiedBy.OnPremises.TenantId | String | The tenant ID of the on-premises identity associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.LastModifiedBy.Guest.ID | String | The unique identifier of the guest identity associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.LastModifiedBy.Guest.DisplayName | String | The display name of the guest identity associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.LastModifiedBy.Guest.TenantId | String | The tenant ID of the guest identity associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.LastModifiedBy.Phone.ID | String | The unique identifier of the phone identity associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.LastModifiedBy.Phone.DisplayName | String | The display name of the phone identity associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.LastModifiedBy.Phone.TenantId | String | The tenant ID of the phone identity associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.LastModifiedBy.User.ID | String | The unique identifier of the user associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.LastModifiedBy.User.DisplayName | String | The display name of the user associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.LastModifiedBy.User.TenantId | String | The tenant ID of the user identity associated with this action. |
msg-export-result-ediscovery-data
Export results from an estimated ediscoverySearch. For details, see Manage a collection estimate (https://learn.microsoft.com/en-us/purview/ediscovery-create-draft-collection#manage-a-collection-estimate).
Base Command
msg-export-result-ediscovery-data
Input
| Argument Name | Description | Required |
|---|---|---|
| case_id | The ID of the eDiscovery case. | Required |
| search_id | The ID of the search. | Required |
| additional_options | The additional options for the export. Possible values are: none, teamsAndYammerConversations, cloudAttachments, allDocumentVersions, subfolderContents, listAttachments, htmlTranscripts, advancedIndexing, allItemsInFolder, includeFolderAndPath, condensePaths, friendlyName, splitSource, includeReport. | Required |
| export_criteria | The portion of the estimate results to be exported. Possible values are: searchHits, partiallyIndexed. | Required |
| export_format | The desired format of the exported emails. Possible values are: pst, msg. | Required |
| cloud_attachment_version | The versions of cloud attachments to include in messages. Possible values are: latest, recent10, recent100, all. Default is latest. | Optional |
| description | The description of the export result. | Optional |
| display_name | The display name of the export result. | Required |
| document_version | The versions of files in SharePoint to include. Possible values are: latest, recent10, recent100, all. Default is latest. | Optional |
| export_location | Location scope for partially indexed items. You can choose to include partially indexed items only in responsive locations with search hits or in all targeted locations. Possible values are: responsiveLocations, nonresponsiveLocations. | Optional |
Context Output
| Path | Type | Description |
|---|---|---|
| MsGraph.eDiscoveryCase.Export.OperationID | String | The ID of the export operation. Use this ID to retrieve the operation status via ‘msg-list-case-operation’. |
| MsGraph.eDiscoveryCase.Export.CaseID | String | The ID of the eDiscovery case the export belongs to. |
| MsGraph.eDiscoveryCase.Export.Location | String | The Location header URL returned for the export operation. |
Command example
!msg-export-result-ediscovery-data case_id=00000000-0000-0000-0000-000000000000 search_id=11111111-1111-1111-1111-111111111111 additional_options=none export_criteria=searchHits export_format=pst display_name="Example Export"
Context Example
{
"MsGraph": {
"eDiscoveryCase": {
"Export": {
"CaseID": "00000000-0000-0000-0000-000000000000",
"Location": "https://graph.microsoft.com/v1.0/security/cases/ediscoveryCases/00000000-0000-0000-0000-000000000000/operations/example-operation-id",
"OperationID": "example-operation-id"
}
}
}
}
Human Readable Output
eDiscovery export request was submitted successfully.
- Case ID: 00000000-0000-0000-0000-000000000000
- Operation ID: example-operation-id
msg-delete-ediscovery-case-hold-policy
Delete an eDiscovery hold policy. This command submits a deletion request to Microsoft Graph; the policy may not be removed immediately and can take some time to complete.
Base Command
msg-delete-ediscovery-case-hold-policy
Input
| Argument Name | Description | Required |
|---|---|---|
| case_id | The ID of the eDiscovery case. | Required |
| hold_policy_id | The policy ID that is intended to be deleted. | Required |
Context Output
There is no context output for this command.
msg-list-case-operation
Get a list of the caseOperation objects and their properties, or retrieve a specific operation by ID. When operation_id is provided, you can set download_file=true to download the export report (if available).
Base Command
msg-list-case-operation
Input
| Argument Name | Description | Required |
|---|---|---|
| case_id | The ID of the eDiscovery case. | Required |
| operation_id | The ID of the operation. | Optional |
| limit | Number of total results to return. Default is 50. | Optional |
| all_results | Show all results if true. Possible values are: true, false. Default is false. | Optional |
| download_file | Download the export report when an export file link is available. This only applies if operation_id is provided. For authorization or permission errors while downloading, see: https://learn.microsoft.com/en-us/graph/api/security-caseoperation-get?view=graph-rest-1.0&tabs=http#response-1. Possible values are: true, false. Default is false. |
Optional |
Context Output
| Path | Type | Description |
|---|---|---|
| MsGraph.eDiscoveryCase.Operation.ID | String | The ID of the case operation. Read-only. |
| MsGraph.eDiscoveryCase.Operation.Action | String | The type of action the operation represents (caseAction). Example values: contentExport, applyTags, convertToPdf, index, estimateStatistics, addToReviewSet, holdUpdate, purgeData, exportReport, exportResult, holdPolicySync. |
| MsGraph.eDiscoveryCase.Operation.Status | String | The status of the case operation. Possible values: notStarted, submissionFailed, running, succeeded, partiallySucceeded, failed. |
| MsGraph.eDiscoveryCase.Operation.PercentProgress | Number | The progress of the operation. |
| MsGraph.eDiscoveryCase.Operation.CreatedDateTime | Date | The date and time the operation was created. |
| MsGraph.eDiscoveryCase.Operation.CompletedDateTime | Date | The date and time the operation was completed. |
| MsGraph.eDiscoveryCase.Operation.CreatedBy.Application.ID | String | The unique identifier of the application associated with this action. |
| MsGraph.eDiscoveryCase.Operation.CreatedBy.Application.DisplayName | String | The display name of the application associated with this action. |
| MsGraph.eDiscoveryCase.Operation.CreatedBy.Application.TenantId | String | The tenant ID of the application identity associated with this action. |
| MsGraph.eDiscoveryCase.Operation.CreatedBy.ApplicationInstance.ID | String | The unique identifier of the application instance associated with this action. |
| MsGraph.eDiscoveryCase.Operation.CreatedBy.ApplicationInstance.DisplayName | String | The display name of the application instance associated with this action. |
| MsGraph.eDiscoveryCase.Operation.CreatedBy.ApplicationInstance.TenantId | String | The tenant ID of the application instance identity associated with this action. |
| MsGraph.eDiscoveryCase.Operation.CreatedBy.Conversation.ID | String | The unique identifier of the conversation (team or channel) associated with this action. |
| MsGraph.eDiscoveryCase.Operation.CreatedBy.Conversation.DisplayName | String | The display name of the conversation (team or channel) associated with this action. |
| MsGraph.eDiscoveryCase.Operation.CreatedBy.Conversation.TenantId | String | The tenant ID of the conversation identity associated with this action. |
| MsGraph.eDiscoveryCase.Operation.CreatedBy.ConversationIdentityType.ID | String | The identifier describing whether the conversation identifies a team or channel. |
| MsGraph.eDiscoveryCase.Operation.CreatedBy.ConversationIdentityType.DisplayName | String | The display name describing whether the conversation identifies a team or channel. |
| MsGraph.eDiscoveryCase.Operation.CreatedBy.ConversationIdentityType.TenantId | String | The tenant ID of the conversation identity type. |
| MsGraph.eDiscoveryCase.Operation.CreatedBy.Device.ID | String | The unique identifier of the device associated with this action. |
| MsGraph.eDiscoveryCase.Operation.CreatedBy.Device.DisplayName | String | The display name of the device associated with this action. |
| MsGraph.eDiscoveryCase.Operation.CreatedBy.Device.TenantId | String | The tenant ID of the device identity associated with this action. |
| MsGraph.eDiscoveryCase.Operation.CreatedBy.Encrypted.ID | String | The unique identifier of the encrypted identity associated with this action. |
| MsGraph.eDiscoveryCase.Operation.CreatedBy.Encrypted.DisplayName | String | The display name of the encrypted identity associated with this action. |
| MsGraph.eDiscoveryCase.Operation.CreatedBy.Encrypted.TenantId | String | The tenant ID of the encrypted identity associated with this action. |
| MsGraph.eDiscoveryCase.Operation.CreatedBy.OnPremises.ID | String | The unique identifier of the on-premises identity associated with this action. |
| MsGraph.eDiscoveryCase.Operation.CreatedBy.OnPremises.DisplayName | String | The display name of the on-premises identity associated with this action. |
| MsGraph.eDiscoveryCase.Operation.CreatedBy.OnPremises.TenantId | String | The tenant ID of the on-premises identity associated with this action. |
| MsGraph.eDiscoveryCase.Operation.CreatedBy.Guest.ID | String | The unique identifier of the guest identity associated with this action. |
| MsGraph.eDiscoveryCase.Operation.CreatedBy.Guest.DisplayName | String | The display name of the guest identity associated with this action. |
| MsGraph.eDiscoveryCase.Operation.CreatedBy.Guest.TenantId | String | The tenant ID of the guest identity associated with this action. |
| MsGraph.eDiscoveryCase.Operation.CreatedBy.Phone.ID | String | The unique identifier of the phone identity associated with this action. |
| MsGraph.eDiscoveryCase.Operation.CreatedBy.Phone.DisplayName | String | The display name of the phone identity associated with this action. |
| MsGraph.eDiscoveryCase.Operation.CreatedBy.Phone.TenantId | String | The tenant ID of the phone identity associated with this action. |
| MsGraph.eDiscoveryCase.Operation.CreatedBy.User.ID | String | The unique identifier of the user associated with this action. |
| MsGraph.eDiscoveryCase.Operation.CreatedBy.User.DisplayName | String | The display name of the user associated with this action. |
| MsGraph.eDiscoveryCase.Operation.CreatedBy.User.TenantId | String | The tenant ID of the user identity associated with this action. |
| MsGraph.eDiscoveryCase.Operation.ResultInfo.Code | Number | The result code (2xx success, 4xx client error, 5xx server error). |
| MsGraph.eDiscoveryCase.Operation.ResultInfo.Message | String | The result message. |
| MsGraph.eDiscoveryCase.Operation.ResultInfo.Subcode | Number | The result subcode. |
| File.Size | Number | The size of the file. |
| File.SHA1 | String | The SHA1 hash of the file. |
| File.SHA256 | String | The SHA256 hash of the file. |
| File.Name | String | The name of the file. |
| File.SSDeep | String | The SSDeep hash of the file. |
| File.EntryID | String | The entry ID of the file. |
| File.Info | String | File information. |
| File.Type | String | The file type. |
| File.MD5 | String | The MD5 hash of the file. |
| File.Extension | String | The file extension. |
msg-create-ediscovery-case-hold-policy
Create a new ediscoveryHoldPolicy object.
Base Command
msg-create-ediscovery-case-hold-policy
Input
| Argument Name | Description | Required |
|---|---|---|
| case_id | The ID of the eDiscovery case. | Required |
| display_name | The display name of the legal hold policy. | Required |
| description | The description of the legal hold policy. | Optional |
| content_query | KQL query specifying content to be held in the specified locations. Learn about KQL (https://learn.microsoft.com/en-us/kusto/query/?view=azure-data-explorer&preserve-view=true). | Optional |
Context Output
| Path | Type | Description |
|---|---|---|
| MsGraph.eDiscoveryCase.HoldPolicy.ID | String | The ID of the eDiscovery hold policy. |
| MsGraph.eDiscoveryCase.HoldPolicy.DisplayName | String | The display name of the legal hold. |
| MsGraph.eDiscoveryCase.HoldPolicy.Description | String | The legal hold description. |
| MsGraph.eDiscoveryCase.HoldPolicy.ContentQuery | String | KQL query that specifies content to be held. If empty, all content in the specified locations is held. |
| MsGraph.eDiscoveryCase.HoldPolicy.IsEnabled | Boolean | Indicates whether the hold is enabled and actively holding content. |
| MsGraph.eDiscoveryCase.HoldPolicy.Status | String | The status of the legal hold. Possible values are Pending, Error, Success. |
| MsGraph.eDiscoveryCase.HoldPolicy.Errors | String | Lists any errors that happened while placing the hold. |
| MsGraph.eDiscoveryCase.HoldPolicy.CreatedDateTime | Date | The date and time the legal hold was created. |
| MsGraph.eDiscoveryCase.HoldPolicy.LastModifiedDateTime | Date | The date and time the legal hold was last modified. |
| MsGraph.eDiscoveryCase.HoldPolicy.CreatedBy.Application.ID | String | The unique identifier of the application associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.CreatedBy.Application.DisplayName | String | The display name of the application associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.CreatedBy.Application.TenantId | String | The tenant ID of the application identity associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.CreatedBy.ApplicationInstance.ID | String | The unique identifier of the application instance associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.CreatedBy.ApplicationInstance.DisplayName | String | The display name of the application instance associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.CreatedBy.ApplicationInstance.TenantId | String | The tenant ID of the application instance identity associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.CreatedBy.Conversation.ID | String | The unique identifier of the conversation (team or channel) associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.CreatedBy.Conversation.DisplayName | String | The display name of the conversation (team or channel) associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.CreatedBy.Conversation.TenantId | String | The tenant ID of the conversation identity associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.CreatedBy.ConversationIdentityType.ID | String | The identifier describing whether the conversation identifies a team or channel. |
| MsGraph.eDiscoveryCase.HoldPolicy.CreatedBy.ConversationIdentityType.DisplayName | String | The display name describing whether the conversation identifies a team or channel. |
| MsGraph.eDiscoveryCase.HoldPolicy.CreatedBy.ConversationIdentityType.TenantId | String | The tenant ID of the conversation identity type. |
| MsGraph.eDiscoveryCase.HoldPolicy.CreatedBy.Device.ID | String | The unique identifier of the device associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.CreatedBy.Device.DisplayName | String | The display name of the device associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.CreatedBy.Device.TenantId | String | The tenant ID of the device identity associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.CreatedBy.Encrypted.ID | String | The unique identifier of the encrypted identity associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.CreatedBy.Encrypted.DisplayName | String | The display name of the encrypted identity associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.CreatedBy.Encrypted.TenantId | String | The tenant ID of the encrypted identity associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.CreatedBy.OnPremises.ID | String | The unique identifier of the on-premises identity associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.CreatedBy.OnPremises.DisplayName | String | The display name of the on-premises identity associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.CreatedBy.OnPremises.TenantId | String | The tenant ID of the on-premises identity associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.CreatedBy.Guest.ID | String | The unique identifier of the guest identity associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.CreatedBy.Guest.DisplayName | String | The display name of the guest identity associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.CreatedBy.Guest.TenantId | String | The tenant ID of the guest identity associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.CreatedBy.Phone.ID | String | The unique identifier of the phone identity associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.CreatedBy.Phone.DisplayName | String | The display name of the phone identity associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.CreatedBy.Phone.TenantId | String | The tenant ID of the phone identity associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.CreatedBy.User.ID | String | The unique identifier of the user associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.CreatedBy.User.DisplayName | String | The display name of the user associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.CreatedBy.User.TenantId | String | The tenant ID of the user identity associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.LastModifiedBy.Application.ID | String | The unique identifier of the application associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.LastModifiedBy.Application.DisplayName | String | The display name of the application associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.LastModifiedBy.Application.TenantId | String | The tenant ID of the application identity associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.LastModifiedBy.ApplicationInstance.ID | String | The unique identifier of the application instance associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.LastModifiedBy.ApplicationInstance.DisplayName | String | The display name of the application instance associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.LastModifiedBy.ApplicationInstance.TenantId | String | The tenant ID of the application instance identity associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.LastModifiedBy.Conversation.ID | String | The unique identifier of the conversation (team or channel) associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.LastModifiedBy.Conversation.DisplayName | String | The display name of the conversation (team or channel) associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.LastModifiedBy.Conversation.TenantId | String | The tenant ID of the conversation identity associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.LastModifiedBy.ConversationIdentityType.ID | String | The identifier describing whether the conversation identifies a team or channel. |
| MsGraph.eDiscoveryCase.HoldPolicy.LastModifiedBy.ConversationIdentityType.DisplayName | String | The display name describing whether the conversation identifies a team or channel. |
| MsGraph.eDiscoveryCase.HoldPolicy.LastModifiedBy.ConversationIdentityType.TenantId | String | The tenant ID of the conversation identity type. |
| MsGraph.eDiscoveryCase.HoldPolicy.LastModifiedBy.Device.ID | String | The unique identifier of the device associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.LastModifiedBy.Device.DisplayName | String | The display name of the device associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.LastModifiedBy.Device.TenantId | String | The tenant ID of the device identity associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.LastModifiedBy.Encrypted.ID | String | The unique identifier of the encrypted identity associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.LastModifiedBy.Encrypted.DisplayName | String | The display name of the encrypted identity associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.LastModifiedBy.Encrypted.TenantId | String | The tenant ID of the encrypted identity associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.LastModifiedBy.OnPremises.ID | String | The unique identifier of the on-premises identity associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.LastModifiedBy.OnPremises.DisplayName | String | The display name of the on-premises identity associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.LastModifiedBy.OnPremises.TenantId | String | The tenant ID of the on-premises identity associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.LastModifiedBy.Guest.ID | String | The unique identifier of the guest identity associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.LastModifiedBy.Guest.DisplayName | String | The display name of the guest identity associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.LastModifiedBy.Guest.TenantId | String | The tenant ID of the guest identity associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.LastModifiedBy.Phone.ID | String | The unique identifier of the phone identity associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.LastModifiedBy.Phone.DisplayName | String | The display name of the phone identity associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.LastModifiedBy.Phone.TenantId | String | The tenant ID of the phone identity associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.LastModifiedBy.User.ID | String | The unique identifier of the user associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.LastModifiedBy.User.DisplayName | String | The display name of the user associated with this action. |
| MsGraph.eDiscoveryCase.HoldPolicy.LastModifiedBy.User.TenantId | String | The tenant ID of the user identity associated with this action. |
msg-update-ediscovery-case-hold-policy
Update the properties of an ediscoveryHoldPolicy object.
Base Command
msg-update-ediscovery-case-hold-policy
Input
| Argument Name | Description | Required |
|---|---|---|
| case_id | The ID of the eDiscovery case. | Required |
| hold_policy_id | The policy ID that is intended to be updated. | Required |
| description | The description of the legal hold policy. | Optional |
| content_query | KQL query specifying content to be held in the specified locations. Learn about KQL (https://learn.microsoft.com/en-us/kusto/query/?view=azure-data-explorer&preserve-view=true). | Optional |
Context Output
There is no context output for this command.
<~PLATFORM>
License Requirements
The following configuration parameters require one of these licenses: Cortex XSIAM or Agentix:
- Fetch incidents
</~PLATFORM>
Configuration parameters
azure_cloud— Azure Cloudhost— Host URLcreds_auth_id—creds_tenant_id—creds_enc_key—auth_id— Application ID or Client IDtenant_id— Token or Tenant IDenc_key— Key or Client Secretcreds_certificate— Certificate Thumbprintcertificate_thumbprint— Certificate Thumbprintprivate_key— Private Keyredirect_uri— Application redirect URI (for self-deployed mode)auth_code— Authorization codeuse_managed_identities— Use Azure Managed Identitiesmanaged_identities_client_id—insecure— Trust any certificate (not secure)proxy— Use system proxy settingsself_deployed— Use a self-deployed Azure applicationisFetch— Fetch incidentsincidentFetchInterval— Incidents Fetch IntervalincidentType— Incident typefetch_incidents_type— Fetch incidents typefetch_time— First fetch timestamp (<number> <time unit>, e.g., 12 hours, 7 days)fetch_limit— Fetch limit per typefetch_service_sources— Alerts Service Sourcesfetch_filter— Alerts Filterfetch_incidents_filter— Incidents Filtermicrosoft_365_defender_context— Microsoft 365 Defender context
Commands (48)
-
ms-graph-security-auth-resetRun this command if for some reason you need to rerun the authentication process.
-
msg-activate-ediscovery-custodianActivate a custodian that has been released from a case to make them part of the case again. For details, see https://learn.microsoft.com/en-us/microsoft-365/compliance/ediscovery-manage-new-custodians?view=o365-worldwide#re-activate-custodian.
-
msg-advanced-huntingAdvanced hunting is a threat-hunting tool that uses specially constructed queries to examine the past 30 days of event data in Microsoft Graph Security.
-
msg-apply-hold-ediscovery-custodianStart the process of applying hold on eDiscovery custodians. Available return statuses: notApplied - The custodian is not on hold (all sources in it are not on hold). applied - The custodian is on hold (all sources are on hold). applying - The custodian is in applying the hold state (applyHold operation triggered). removing - The custodian is in removing the hold state(removeHold operation triggered). partial - The custodian is in a mixed state where some sources are on hold and some not on hold or error state.
-
msg-auth-testTests connectivity to Microsoft Graph Security.
-
msg-close-ediscovery-caseClose an eDiscovery case. When the legal case or investigation supported by a eDiscovery (Standard) case is completed, you can close the case. Here's what happens when you close a case: If the case contains any eDiscovery holds, they'll be turned off. After the hold is turned off, a 30-day grace period (called a delay hold) is applied to content locations that were on hold. This helps prevent content from being immediately deleted and provides admins the opportunity to search for and restore content before it may be permanently deleted after the delay hold period expires. For more information, see Removing content locations from an eDiscovery hold. Closing a case only turns off the holds that are associated with that case. If other holds are placed on a content location (such as a Litigation Hold, a retention policy, or a hold from a different eDiscovery (Standard) case) those holds will still be maintained. The case is still listed on the eDiscovery (Standard) page in the Microsoft Purview compliance portal. The details, holds, searches, and members of a closed case are retained. You can edit a case after it's closed. For example, you can add or remove members, create searches, and export search results. The primary difference between active and closed cases is that eDiscovery holds are turned off when a case is closed.
-
msg-create-alert-commentCreate a comment for an existing alert.
-
msg-create-ediscovery-caseCreate a new eDiscovery case. This command only creates an eDiscovery (Premium) case using the new case format. To learn more about the new case format in eDiscovery, see https://learn.microsoft.com/en-us/microsoft-365/compliance/advanced-ediscovery-new-case-format.
-
msg-create-ediscovery-case-hold-policyCreate a new ediscoveryHoldPolicy object.
-
msg-create-ediscovery-custodianCreate a new ediscoveryCustodian object. After the custodian object is created, you will need to create the custodian's userSource to reference their mailbox and OneDrive for Business site.
-
msg-create-ediscovery-custodian-site-sourceCreate a new siteSource object associated with an eDiscovery custodian. Use the msg-list-ediscovery-custodians command in order to get all available custodians.
-
msg-create-ediscovery-custodian-user-sourceCreate a new userSource object associated with an eDiscovery custodian. Use the msg-list-ediscovery-custodians command in order to get all available custodians.
-
msg-create-ediscovery-non-custodial-data-sourceCreate a new eDiscoveryNoncustodialDataSource object.
-
msg-create-ediscovery-searchCreate a new eDiscoverySearch object.
-
msg-create-email-file-assessment-requestCreate email file assessment request.
-
msg-create-file-assessment-requestCreate file assessment request.
-
msg-create-mail-assessment-requestCreate and retrieve a mail threat assessment.
-
msg-create-url-assessment-requestCreate the URL assessment request.
-
msg-delete-ediscovery-caseDelete an eDiscovery case. Before you can delete a case, you must first delete all holds listed on the holds page of the case. That includes deleting holds with a status of Off. Default hold policies can only be deleted when the hold is turned off. You must close an active case to turn off any default hold policies in the case. Once the holds are turned off for default hold policies, they can be deleted.
-
msg-delete-ediscovery-case-hold-policyDelete an eDiscovery hold policy. This command submits a deletion request to Microsoft Graph; the policy may not be removed immediately and can take some time to complete.
-
msg-delete-ediscovery-searchDelete an eDiscoverySearch object.
-
msg-export-result-ediscovery-dataExport results from an estimated ediscoverySearch. For details, see Manage a collection estimate (https://learn.microsoft.com/en-us/purview/ediscovery-create-draft-collection#manage-a-collection-estimate).
-
msg-generate-login-urlGenerate the login URL used for authorization code flow.
-
msg-get-alert-detailsGet details for a specific alert.
-
msg-get-last-estimate-statistics-operationRetrieves the most recent eDiscovery estimate statistics operation for a given search in Microsoft Purview. Use this command after running 'msg-run-estimate-statistics' to check the results.
-
msg-get-userDeprecatedDeprecated. Use the Entra ID Users integration instead.
-
msg-get-usersDeprecatedDeprecated. Use the Entra ID Users integration instead.
-
msg-list-case-operationGet a list of the caseOperation objects and their properties, or retrieve a specific operation by ID. When operation_id is provided, you can set download_file=true to download the export report (if available).
-
msg-list-ediscovery-case-hold-policyGet a list of the ediscoveryHoldPolicy objects and their properties.
-
msg-list-ediscovery-casesGet a list of the eDiscovery cases.
-
msg-list-ediscovery-custodian-site-sourcesGet a list of the siteSource objects associated with an eDiscoveryCustodian. Use the msg-list-ediscovery-custodians command in order to get all available custodians.
-
msg-list-ediscovery-custodian-user-sourcesGet a list of the userSource objects associated with an eDiscoveryCustodian. Use the msg-list-ediscovery-custodians command in order to get all available custodians.
-
msg-list-ediscovery-custodiansGet a list of the custodians on a given eDiscovery case.
-
msg-list-ediscovery-non-custodial-data-sourcesGet a list of the non-custodial data sources and their properties.
-
msg-list-ediscovery-searchsGet a list of eDiscoverySearch resources from an eDiscovery case.
-
msg-list-security-incidentGet a list of incident objects that Microsoft graph created to track attacks in an organization. If you want a specific incident, just enter incident_id.
-
msg-list-threat-assessment-requestsGet a list of the threat assessment requests.
-
msg-purge-ediscovery-dataDeletes mailbox items in Exchange or messages in Microsoft Teams that are included in an eDiscovery search. You can collect and purge the following categories of Teams content: Teams 1:1 chats - Chat messages, posts, and attachments shared in a Teams conversation between two people. Teams 1:1 chats are also called conversations. Teams group chats - Chat messages, posts, and attachments shared in a Teams conversation between three or more people. Also called 1:N chats or group conversations. Teams channels - Chat messages, posts, replies, and attachments shared in a standard Teams channel. Private channels - Message posts, replies, and attachments shared in a private Teams channel. Shared channels - Message posts, replies, and attachments shared in a shared Teams channel.
-
msg-release-ediscovery-custodianRelease a custodian from a case. For details, see https://learn.microsoft.com/en-us/microsoft-365/compliance/manage-new-custodians#release-a-custodian-from-a-case.
-
msg-remove-hold-ediscovery-custodianStart the process of removing a hold from eDiscovery custodians.
-
msg-reopen-ediscovery-caseReopen an eDiscovery case. When you reopen an eDiscovery (Premium) case, any holds that were in place when the case was closed won't be automatically reinstated. After the case is reopened, you'll have to go to the Holds tab and turn on the previous holds. To turn on a hold, select it to display the flyout page, and then set the Status toggle to On.
-
msg-run-estimate-statisticsStarts an eDiscovery estimate statistics operation in Microsoft Purview. The operation calculates the size and number of items matching the search query.
-
msg-search-alertsGet a list of alerts (security issues) within a customer's tenant that Microsoft or partner security solutions have identified.
-
msg-update-alertUpdate an editable alert property within any integrated solution to keep alert status and assignments in sync across solutions using its reference ID.
-
msg-update-ediscovery-caseUpdate an eDiscovery case.
-
msg-update-ediscovery-case-hold-policyUpdate the properties of an ediscoveryHoldPolicy object.
-
msg-update-ediscovery-searchUpdate an eDiscoverySearch object.
-
msg-update-security-incidentUpdate the incident with the given ID.
# Microsoft Graph Security The eDiscovery APIs in Microsoft Graph only work with eDiscovery (Premium) cases. The legacy content search solution has been deprecated. You can now search by [case](https://learn.microsoft.com/en-us/purview/ediscovery). # Fetch Use the **Fetch incidents type** parameter to control what this integration ingests. You can select **Alerts**, **Incidents**, or both: * **Alerts** - Each Microsoft Graph Security alert is fetched individually. * **Incidents** - Each Microsoft Graph Security incident is fetched individually, with all associated alerts embedded within it and stored as raw JSON. This provides a single grouped incident containing its underlying alerts, rather than multiple separate alerts. You can narrow what is fetched using the **Alerts Filter** and **Incidents Filter** parameters. These accept an OData `$filter` expression, for example `severity eq 'medium' and status eq 'active'`. For the supported syntax and operators, see [Microsoft query parameters](https://learn.microsoft.com/en-us/graph/query-parameters?tabs=http). # Authentication You can authenticate either by Entra ID applications or by Azure Managed Identities. ### Authentication Based on Entra ID Applications Microsoft integrations (Graph and Azure) in Cortex use Entra ID applications to authenticate with Microsoft APIs. These integrations use OAuth 2.0 and OpenID Connect standard compliant authentication services, which use an application to sign in or delegate authentication. For more information, see the Microsoft identity platform overview. There are two application authentication methods available: * [Cortex XSOAR Application](https://xsoar.pan.dev/docs/reference/articles/microsoft-integrations---authentication#cortex-xsoar-application) * [Self-Deployed Application](https://xsoar.pan.dev/docs/reference/articles/microsoft-integrations---authentication#self-deployed-application) Depending on the authentication method that you use, the integration parameters might change. To use the integration and grant Cortex access to Microsoft Graph Security, an administrator must approve the application through the admin consent flow by clicking this **[link](https://oproxy.demisto.ninja/ms-graph-security)**. After authorizing the Cortex app, you will get an ID, Token, and Key which should be inserted in the integration instance settings fields. If you previously had an API V1 configured based on the credentials obtained from this method, refer to the link above to gain new credentials with the relevant permissions. ### Important 1. The ***eDiscovery*** and ***Threat Assessment*** commands are only supported when using the `Authorization Code flow` with `Delegated (work or school account)` permission type. 2. When using `Authorization Code flow`, the connection should be tested using the ***!msg-auth-test*** command. 3. When using the `Authorization Code flow` for this integration, you should log in as an administrator or a user with administrative privileges (`Security Reader` or `Security Administrator`) after running the ***msg-generate-login-url*** command and the login window appears. For more information, see [here](https://learn.microsoft.com/en-us/graph/security-authorization). ### Authentication Based on Azure Managed Identities ##### Note: This option is relevant only if the integration is running on Azure VM. Follow one of these steps for authentication based on Azure Managed Identities: - ##### To use System Assigned Managed Identity - Select the **Use Azure Managed Identities** checkbox and leave the **Azure Managed Identities Client ID** field empty. - ##### To use User Assigned Managed Identity 1. Go to [Azure Portal](https://portal.azure.com/) -> **Managed Identities**. 2. Select your User Assigned Managed Identity -> copy the Client ID -> paste it in the **Azure Managed Identities Client ID** field in the instance settings. 3. Select the **Use Azure Managed Identities** checkbox. For more information, see [Managed identities for Azure resources](https://learn.microsoft.com/en-us/azure/active-directory/managed-identities-azure-resources/overview).