If you intend a new folder to be hidden, you must set the isHidden property to true on creation.
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}/childFolders
POST /users/{id | userPrincipalName}/mailFolders/{id}/childFolders
Specify the parent folder in the query URL as a folder ID, or a well-known folder name. For a list of supported well-known folder names, see mailFolder resource type.
Request headers
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. displayName and isHidden are the only writable property for a
mailFolder object.
Parameter
Type
Description
displayName
String
The display name of the new folder.
isHidden
Boolean
Indicates whether the new folder is hidden. The default value is false. Setting the property is optional. Once set, you cannot update this property. See more information in Hidden mail folders
Response
If successful, this method returns 201 Created response code and a mailFolder resource in the response body.
Import-Module Microsoft.Graph.Mail
$params = @{
DisplayName = "displayName-value"
IsHidden = $true
}
# A UPN can also be used as -UserId.
New-MgUserMailFolderChildFolder -UserId $userId -MailFolderId $mailFolderId -BodyParameter $params
<?php
// THIS SNIPPET IS A PREVIEW FOR THE KIOTA BASED SDK. NON-PRODUCTION USE ONLY
$graphServiceClient = new GraphServiceClient($requestAdapter);
$requestBody = new MailFolder();
$requestBody->setDisplayName('displayName-value');
$requestBody->setIsHidden(true);
$requestResult = $graphServiceClient->me()->mailFoldersById('mailFolder-id')->childFolders()->post($requestBody);