Créer mailSearchFolder

Espace de noms: microsoft.graph

Importante

Les API sous la version /beta dans Microsoft Graph sont susceptibles d’être modifiées. L’utilisation de ces API dans des applications de production n’est pas prise en charge. Pour déterminer si une API est disponible dans v1.0, utilisez le sélecteur Version .

Créez un nouveau dossier mailSearchFolder dans la boîte aux lettres de l’utilisateur spécifié.

Cette API est disponible dans les déploiements cloud nationaux suivants.

Service global Gouvernement américain L4 Gouvernement américain L5 (DOD) Chine exploitée par 21Vianet

Autorisations

Choisissez l’autorisation ou les autorisations marquées comme étant les moins privilégiées pour cette API. Utilisez une ou plusieurs autorisations privilégiées uniquement si votre application en a besoin. Pour plus d’informations sur les autorisations déléguées et d’application, voir Types d’autorisations. Pour en savoir plus sur ces autorisations, consultez la référence des autorisations.

Type d’autorisation Autorisations les moins privilégiées Autorisations à privilèges plus élevés
Déléguée (compte professionnel ou scolaire) Mail.ReadWrite Non disponible.
Déléguée (compte Microsoft personnel) Mail.ReadWrite Non disponible.
Application Mail.ReadWrite Non disponible.

Requête HTTP

POST /me/mailFolders/{id}/childFolders
POST /users/{id | userPrincipalName}/mailFolders/{id}/childFolders

Spécifiez le dossier parent dans l’URL de requête en tant qu’ID de dossier ou nom de dossier connu. Pour obtenir la liste des noms de dossier connus pris en charge, consultez l’article Type de ressource mailFolder.

En-têtes de demande

En-tête Valeur
Autorisation Bearer {token}. Obligatoire.
Content-Type application/json. Obligatoire.

Corps de la demande

Dans le corps de la demande, indiquez un objet JSON avec les paramètres suivants.

Paramètre Type Description
@odata.type String Type de dossier à créer. Définissez sur « microsoft.graph.mailSearchFolder ».
displayName Chaîne Nom d’affichage du nouveau dossier.
includeNestedFolders Booléen Indique comment la hiérarchie du dossier de boîte aux lettres doit être parcourue dans la recherche. true signifie qu’une recherche approfondie doit être effectuée pour inclure les dossiers enfants dans la hiérarchie de chaque dossier spécifié explicitement dans sourceFolderIds. false désigne une recherche superficielle de chacun des dossiers spécifiés explicitement dans sourceFolderIds.
sourceFolderIds String collection Dossiers de boîte aux lettres qui doivent être minés.
filterQuery String Requête OData pour filtrer les messages.

Réponse

En cas de réussite, cette méthode renvoie un 201 Created code de réponse et un objet mailSearchFolder dans le corps de la réponse.

Exemple

Demande

Voici un exemple de demande : un dossier de recherche de messages dont l’objet contient la chaîne « synthèse hebdomadaire » est créé. Le dossier de recherche se trouve dans le même dossier que celui auquel s’applique la requête de filtre spécifiée.

POST https://graph.microsoft.com/beta/me/mailFolders/AQMkADYAAAIBDAAAAA==/childFolders
Content-type: application/json

{
  "@odata.type": "microsoft.graph.mailSearchFolder",
  "displayName": "Weekly digests",
  "includeNestedFolders": true,
  "sourceFolderIds": ["AQMkADYAAAIBDAAAAA=="],
  "filterQuery": "contains(subject, 'weekly digest')"
}

Réponse

L’exemple suivant illustre la réponse.

Remarque : l’objet de réponse affiché ci-après peut être raccourci pour plus de lisibilité.

HTTP/1.1 201 Created
Content-type: application/json

{
    "@odata.context": "https://graph.microsoft.com/beta/$metadata#users('68ca8ec0-11f8-456b-a785-70d9936650d5')/mailFolders('AQMkADYAAAIBDAAAAA%3D%3D')/childFolders/$entity",
    "@odata.type": "#microsoft.graph.mailSearchFolder",
    "id": "AAMkADYfRAAAZg1yTAAA=",
    "displayName": "Weekly digests",
    "parentFolderId": "AQMkADYAAAIBDAAAAA==",
    "childFolderCount": 0,
    "unreadItemCount": 0,
    "totalItemCount": 0,
    "wellKnownName": null,
    "isSupported": true,
    "includeNestedFolders": true,
    "sourceFolderIds": [
        "AQMkADYAAAIBDAAAAA=="
    ],
    "filterQuery": "contains(subject, 'weekly digest')"
}