Namespace: microsoft.graph.security
Important
APIs under the /beta
version in Microsoft Graph are subject to change. Use of these APIs in production applications is not supported. To determine whether an API is available in v1.0, use the Version selector.
Initiate an export from a ediscoveryReviewSetQuery. For details, see Export documents from a review set in eDiscovery (Premium).
This API is available in the following national cloud deployments.
Global service |
US Government L4 |
US Government L5 (DOD) |
China operated by 21Vianet |
✅ |
✅ |
✅ |
❌ |
Permissions
Choose the permission or permissions marked as least privileged for this API. Use a higher privileged permission or permissions only if your app requires it. For details about delegated and application permissions, see Permission types. To learn more about these permissions, see the permissions reference.
Permission type |
Least privileged permissions |
Higher privileged permissions |
Delegated (work or school account) |
eDiscovery.Read.All |
eDiscovery.ReadWrite.All |
Delegated (personal Microsoft account) |
Not supported. |
Not supported. |
Application |
eDiscovery.Read.All |
eDiscovery.ReadWrite.All |
HTTP request
POST /security/cases/ediscoveryCases/{ediscoveryCaseId}/reviewSets/{ediscoveryReviewSetId}/queries/{queryId}/export
Request body
In the request body, supply a JSON representation of the parameters.
The following table shows the parameters that can be used with this action.
Parameter |
Type |
Description |
description |
String |
Description of the export. |
exportOptions |
microsoft.graph.security.exportOptions |
Bitwise options that control the format of the export. Possible values are: originalFiles , text , pdfReplacement , fileInfo (deprecated), tags . The fileInfo member is deprecated and has stopped returning data. The summary and load files are always included. |
exportStructure |
microsoft.graph.security.exportFileStructure |
Options that control file structure and packaging of the export. Possible values are: none , directory , pst , unknownFutureValue , msg . Use the Prefer: include-unknown-enum-members request header to get the following value from this evolvable enum: msg . |
outputName |
String |
Name of the export. Required. |
azureBlobContainer (deprecated) |
String |
When you export to your own Azure storage account, the value is the container URL. The azureBlobContainer property is deprecated and has stopped returning data. |
azureBlobToken (deprecated) |
String |
When you export to your own Azure storage account, SAS token for the container URL. The azureBlobToken property is deprecated and has stopped returning data. |
Response
If successful, this action returns a 202 Accepted
response code.
Examples
Request
Here's an example of a request.
POST https://graph.microsoft.com/beta/security/cases/ediscoveryCases/58399dff-cebe-478f-b1af-d3227f1fd645/reviewSets/273f11a1-17aa-419c-981d-ff10d33e420f/queries/fcb86cd1-50e0-427c-840e-ba6f087364e5/export
Content-Type: application/json
{
"outputName": "Export reviewset query via API",
"description": "Export for the Contoso investigation 2",
"exportOptions": "originalFiles,fileInfo,tags",
"exportStructure": "directory"
}
// Code snippets are only available for the latest version. Current version is 5.x
// Dependencies
using Microsoft.Graph.Beta.Security.Cases.EdiscoveryCases.Item.ReviewSets.Item.Queries.Item.MicrosoftGraphSecurityExport;
using Microsoft.Graph.Beta.Models.Security;
var requestBody = new ExportPostRequestBody
{
OutputName = "Export reviewset query via API",
Description = "Export for the Contoso investigation 2",
ExportOptions = ExportOptions.OriginalFiles | ExportOptions.FileInfo | ExportOptions.Tags,
ExportStructure = ExportFileStructure.Directory,
};
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
await graphClient.Security.Cases.EdiscoveryCases["{ediscoveryCase-id}"].ReviewSets["{ediscoveryReviewSet-id}"].Queries["{ediscoveryReviewSetQuery-id}"].MicrosoftGraphSecurityExport.PostAsync(requestBody);
mgc-beta security cases ediscovery-cases review-sets queries microsoft-graph-security-export post --ediscovery-case-id {ediscoveryCase-id} --ediscovery-review-set-id {ediscoveryReviewSet-id} --ediscovery-review-set-query-id {ediscoveryReviewSetQuery-id} --body '{\
"outputName": "Export reviewset query via API",\
"description": "Export for the Contoso investigation 2",\
"exportOptions": "originalFiles,fileInfo,tags",\
"exportStructure": "directory"\
}\
'
// Code snippets are only available for the latest major version. Current major version is $v0.*
// Dependencies
import (
"context"
msgraphsdk "github.com/microsoftgraph/msgraph-beta-sdk-go"
graphsecurity "github.com/microsoftgraph/msgraph-beta-sdk-go/security"
graphmodelssecurity "github.com/microsoftgraph/msgraph-beta-sdk-go/models/security"
//other-imports
)
requestBody := graphsecurity.NewExportPostRequestBody()
outputName := "Export reviewset query via API"
requestBody.SetOutputName(&outputName)
description := "Export for the Contoso investigation 2"
requestBody.SetDescription(&description)
exportOptions := graphmodels.ORIGINALFILES,FILEINFO,TAGS_EXPORTOPTIONS
requestBody.SetExportOptions(&exportOptions)
exportStructure := graphmodels.DIRECTORY_EXPORTFILESTRUCTURE
requestBody.SetExportStructure(&exportStructure)
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=go
graphClient.Security().Cases().EdiscoveryCases().ByEdiscoveryCaseId("ediscoveryCase-id").ReviewSets().ByEdiscoveryReviewSetId("ediscoveryReviewSet-id").Queries().ByEdiscoveryReviewSetQueryId("ediscoveryReviewSetQuery-id").MicrosoftGraphSecurityExport().Post(context.Background(), requestBody, nil)
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
com.microsoft.graph.beta.security.cases.ediscoverycases.item.reviewsets.item.queries.item.microsoftgraphsecurityexport.ExportPostRequestBody exportPostRequestBody = new com.microsoft.graph.beta.security.cases.ediscoverycases.item.reviewsets.item.queries.item.microsoftgraphsecurityexport.ExportPostRequestBody();
exportPostRequestBody.setOutputName("Export reviewset query via API");
exportPostRequestBody.setDescription("Export for the Contoso investigation 2");
exportPostRequestBody.setExportOptions(EnumSet.of(com.microsoft.graph.beta.models.security.ExportOptions.OriginalFiles, com.microsoft.graph.beta.models.security.ExportOptions.FileInfo, com.microsoft.graph.beta.models.security.ExportOptions.Tags));
exportPostRequestBody.setExportStructure(com.microsoft.graph.beta.models.security.ExportFileStructure.Directory);
graphClient.security().cases().ediscoveryCases().byEdiscoveryCaseId("{ediscoveryCase-id}").reviewSets().byEdiscoveryReviewSetId("{ediscoveryReviewSet-id}").queries().byEdiscoveryReviewSetQueryId("{ediscoveryReviewSetQuery-id}").microsoftGraphSecurityExport().post(exportPostRequestBody);
const options = {
authProvider,
};
const client = Client.init(options);
const _export = {
outputName: 'Export reviewset query via API',
description: 'Export for the Contoso investigation 2',
exportOptions: 'originalFiles,fileInfo,tags',
exportStructure: 'directory'
};
await client.api('/security/cases/ediscoveryCases/58399dff-cebe-478f-b1af-d3227f1fd645/reviewSets/273f11a1-17aa-419c-981d-ff10d33e420f/queries/fcb86cd1-50e0-427c-840e-ba6f087364e5/export')
.version('beta')
.post(_export);
<?php
use Microsoft\Graph\Beta\GraphServiceClient;
use Microsoft\Graph\Beta\Generated\Security\Cases\EdiscoveryCases\Item\ReviewSets\Item\Queries\Item\MicrosoftGraphSecurityExport\ExportPostRequestBody;
use Microsoft\Graph\Beta\Generated\Models\Security\ExportOptions;
use Microsoft\Graph\Beta\Generated\Models\Security\ExportFileStructure;
$graphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes);
$requestBody = new ExportPostRequestBody();
$requestBody->setOutputName('Export reviewset query via API');
$requestBody->setDescription('Export for the Contoso investigation 2');
$requestBody->setExportOptions(new ExportOptions('originalFiles,fileInfo,tags'));
$requestBody->setExportStructure(new ExportFileStructure('directory'));
$graphServiceClient->security()->cases()->ediscoveryCases()->byEdiscoveryCaseId('ediscoveryCase-id')->reviewSets()->byEdiscoveryReviewSetId('ediscoveryReviewSet-id')->queries()->byEdiscoveryReviewSetQueryId('ediscoveryReviewSetQuery-id')->microsoftGraphSecurityExport()->post($requestBody)->wait();
Import-Module Microsoft.Graph.Beta.Security
$params = @{
outputName = "Export reviewset query via API"
description = "Export for the Contoso investigation 2"
exportOptions = "originalFiles,fileInfo,tags"
exportStructure = "directory"
}
Export-MgBetaSecurityCaseEdiscoveryCaseReviewSetQuery -EdiscoveryCaseId $ediscoveryCaseId -EdiscoveryReviewSetId $ediscoveryReviewSetId -EdiscoveryReviewSetQueryId $ediscoveryReviewSetQueryId -BodyParameter $params
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph_beta import GraphServiceClient
from msgraph_beta.generated.security.cases.ediscoverycases.item.reviewsets.item.queries.item.microsoft_graph_security_export.export_post_request_body import ExportPostRequestBody
from msgraph_beta.generated.models.export_options import ExportOptions
from msgraph_beta.generated.models.export_file_structure import ExportFileStructure
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
request_body = ExportPostRequestBody(
output_name = "Export reviewset query via API",
description = "Export for the Contoso investigation 2",
export_options = ExportOptions.OriginalFiles | ExportOptions.FileInfo | ExportOptions.Tags,
export_structure = ExportFileStructure.Directory,
)
await graph_client.security.cases.ediscovery_cases.by_ediscovery_case_id('ediscoveryCase-id').review_sets.by_ediscovery_review_set_id('ediscoveryReviewSet-id').queries.by_ediscovery_review_set_query_id('ediscoveryReviewSetQuery-id').microsoft_graph_security_export.post(request_body)
Response
Here's an example of the response.
HTTP/1.1 202 Accepted