mailFolder: copy
Article
03/02/2023
2 minutes to read
10 contributors
Feedback
In this article
Namespace: microsoft.graph
Copy a mailfolder and its contents to another mailfolder.
Permissions
One of the following permissions is required to call this API. To learn more, including how to choose permissions, see Permissions .
Permission type
Permissions (from least to most privileged)
Delegated (work or school account)
Mail.ReadWrite
Delegated (personal Microsoft account)
Mail.ReadWrite
Application
Mail.ReadWrite
HTTP request
POST /me/mailFolders/{id}/copy
POST /users/{id | userPrincipalName}/mailFolders/{id}/copy
Header
Value
Authorization
Bearer {token}
. Required.
Content-Type
application/json
. Required.
Request body
In the request body, provide a JSON object with the following parameters.
Parameter
Type
Description
destinationId
String
The folder ID, or a well-known folder name. For a list of supported well-known folder names, see mailFolder resource type .
Response
If successful, this method returns 200 OK
response code and a mailFolder resource in the response body.
Example
Here is an example of how to call this API.
Request
Here is an example of the request.
POST https://graph.microsoft.com/v1.0/me/mailFolders/{id}/copy
Content-type: application/json
{
"destinationId": "destinationId-value"
}
var graphClient = new GraphServiceClient(requestAdapter);
var requestBody = new Microsoft.Graph.Me.MailFolders.Item.Copy.CopyPostRequestBody
{
DestinationId = "destinationId-value",
};
var result = await graphClient.Me.MailFolders["{mailFolder-id}"].Copy.PostAsync(requestBody);
For details about how to add the SDK to your project and create an authProvider instance, see the SDK documentation .
const options = {
authProvider,
};
const client = Client.init(options);
const mailFolder = {
destinationId: 'destinationId-value'
};
await client.api('/me/mailFolders/{id}/copy')
.post(mailFolder);
For details about how to add the SDK to your project and create an authProvider instance, see the SDK documentation .
GraphServiceClient graphClient = GraphServiceClient.builder().authenticationProvider( authProvider ).buildClient();
String destinationId = "destinationId-value";
graphClient.me().mailFolders("{id}")
.copy(MailFolderCopyParameterSet
.newBuilder()
.withDestinationId(destinationId)
.build())
.buildRequest()
.post();
For details about how to add the SDK to your project and create an authProvider instance, see the SDK documentation .
//THE GO SDK IS IN PREVIEW. NON-PRODUCTION USE ONLY
graphClient := msgraphsdk.NewGraphServiceClientWithCredentials(cred, scopes)
requestBody := graphmodels.NewCopyPostRequestBody()
destinationId := "destinationId-value"
requestBody.SetDestinationId(&destinationId)
result, err := graphClient.Me().MailFoldersById("mailFolder-id").Copy().Post(context.Background(), requestBody, nil)
For details about how to add the SDK to your project and create an authProvider instance, see the SDK documentation .
Import-Module Microsoft.Graph.Users.Actions
$params = @{
DestinationId = "destinationId-value"
}
# A UPN can also be used as -UserId.
Copy-MgUserMailFolder -UserId $userId -MailFolderId $mailFolderId -BodyParameter $params
For details about how to add the SDK to your project and create an authProvider instance, see the SDK documentation .
<?php
// THIS SNIPPET IS A PREVIEW FOR THE KIOTA BASED SDK. NON-PRODUCTION USE ONLY
$graphServiceClient = new GraphServiceClient($requestAdapter);
$requestBody = new CopyPostRequestBody();
$requestBody->setDestinationId('destinationId-value');
$requestResult = $graphServiceClient->me()->mailFoldersById('mailFolder-id')->copy()->post($requestBody);
For details about how to add the SDK to your project and create an authProvider instance, see the SDK documentation .
Response
Here is an example of the response.
Note: The response object shown here might be shortened for readability.
HTTP/1.1 200 OK
Content-type: application/json
{
"displayName": "displayName-value",
"parentFolderId": "parentFolderId-value",
"childFolderCount": 99,
"unreadItemCount": 99,
"totalItemCount": 99,
"id": "id-value"
}