Table of contents
TOC
Réduire la table des matières
Développer la table des matières
Dernière mise à jour: 29/06/2018

Référence de l’API Courrier Outlook

Cette documentation couvre l’API pour les @-mentions, les messages de désabonnement, les réponses rapides et les choix de langue et de fuseau horaire, qui sont tous actuellement en préversion. Les fonctionnalités de la préversion sont sujettes à des modifications avant leur finalisation. Elles peuvent donc entraîner des erreurs de code. C’est pour cette raison qu’en général, vous devez utiliser uniquement une version de production d’une API dans votre code de production. Si elle est disponible, la v2.0 est actuellement la version préférée.

La version 1.0 de l’API REST Outlook est en voie d’obsolescence. À partir du 1er novembre 2018, les applications ne pourront plus utiliser l’authentification de base avec la version 1.0 du point de terminaison REST (https://outlook.office.com/api/v1.0). D’ici le 1er novembre 2019, la version 1.0 du point de terminaison REST sera complètement désactivée et la documentation de la version 1.0 sera supprimée peu de temps après. Commencez à migrer votre application pour utiliser l’API REST Outlook dans la v1.0 de Microsoft Graph. Voir plus de détails dans notre annonce.

S’applique à : Exchange Online | Office 365 | Hotmail.com | Live.com | MSN.com | Outlook.com | Passport.com

L’API Mail Outlook vous permet de lire, de créer et d’envoyer des messages et des pièces jointes, d’afficher et de répondre aux messages d’événement et de gérer les dossiers sécurisés par Azure Active Directory dans Office 365. Elle fournit également la même fonctionnalité dans les comptes Microsoft spécifiquement dans ces domaines : Hotmail.com, Live.com, MSN.com, Outlook.com et Passport.com.

Remarque : Par simplicité, le reste de cet article utilise « Outlook.com » pour inclure ces domaines de compte Microsoft.

La version bêta de l’API ne vous intéresse pas ? Utilisez le contrôle dans le coin supérieur droit et sélectionnez la version que vous souhaitez.

La version 2.0 de l’API ne vous intéresse pas ? Utilisez le contrôle en haut à droite et sélectionnez la version que vous souhaitez.

La version 1.0 de l’API ne vous intéresse pas ? Utilisez le contrôle en haut à droite et sélectionnez la version que vous souhaitez.

Toutes les opérations de l’API Mail

Opérations de message Les messages sont stockés dans des dossiers de boîtes aux lettres, de sorte que les points de terminaison de message incluent souvent le dossier qui contient le message. Un dossier est spécifié soit par ID, soit par l’un des noms de dossiers connus suivants : Inbox, Drafts, SentItems ou DeletedItems.

Recevoir des messages | Synchroniser des messages | Créer et envoyer des messages | Répondre ou répondre à tous les messages | Transférer des messages nouveaux ou des brouillons | Mettre à jour des messages | Supprimer des messages | Déplacer ou copier des messages |
Gérer la boîte de réception Prioritaire | Gérer les @-Mentions (préversion) | Gérer les règles (préversion) | Se désabonner (préversion) | Récupérer des choix de langue (préversion) | Récupérer les choix de fuseaux horaires (préversion) | Récupérer les paramètres de boîte aux lettres | Récupérer les paramètres de réponse automatique | Mettre à jour les paramètres de réponse automatique | Récupérer les infos-courrier (préversion) | Récupérer des pièces jointes | Créer des pièces jointes | Supprimer des pièces jointes

Opérations sur les dossiers Les dossiers de boîte aux lettres peuvent contenir des messages et d’autres dossiers. Vous pouvez récupérer, créer, modifier, supprimer et gérer des dossiers. Vous pouvez utiliser les noms de dossiers connus suivants à la place de l’ID pour spécifier le dossier correspondant : Inbox, SentItems, Drafts ou DeletedItems.

Récupérer les dossiers | Synchroniser les dossiers | Créer des dossiers | Mettre à jour des dossiers | Supprimer des dossiers | Déplacer ou copier des dossiers

Voir aussi :

Ressource de message de l’API REST | Ressource du dossier de l’API REST

Utiliser l’API REST Courrier

Authentification

Comme les autres API REST Outlook, pour chaque requête envoyée à l’API Courrier, vous devez inclure un jeton d’accès valide. Pour obtenir un jeton d’accès, vous devez avoir inscrit et identifié votre application, et obtenu l’autorisation appropriée. Vous pouvez en apprendre plus sur certaines options d’inscription et d’autorisation simplifiées pour vous. Gardez cela à l’esprit lorsque vous effectuez des opérations spécifiques dans l’API Courrier.

Version de l’API

L’API REST Courrier est prise en charge dans toutes les versions de l’API REST Outlook. La fonctionnalité peut différer selon la version spécifique.

Utilisateur cible

Toutes les requêtes d’API Courrier sont effectuées au nom de l’utilisateur connecté, sauf indication contraire. Quelques sous-ensembles d’API, tels que l'API Boîte de réception Prioritaire, peuvent être effectués sur l’utilisateur connecté ou sur un utilisateur spécifié par un ID utilisateur, avec les autorisations appropriées.

Voir Utiliser l’API REST Outlook pour plus d’informations communes à tous les sous-ensembles de l’API REST Outlook.


Récupérer les messages

Vous pouvez récupérer une collection de messages ou un message individuel depuis un dossier de boîte aux lettres.

Chaque message de la réponse contient plusieurs propriétés, parmi lesquelles la propriété Body. Le corps du message peut être au format texte ou HTML. Si le corps est au format HTML, par défaut, le contenu HTML potentiellement dangereux (par exemple, un code JavaScript) incorporé dans la propriété Body est supprimé avant que le contenu du corps ne soit renvoyé dans une réponse REST. Pour récupérer le contenu HTML d’origine dans son intégralité, incluez l’en-tête de requête HTTP suivant :

Prefer: outlook.allow-unsafe-html

Pour spécifier le format souhaité à renvoyer dans les propriétés Body et UniqueBody dans une requête GET, utilisez l’en-tête Prefer: outlook.body-content-type :

  • Spécifiez Prefer: outlook.body-content-type="text" pour récupérer le corps du message au format texte.
  • Spécifiez Prefer: outlook.body-content-type="html", ou ignorez simplement l’en-tête, pour renvoyer le corps du message au format HTML.

Si vous spécifiez l’un ou l’autre en-tête, la réponse inclura l’en-tête Preference-Applied comme confirmation :

  • Pour les requêtes au format texte : Preference-Applied: outlook.body-content-type="text"
  • Pour les requêtes au format HTML : Preference-Applied: outlook.body-content-type="html"

Pour spécifier le format souhaité à renvoyer dans les propriétés Body et UniqueBody dans une requête GET, utilisez l’en-tête Prefer: outlook.body-content-type :

  • Spécifiez Prefer: outlook.body-content-type="text" pour récupérer le corps du message au format texte.
  • Spécifiez Prefer: outlook.body-content-type="html", ou ignorez simplement l’en-tête, pour renvoyer le corps du message au format HTML.

Si vous spécifiez l’un ou l’autre en-tête, la réponse inclura l’en-tête Preference-Applied comme confirmation :

  • Pour les requêtes au format texte : Preference-Applied: outlook.body-content-type="text"
  • Pour les requêtes au format HTML : Preference-Applied: outlook.body-content-type="html"

Actuellement, l’opération GET renvoie les corps de messages uniquement au format HTML.


Récupérer une collection de messages | Récupérer un message

Récupérer une collection de messages

Étendue minimale requise : l’une des suivantes :

Remarque Le comportement des opérations dans cette section varie selon la version. En savoir plus en choisissant une version dans le coin supérieur droit de la page.

Récupérer une collection de messages à partir de la toute la boîte aux lettres de l’utilisateur connecté (y compris les dossiers Éléments supprimés et Courrier pêle-mêle).

GET https://outlook.office.com/api/beta/me/messages

Vous pouvez également spécifier un dossier dans la boîte aux lettres de l’utilisateur et récupérer la collection de messages à partir de ce dossier.

GET https://outlook.office.com/api/beta/me/MailFolders/{folder_id}/messages
Paramètre requisTypeDescription
Paramètres URL
folder_idchaîneL’ID de dossier ou le nom de dossier connu Inbox, Drafts, SentItems ou DeletedItems, si vous recevez des messages depuis dossier spécifique. Spécifier AllItems retournerait tous les messages de la boîte aux lettres entière

Remarque Par défaut, chaque message dans la réponse inclut toutes ses propriétés. Utilisez $select pour spécifier uniquement les propriétés dont vous avez besoin pour de meilleurs niveaux de performance. La propriété Id est toujours renvoyée. Voir Paramètres de requête OData pour les paramètres de filtrage, de tri et de pagination.

L’exemple suivant montre comment utiliser $select pour spécifier de ne renvoyer que les propriétés Expéditeur et Sujet de chaque message dans la réponse. Reportez-vous à l’exemple de réponse dans Récupérer un contact pour une liste complète des propriétés qui seraient retournées pour un message si vous n’utilisez pas $select.

Exemple de requête

GET https://outlook.office.com/api/beta/me/MailFolders/sentitems/messages/?$select=Sender,Subject

Exemple de réponse

{
    "@odata.context": "https://outlook.office.com/api/beta/$metadata#Me/MailFolders('sentitems')/Messages(Sender,Subject)",
    "value": [
        {
            "@odata.id": "https://outlook.office.com/api/beta/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/Messages('AAMkAGI2TIzAAAA=')",
            "@odata.etag": "W/\"CQAAABYAAACd9nJ/tVysQos2hTfspaWRAAADTJqS\"",
            "Id": "AAMkAGI2TIzAAAA=",
            "Subject": "Meeting Notes",
            "Sender": {
                "EmailAddress": {
                    "Name": "Alex D",
                    "Address": "alexd@a830edad9050849NDA1.onmicrosoft.com"
                }
            }
        },
        {
            "@odata.id": "https://outlook.office.com/api/beta/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/Messages('AAMkAGI2TIy-AAA=')",
            "@odata.etag": "W/\"CQAAABYAAACd9nJ/tVysQos2hTfspaWRAAADTJqP\"",
            "Id": "AAMkAGI2TIy-AAA=",
            "Subject": "Contract Signing",
            "Sender": {
                "EmailAddress": {
                    "Name": "Alex D",
                    "Address": "alexd@a830edad9050849NDA1.onmicrosoft.com"
                }
            }
        },
        {
            "@odata.type": "#Microsoft.OutlookServices.EventMessage",
            "@odata.id": "https://outlook.office.com/api/beta/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/Messages('AAMkAGI2TIy9AAA=')",
            "@odata.etag": "W/\"CwAAABYAAACd9nJ/tVysQos2hTfspaWRAAADTJqJ\"",
            "Id": "AAMkAGI2TIy9AAA=",
            "Subject": "Rob:Alex 1:1",
            "Sender": {
                "EmailAddress": {
                    "Name": "Alex D",
                    "Address": "alexd@a830edad9050849NDA1.onmicrosoft.com"
                }
            }
        }
    ]
}

Récupérer une collection de messages à partir de la toute la boîte aux lettres de l’utilisateur connecté (y compris les dossiers Éléments supprimés et Courrier pêle-mêle).

GET https://outlook.office.com/api/v2.0/me/messages

Vous pouvez également spécifier un dossier dans la boîte aux lettres de l’utilisateur et récupérer la collection de messages à partir de ce dossier.

GET https://outlook.office.com/api/v2.0/me/MailFolders/{folder_id}/messages
Paramètre requisTypeDescription
Paramètres URL
folder_idchaîneL’ID de dossier ou le nom de dossier connu Inbox, Drafts, SentItems ou DeletedItems, si vous recevez des messages depuis dossier spécifique. Spécifier AllItems retournerait tous les messages de la boîte aux lettres entière

Remarque Par défaut, chaque message dans la réponse inclut toutes ses propriétés. Utilisez $select pour spécifier uniquement les propriétés dont vous avez besoin pour de meilleurs niveaux de performance. La propriété Id est toujours renvoyée. Voir Paramètres de requête OData pour les paramètres de filtrage, de tri et de pagination.

L’exemple suivant montre comment utiliser $select pour spécifier de ne renvoyer que les propriétés Expéditeur et Sujet de chaque message dans la réponse. Reportez-vous à l’exemple de réponse dans Récupérer un contact pour une liste complète des propriétés qui seraient retournées pour un message si vous n’utilisez pas $select.

Exemple de requête

GET https://outlook.office.com/api/v2.0/me/MailFolders/sentitems/messages/?$select=Sender,Subject

Exemple de réponse

{
    "@odata.context": "https://outlook.office.com/api/v2.0/$metadata#Me/MailFolders('sentitems')/Messages(Sender,Subject)",
    "value": [
        {
            "@odata.id": "https://outlook.office.com/api/v2.0/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/Messages('AAMkAGI2TIzAAAA=')",
            "@odata.etag": "W/\"CQAAABYAAACd9nJ/tVysQos2hTfspaWRAAADTJqS\"",
            "Id": "AAMkAGI2TIzAAAA=",
            "Subject": "Meeting Notes",
            "Sender": {
                "EmailAddress": {
                    "Name": "Alex D",
                    "Address": "alexd@a830edad9050849NDA1.onmicrosoft.com"
                }
            }
        },
        {
            "@odata.id": "https://outlook.office.com/api/v2.0/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/Messages('AAMkAGI2TIy-AAA=')",
            "@odata.etag": "W/\"CQAAABYAAACd9nJ/tVysQos2hTfspaWRAAADTJqP\"",
            "Id": "AAMkAGI2TIy-AAA=",
            "Subject": "Contract Signing",
            "Sender": {
                "EmailAddress": {
                    "Name": "Alex D",
                    "Address": "alexd@a830edad9050849NDA1.onmicrosoft.com"
                }
            }
        },
        {
            "@odata.type": "#Microsoft.OutlookServices.EventMessage",
            "@odata.id": "https://outlook.office.com/api/v2.0/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/Messages('AAMkAGI2TIy9AAA=')",
            "@odata.etag": "W/\"CwAAABYAAACd9nJ/tVysQos2hTfspaWRAAADTJqJ\"",
            "Id": "AAMkAGI2TIy9AAA=",
            "Subject": "Rob:Alex 1:1",
            "Sender": {
                "EmailAddress": {
                    "Name": "Alex D",
                    "Address": "alexd@a830edad9050849NDA1.onmicrosoft.com"
                }
            }
        }
    ]
}

Récupérer une collection de messages depuis la boîte de réception.

GET https://outlook.office.com/api/v1.0/me/messages

Vous pouvez également spécifier un dossier dans la boîte aux lettres de l’utilisateur et récupérer la collection de messages à partir de ce dossier.

GET https://outlook.office.com/api/v1.0/me/MailFolders/{folder_id}/messages
Paramètre requisTypeDescription
Paramètres URL
folder_idchaîneL’ID de dossier ou le nom de dossier connu Inbox, Drafts, SentItems ou DeletedItems, si vous recevez des messages depuis dossier spécifique.

Remarque Par défaut, chaque message dans la réponse inclut toutes ses propriétés. Utilisez $select pour spécifier uniquement les propriétés dont vous avez besoin pour de meilleurs niveaux de performance. La propriété Id est toujours renvoyée. Voir Paramètres de requête OData pour les paramètres de filtrage, de tri et de pagination.

L’exemple suivant montre comment utiliser $select pour spécifier de ne renvoyer que les propriétés Expéditeur et Sujet de chaque message dans la réponse. Reportez-vous à l’exemple de réponse dans Récupérer un contact pour une liste complète des propriétés qui seraient retournées pour un message si vous n’utilisez pas $select.

Exemple de requête

GET https://outlook.office.com/api/v1.0/me/folders/sentitems/messages/?$select=Sender,Subject

Exemple de réponse

Code d’état : 200

{
    "@odata.context": "https://outlook.office.com/api/v1.0/$metadata#Me/Folders('sentitems')/Messages(Sender,Subject)",
    "value": [
        {
            "@odata.id": "https://outlook.office.com/api/v1.0/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/Messages('AAMkAGI2TIy-AAA=')",
            "@odata.etag": "W/\"CQAAABYAAACd9nJ/tVysQos2hTfspaWRAAADTJqS\"",
            "Id": "AAMkAGI2NGVhZTVlLTI1OGMtNDI4My1iZmE5LTA5OGJiZGEzMTc0YQBGAAAAAADUuTJK1K9aTpCdqXop_4NaBwCd9nJ-tVysQos2hTfspaWRAAAAAAEJAACd9nJ-tVysQos2hTfspaWRAAADTIzAAAA=",
            "Subject": "Meeting Notes",
            "Sender": {
                "EmailAddress": {
                    "Name": "Alex D",
                    "Address": "/O=EXCHANGELABS/OU=EXCHANGE ADMINISTRATIVE GROUP (FYDIBOHF23SPDLT)/CN=RECIPIENTS/CN=1A5F1737122542AEA595DF9590A1C6FD-ALEXD"
                }
            }
        },
        {
            "@odata.id": "https://outlook.office.com/api/v1.0/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/Messages('AAMkAGI2TIy-AAA=')",
            "@odata.etag": "W/\"CQAAABYAAACd9nJ/tVysQos2hTfspaWRAAADTJqP\"",
            "Id": "AAMkAGI2NGVhZTVlLTI1OGMtNDI4My1iZmE5LTA5OGJiZGEzMTc0YQBGAAAAAADUuTJK1K9aTpCdqXop_4NaBwCd9nJ-tVysQos2hTfspaWRAAAAAAEJAACd9nJ-tVysQos2hTfspaWRAAADTIy-AAA=",
            "Subject": "Contract Signing",
            "Sender": {
                "EmailAddress": {
                    "Name": "Alex D",
                    "Address": "/O=EXCHANGELABS/OU=EXCHANGE ADMINISTRATIVE GROUP (FYDIBOHF23SPDLT)/CN=RECIPIENTS/CN=1A5F1737122542AEA595DF9590A1C6FD-ALEXD"
                }
            }
        },
        {
            "@odata.type": "#Microsoft.OutlookServices.EventMessage",
            "@odata.id": "https://outlook.office.com/api/v1.0/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/Messages('AAMkAGI2TIy-AAA=')",
            "@odata.etag": "W/\"CwAAABYAAACd9nJ/tVysQos2hTfspaWRAAADTJqJ\"",
            "Id": "AAMkAGI2NGVhZTVlLTI1OGMtNDI4My1iZmE5LTA5OGJiZGEzMTc0YQBGAAAAAADUuTJK1K9aTpCdqXop_4NaBwCd9nJ-tVysQos2hTfspaWRAAAAAAEJAACd9nJ-tVysQos2hTfspaWRAAADTIy9AAA=",
            "Subject": "Rob:Alex 1:1",
            "Sender": {
                "EmailAddress": {
                    "Name": "Alex D",
                    "Address": "/O=EXCHANGELABS/OU=EXCHANGE ADMINISTRATIVE GROUP (FYDIBOHF23SPDLT)/CN=RECIPIENTS/CN=1A5F1737122542AEA595DF9590A1C6FD-ALEXD"
                }
            }
        }
    ]
}

Type de réponse

La collection de messages demandée.


Récupérer un message

Étendue minimale requise : l’une des suivantes :

Récupérer un message par ID.

GET https://outlook.office.com/api/beta/me/messages/{message_id}
Paramètre requisTypeDescription
Paramètres URL
message_idchaîneL’ID du message.

Exemple de requête

GET https://outlook.office.com/api/beta/me/messages/AAMkAGI2THVSAAA=

Exemple de réponse

{
    "@odata.context": "https://outlook.office.com/api/beta/$metadata#Me/Messages/$entity",
    "@odata.id": "https://outlook.office.com/api/beta/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/Messages('AAMkAGI2THVSAAA=')",
    "@odata.etag": "W/\"CQAAABYAAACd9nJ/tVysQos2hTfspaWRAAADTIKz\"",
    "Id": "AAMkAGI2THVSAAA=",
    "CreatedDateTime": "2014-10-20T00:41:57Z",
    "LastModifiedDateTime": "2014-10-20T00:41:57Z",
    "ChangeKey": "CQAAABYAAACd9nJ/tVysQos2hTfspaWRAAADTIKz",
    "InternetMessageId": "SN2PR00M@SN2.namprd00.prod.outlook.com",
    "Categories": [],
    "ReceivedDateTime": "2014-10-20T00:41:57Z",
    "SentDateTime": "2014-10-20T00:41:53Z",
    "HasAttachments": true,
    "Subject": "Re: Meeting Notes",
    "Body": {
        "ContentType": "Text",
        "Content": "\n________________________________________\nFrom: Alex D\nSent: Sunday, October 19, 2014 5:28 PM\nTo: Katie Jordan\nSubject: Meeting Notes\n\nPlease send me the meeting notes ASAP\n"
    },
    "BodyPreview": "________________________________________\nFrom: Alex D\nSent: Sunday, October 19, 2014 5:28 PM\nTo: Katie Jordan\nSubject: Meeting Notes\n\nPlease send me the meeting notes ASAP",
    "Importance": "Normal",
    "ParentFolderId": "AAMkAGI2AAEMAAA=",
    "Sender": {
        "EmailAddress": {
            "Name": "Katie Jordan",
            "Address": "katiej@a830edad9050849NDA1.onmicrosoft.com"
        }
    },
    "From": {
        "EmailAddress": {
            "Name": "Katie Jordan",
            "Address": "katiej@a830edad9050849NDA1.onmicrosoft.com"
        }
    },
    "ToRecipients": [
        {
            "EmailAddress": {
                "Name": "Alex D",
                "Address": "alexd@a830edad9050849NDA1.onmicrosoft.com"
            }
        }
    ],
    "CcRecipients": [],
    "BccRecipients": [],
    "ReplyTo": [],
    "ConversationId": "AAQkAGI2yEto=",
    "ConversationIndex": "AQHRh3zqrkAcds2kw==",
    "IsDeliveryReceiptRequested": false,
    "IsReadReceiptRequested": false,
    "IsRead": false,
    "IsDraft": false,
    "WebLink": "https://outlook.office365.com/owa/?ItemID=AAMkAGI2THVSAAA%3D&exvsurl=1&viewmodel=ReadMessageItem"
}

Type de réponse

Le message demandé.

Remarque Par défaut, la réponse inclut toutes les propriétés du message spécifié. Utilisez $select pour spécifier uniquement les propriétés dont vous avez besoin pour de meilleurs niveaux de performance. La propriété Id est toujours renvoyée. Voir Paramètres de requête OData pour les paramètres de filtrage, de tri et de pagination.

L’exemple suivant montre comment utiliser $select pour spécifier de ne renvoyer que les propriétés Expéditeur et Sujet du message dans la réponse.

GET https://outlook.office.com/api/beta/me/messages/AAMkAGE1I5MTAAA=?$select=Sender,Subject
GET https://outlook.office.com/api/v2.0/me/messages/{message_id}
Paramètre requisTypeDescription
Paramètres URL
message_idchaîneL’ID du message.

Exemple de requête

GET https://outlook.office.com/api/v2.0/me/messages/AAMkAGI2THVSAAA=

Exemple de réponse

{
    "@odata.context": "https://outlook.office.com/api/v2.0/$metadata#Me/Messages/$entity",
    "@odata.id": "https://outlook.office.com/api/v2.0/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/Messages('AAMkAGI2THVSAAA=')",
    "@odata.etag": "W/\"CQAAABYAAACd9nJ/tVysQos2hTfspaWRAAADTIKz\"",
    "Id": "AAMkAGI2THVSAAA=",
    "CreatedDateTime": "2014-10-20T00:41:57Z",
    "LastModifiedDateTime": "2014-10-20T00:41:57Z",
    "ChangeKey": "CQAAABYAAACd9nJ/tVysQos2hTfspaWRAAADTIKz",
    "Categories": [],
    "ReceivedDateTime": "2014-10-20T00:41:57Z",
    "SentDateTime": "2014-10-20T00:41:53Z",
    "HasAttachments": true,
    "Subject": "Re: Meeting Notes",
    "Body": {
        "ContentType": "Text",
        "Content": "\n________________________________________\nFrom: Alex D\nSent: Sunday, October 19, 2014 5:28 PM\nTo: Katie Jordan\nSubject: Meeting Notes\n\nPlease send me the meeting notes ASAP\n"
    },
    "BodyPreview": "________________________________________\nFrom: Alex D\nSent: Sunday, October 19, 2014 5:28 PM\nTo: Katie Jordan\nSubject: Meeting Notes\n\nPlease send me the meeting notes ASAP",
    "Importance": "Normal",
    "ParentFolderId": "AAMkAGI2AAEMAAA=",
    "Sender": {
        "EmailAddress": {
            "Name": "Katie Jordan",
            "Address": "katiej@a830edad9050849NDA1.onmicrosoft.com"
        }
    },
    "From": {
        "EmailAddress": {
            "Name": "Katie Jordan",
            "Address": "katiej@a830edad9050849NDA1.onmicrosoft.com"
        }
    },
    "ToRecipients": [
        {
            "EmailAddress": {
                "Name": "Alex D",
                "Address": "alexd@a830edad9050849NDA1.onmicrosoft.com"
            }
        }
    ],
    "CcRecipients": [],
    "BccRecipients": [],
    "ReplyTo": [],
    "ConversationId": "AAQkAGI2yEto=",
    "IsDeliveryReceiptRequested": false,
    "IsReadReceiptRequested": false,
    "IsRead": false,
    "IsDraft": false,
    "WebLink": "https://outlook.office365.com/owa/?ItemID=AAMkAGI2THVSAAA%3D&exvsurl=1&viewmodel=ReadMessageItem"
}

Type de réponse

Le message demandé.

Remarque Par défaut, la réponse inclut toutes les propriétés du message spécifié. Utilisez $select pour spécifier uniquement les propriétés dont vous avez besoin pour de meilleurs niveaux de performance. La propriété Id est toujours renvoyée. Voir Paramètres de requête OData pour les paramètres de filtrage, de tri et de pagination.

L’exemple suivant montre comment utiliser $select pour spécifier de ne renvoyer que les propriétés Expéditeur et Sujet du message dans la réponse.

GET https://outlook.office.com/api/v2.0/me/messages/AAMkAGE1I5MTAAA=?$select=Sender,Subject
GET https://outlook.office.com/api/v1.0/me/messages/{message_id}
Paramètre requisTypeDescription
Paramètres URL
message_idchaîneL’ID du message.

Exemple de requête

GET https://outlook.office.com/api/v1.0/me/messages/AAMkAGI2NGVhZTVlLTI1OGMtNDI4My1iZmE5LTA5OGJiZGEzMTc0YQBGAAAAAADUuTJK1K9aTpCdqXop_4NaBwCd9nJ-tVysQos2hTfspaWRAAAAAAEMAACd9nJ-tVysQos2hTfspaWRAAADTHVSAAA=

Exemple de réponse

Code d’état : 200

{
  "@odata.context": "https://outlook.office.com/api/v1.0/$metadata#Me/Messages/$entity",
  "@odata.id": "https://outlook.office.com/api/v1.0/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/Events('AAMkAGE4v1RAAA=')",
  "@odata.etag": "W/\"CQAAABYAAACd9nJ/tVysQos2hTfspaWRAAADTIKz\"",
  "Id": "AAMkAGI2NGVhZTVlLTI1OGMtNDI4My1iZmE5LTA5OGJiZGEzMTc0YQBGAAAAAADUuTJK1K9aTpCdqXop_4NaBwCd9nJ-tVysQos2hTfspaWRAAAAAAEMAACd9nJ-tVysQos2hTfspaWRAAADTHVSAAA=",
  "ChangeKey": "CQAAABYAAACd9nJ/tVysQos2hTfspaWRAAADTIKz",
  "Categories": [],
  "DateTimeCreated": "2014-10-20T00:41:57Z",
  "DateTimeLastModified": "2014-10-20T00:41:57Z",
  "Subject": "Re: Meeting Notes",
  "BodyPreview": "________________________________________\nFrom: Alex D\nSent: Sunday, October 19, 2014 5:28 PM\nTo: Katie Jordan\nSubject: Meeting Notes\n\nPlease send me the meeting notes ASAP",
  "Body": {
    "ContentType": "Text",
    "Content": "\n________________________________________\nFrom: Alex D\nSent: Sunday, October 19, 2014 5:28 PM\nTo: Katie Jordan\nSubject: Meeting Notes\n\nPlease send me the meeting notes ASAP\n"
  },
  "Importance": "Normal",
  "HasAttachments": true,
  "ParentFolderId": "AAMkAGI2NGVhZTVlLTI1OGMtNDI4My1iZmE5LTA5OGJiZGEzMTc0YQAuAAAAAADUuTJK1K9aTpCdqXop_4NaAQCd9nJ-tVysQos2hTfspaWRAAAAAAEMAAA=",
  "From": {
    "EmailAddress": {
      "Address": "katiej@a830edad9050849NDA1.onmicrosoft.com",
      "Name": "Katie Jordan"
    }
  },
  "Sender": {
    "EmailAddress": {
      "Address": "katiej@a830edad9050849NDA1.onmicrosoft.com",
      "Name": "Katie Jordan"
    }
  },
  "ToRecipients": [
    {
      "EmailAddress": {
        "Address": "alexd@a830edad9050849NDA1.onmicrosoft.com",
        "Name": "Alex D"
      }
    }
  ],
  "CcRecipients": [],
  "BccRecipients": [],
  "ReplyTo": [],
  "ConversationId": "AAQkAGI2NGVhZTVlLTI1OGMtNDI4My1iZmE5LTA5OGJiZGEzMTc0YQAQAEmjRj3pwjRLrbymGMYyEto=",
  "DateTimeReceived": "2014-10-20T00:41:57Z",
  "DateTimeSent": "2014-10-20T00:41:53Z",
  "IsDeliveryReceiptRequested": false,
  "IsReadReceiptRequested": false,
  "IsDraft": false,
  "IsRead": false
}

Type de réponse

Le message demandé.

Remarque Par défaut, la réponse inclut toutes les propriétés du message spécifié. Utilisez $select pour spécifier uniquement les propriétés dont vous avez besoin pour de meilleurs niveaux de performance. La propriété Id est toujours renvoyée. Voir Paramètres de requête OData pour les paramètres de filtrage, de tri et de pagination.

L’exemple suivant montre comment utiliser $select pour spécifier de ne renvoyer que les propriétés Expéditeur et Sujet du message dans la réponse.

GET https://outlook.office.com/api/v1.0/me/messages/AAMkAGEI5MTAAA=?$select=Sender,Subject

Synchroniser les messages

Étendue minimale requise : l’une des suivantes :

Vous pouvez synchroniser votre magasin de données local avec les messages sur le serveur. La synchronisation des messages est une opération par dossier. Par exemple, vous pouvez synchroniser tous les messages de votre boîte de réception. Pour synchroniser les messages dans une hiérarchie de dossiers, vous devez synchroniser chaque dossier individuellement.

L’API prend en charge à la fois la synchronisation complète, qui récupère tous les messages d’un dossier, et la synchronisation incrémentielle, qui récupère tous les messages qui ont été modifiés depuis la dernière synchronisation complète.

La synchronisation d’un dossier de courrier nécessite généralement deux requêtes GET ou plus. Effectuer une requête GET ressemble beaucoup à la façon dont vous récupérez des messages, sauf que vous devez inclure certains en-têtes de requête, et un deltaToken ou skipToken le cas échéant.

En-têtes de requête

  • Vous devez spécifier l’en-tête Prefer: odata.track-changes dans toutes les demandes de synchronisation, sauf celles qui incluent un skipToken qui est renvoyé depuis une requête de synchronisation antérieure. Dans la première réponse, cherchez l’en-tête Preference-Applied: odata.track-changes pour confirmer que la ressource prend en charge la synchronisation avant de continuer.

  • Vous pouvez spécifier l’en-tête Prefer: odata.maxpagesize={x} pour définir le nombre maximal de messages renvoyés dans une requête.

Voici une séquence complète de synchronisation de messages :

  1. Faire la requête GET initiale avec l’en-tête Prefer: odata.track-changes obligatoire. La réponse initiale à une requête de synchronisation renvoie toujours un deltaToken. (Les requêtes GET suivantes diffèrent de la première requête GET car elles incluent soit un deltaToken soit un skipToken reçu dans une réponse précédente.)

  2. Si la première réponse renvoie l’en-tête Preference-Applied: odata.track-changes, vous pouvez poursuivre la synchronisation du répertoire.

  3. Effectuer une seconde requête GET. Spécifiez l’en-tête Prefer: odata.track-changes et le deltaToken renvoyé par le premier GET pour déterminer s’il existe des messages supplémentaires. La deuxième requête renverra des messages supplémentaires, et soit un skipToken s’il y a davantage de messages disponibles, soit un deltaToken si le dernier message a été synchronisé, auquel cas la séquence de synchronisation est terminée et vous pouvez vous arrêter.

  4. Poursuivre la synchronisation en envoyant un appel GET et en incluant un skipToken renvoyé par l’appel précédent. Arrêter lorsque vous obtenez une dernière réponse contenant un en-tête _@odata.deltaLink_ avec un deltaToken à nouveau, ce qui indique que la synchronisation est terminée.

Mettez en cache le dernier jeton delta reçu dans la séquence de synchronisation complète. Utilisez-le pour lancer une séquence de synchronisation incrémentielle.

Voici une séquence de synchronisation incrémentielle :

  1. Faire la demande GET initiale avec l’en-tête Prefer: odata.track-changes requis et le deltaToken en cache reçu dans la dernière réponse d’un cycle de synchronisation complet.

  2. Les étapes suivantes suivent le modèle utilisé pour une synchronisation complète.

Pour synchroniser les messages dans un dossier spécifique

Première requête

GET https://outlook.office365.com/api/beta/me/MailFolders('{folder_id}')/messages

Deuxième requête, ou première requête d’une séquence suivante

GET https://outlook.office365.com/api/beta/me/MailFolders('{folder_id}')/messages/?$deltaToken={delta_token}

Troisième requête ou requête suivante dans la même séquence

Continuez à envoyer la requête de synchronisation suivante si la réponse précédente inclut un skipToken. Arrêtez lorsque vous obtenez une réponse contenant de nouveau un en-tête @odata.deltaLink avec un deltaToken.

GET https://outlook.office365.com/api/beta/me/MailFolders('{folder_id}')/messages/?$skipToken={skip_token}
ParamètresTypeDescription
Paramètres d’en-tête
Preferodata.track-changesIndique que la requête est une requête de synchronisation. Obligatoire pour les deux premières requêtes GET d’une séquence.
Preferodata.maxpagesizeDéfinit le nombre de messages à renvoyer dans chaque réponse. Facultatif.
Paramètres URL
folder_idchaîneL’ID du dossier ou les noms de dossier connus Inbox, Drafts, SentItems ou DeletedItems à synchroniser. Obligatoire.
deltaTokenChaîneJeton qui identifie la dernière requête de synchronisation pour ce dossier. Il est renvoyé comme partie de la valeur de @odata.deltaLink dans cette réponse de synchronisation précédente. Obligatoire pour la deuxième requête GET.
skipTokenChaîneJeton qui indique qu’il n’y a plus de messages à télécharger. Obligatoire s’il est renvoyé comme partie de la valeur de @odata.nextLink dans la réponse de synchronisation précédente.

Par défaut, la synchronisation renvoie toutes les propriétés et tous les messages d’un dossier. Utilisez $select pour spécifier uniquement les propriétés dont vous avez besoin pour obtenir les meilleurs niveaux de performance. La propriété Id est toujours renvoyée.

La synchronisation prend en charge les expressions de requête $select, $top et $expand. Il existe un support limité pour $filter et $orderby, et pas de support pour $search.

  • Les seules expressions $filter supportées sont "$filter=ReceivedDateTime+ge+{value}" ou "$filter=ReceivedDateTime+gt+{value}".
  • La seule expression $orderby supportée est "$orderby=ReceivedDateTime+desc". Si vous n’incluez pas d’expression $orderby, l’ordre de renvoi n’est pas garanti.

Voir Paramètres de requête OData pour les paramètres de filtrage, de tri et de pagination.

Type de réponse

Une collection contenant les messages demandés et un deltaToken ou un skipToken à utiliser pour demander des pages supplémentaires de données de message du serveur pour une synchronisation incrémentielle.

Exemple

L’exemple suivant montre une série de requêtes permettant de synchroniser un dossier spécifique contenant 7 messages. La première requête de synchronisation spécifie le renvoi de deux messages à la fois (odata.maxpagesize est à 2), et seulement les propriétés Sender et Subject pour chaque message.

  • La réponse initiale renvoie 2 messages, un deltaLink et un deltaToken.
  • La seconde requête utilise ce deltaToken. La seconde réponse renvoie 2 messages, un nextLink et un skipToken.
  • Pour achever la synchronisation, utilisez le skipToken renvoyé par la demande de synchronisation précédente jusqu’à ce que la réponse de synchronisation renvoie un deltaLink et un deltaToken, auquel cas cette séquence de synchronisation est terminée. Enregistrez le deltaToken pour la prochaine séquence de synchronisation.

Exemple de première requête

GET https://outlook.office.com/api/beta/Me/MailFolders('AAMkAGI5MAAAwW-j-AAA=')/messages?$select=Subject,Sender HTTP/1.1
Prefer: odata.maxpagesize=2
Prefer: odata.track-changes

Exemple de données d’une première réponse

La première réponse comprend un en-tête Preference-Applied: odata.track-changes, indiquant que ce dossier prend en charge la synchronisation. La réponse comprend également deux messages et un deltaToken.

Preference-Applied: odata.track-changes

{
  "@odata.context":"https://outlook.office.com/api/beta/$metadata#Me/MailFolders('AAMkAGI5MAAAwW-j-AAA%3D')/Messages(Subject,Sender)",
  "value":[
    {
      "@odata.id":"https://outlook.office.com/api/beta/Users('f97adce1-d718-4a0e-9af8-b10167e3a346@0d76cf04-f6a0-46cc-947b-d2e1bdd98d11')/Messages('AAMkAGI5MAAAwXADPAAA=')",
      "@odata.etag":"W/\"CQAAABYAAAA+Z5tnXBgBRpOasqS9T0shAAAwYS9+\"",
      "Id":"AAMkAGI5MAAAwXADPAAA=",
      "Subject":"Updates from All Company",
      "Sender":{
        "EmailAddress":{
          "Name":"Contoso Demo on Yammer",
          "Address":"noreply@yammer.com"
        }
      }
    },
    {
      "@odata.id":"https://outlook.office.com/api/beta/Users('f97adce1-d718-4a0e-9af8-b10167e3a346@0d76cf04-f6a0-46cc-947b-d2e1bdd98d11')/Messages('AAMkAGI5MAAAwXADVAAA=')",
      "@odata.etag":"W/\"CQAAABYAAAA+Z5tnXBgBRpOasqS9T0shAAAwYS+E\"",
      "Id":"AAMkAGI5MAAAwXADVAAA=",
      "Subject":"RE: Latin American Ad Campaign - XT Series",
      "Sender":{
        "EmailAddress":{
          "Name":"Alex Darrow",
          "Address":"AlexD@contoso.onmicrosoft.com"
        }
      }
    }
  ],
  "@odata.deltaLink":"https://outlook.office.com/api/beta/Me/MailFolders('AAMkAGI5MAAAwW-j-AAA=')/messages/?%24select=Subject%2cSender&%24deltatoken=MfzCBD5nm2dcGAFGk5qypL1PSyEAADFmX28BAAAA"
}

Exemple de deuxième requête

La deuxième requête spécifie le deltaToken renvoyé de la réponse précédente.

GET https://outlook.office.com/api/beta/Me/MailFolders('AAMkAGI5MAAAwW-j-AAA=')/messages/?%24select=Subject%2cSender&%24deltatoken=MfzCBD5nm2dcGAFGk5qypL1PSyEAADFmX28BAAAA HTTP/1.1
Prefer: odata.maxpagesize=2
Prefer: odata.track-changes

Exemple de données d’une deuxième réponse

La deuxième réponse comprend deux autres messages et un skipToken, indiquant qu’il n’y a plus de messages à synchroniser dans le dossier.

{
  "@odata.context":"https://outlook.office.com/api/beta/$metadata#Me/MailFolders('AAMkAGI5MAAAwW-j-AAA%3D')/Messages(Subject,Sender)/$delta",
  "value":[
    {
      "@odata.id":"https://outlook.office.com/api/beta/Users('f97adce1-d718-4a0e-9af8-b10167e3a346@0d76cf04-f6a0-46cc-947b-d2e1bdd98d11')/Messages('AAMkAGI5MAAAwXADQAAA=')",
      "@odata.etag":"W/\"CQAAABYAAAA+Z5tnXBgBRpOasqS9T0shAAAwYS9/\"",
      "Id":"AAMkAGI5MAAAwXADQAAA=",
      "Subject":"International Launch Planning for XT2000",
      "Sender":{
        "EmailAddress":{
          "Name":"Engineering",
          "Address":"engineering@contoso.onmicrosoft.com"
        }
      }
    },
    {
      "@odata.id":"https://outlook.office.com/api/beta/Users('f97adce1-d718-4a0e-9af8-b10167e3a346@0d76cf04-f6a0-46cc-947b-d2e1bdd98d11')/Messages('AAMkAGI5MAAAwXADUAAA=')",
      "@odata.etag":"W/\"CQAAABYAAAA+Z5tnXBgBRpOasqS9T0shAAAwYS+D\"",
      "Id":"AAMkAGI5MAAAwXADUAAA=",
      "Subject":"RE: Latin American Ad Campaign - XT Series",
      "Sender":{
        "EmailAddress":{
          "Name":"Anne Wallace",
          "Address":"AnneW@contoso.onmicrosoft.com"
        }
      }
    }
  ],
  "@odata.nextLink":"https://outlook.office.com/api/beta/Me/MailFolders('AAMkAGI5MAAAwW-j-AAA=')/messages/?%24select=Subject%2cSender&%24skipToken=MfzCAj5nm2dcGAFGk5qypL1PSyEAADFmX28CAAAA"
}

Exemple de troisième requête

La troisième requête comprend le skipToken renvoyé par la réponse précédente.

GET https://outlook.office.com/api/beta/Me/MailFolders('AAMkAGI5MAAAwW-j-AAA=')/messages/?%24select=Subject%2cSender&%24skipToken=MfzCAj5nm2dcGAFGk5qypL1PSyEAADFmX28CAAAA HTTP/1.1
Prefer: odata.maxpagesize=2

Exemple de données d’une troisième réponse

La troisième réponse renvoie deux autres messages et un autre skipToken, indiquant qu’il y a toujours des messages dans le dossier à synchroniser.

{
  "@odata.context":"https://outlook.office.com/api/beta/$metadata#Me/MailFolders('AAMkAGI5MAAAwW-j-AAA%3D')/Messages(Subject,Sender)/$delta",
  "value":[
    {
      "@odata.id":"https://outlook.office.com/api/beta/Users('f97adce1-d718-4a0e-9af8-b10167e3a346@0d76cf04-f6a0-46cc-947b-d2e1bdd98d11')/Messages('AAMkAGI5MAAAwXADTAAA=')",
      "@odata.etag":"W/\"CQAAABYAAAA+Z5tnXBgBRpOasqS9T0shAAAwYS+C\"",
      "Id":"AAMkAGI5MAAAwXADTAAA=",
      "Subject":"RE: Latin American Ad Campaign - XT Series",
      "Sender":{
        "EmailAddress":{
          "Name":"Pavel Bansky",
          "Address":"PavelB@contoso.onmicrosoft.com"
        }
      }
    },
    {
      "@odata.id":"https://outlook.office.com/api/beta/Users('f97adce1-d718-4a0e-9af8-b10167e3a346@0d76cf04-f6a0-46cc-947b-d2e1bdd98d11')/Messages('AAMkAGI5MAAAwXADSAAA=')",
      "@odata.etag":"W/\"CQAAABYAAAA+Z5tnXBgBRpOasqS9T0shAAAwYS+B\"",
      "Id":"AAMkAGI5MAAAwXADSAAA=",
      "Subject":"Latin American Ad Campaign - XT Series",
      "Sender":{
        "EmailAddress":{
          "Name":"Engineering",
          "Address":"engineering@contoso.onmicrosoft.com"
        }
      }
    }
  ],
  "@odata.nextLink":"https://outlook.office.com/api/beta/Me/MailFolders('AAMkAGI5MAAAwW-j-AAA=')/messages/?%24select=Subject%2cSender&%24skipToken=MfzCAj5nm2dcGAFGk5qypL1PSyEAADFmX28DAAAA"
}

Exemple de quatrième requête

La quatrième requête comprend le skipToken de la réponse précédente.

GET https://outlook.office.com/api/beta/Me/MailFolders('AAMkAGI5MAAAwW-j-AAA=')/messages/?%24select=Subject%2cSender&%24skipToken=MfzCAj5nm2dcGAFGk5qypL1PSyEAADFmX28DAAAA HTTP/1.1
Prefer: odata.maxpagesize=2

Exemple de données d’une quatrième et dernière réponse

La quatrième réponse renvoie le dernier message restant dans le dossier, et un deltaToken qui indique que la synchronisation est terminée pour ce dossier. Enregistrez le deltaToken pour la prochaine séquence de synchronisation de ce dossier.

{
  "@odata.context":"https://outlook.office.com/api/beta/$metadata#Me/MailFolders('AAMkAGI5MAAAwW-j-AAA%3D')/Messages(Subject,Sender)/$delta",
  "value":[
    {
      "@odata.id":"https://outlook.office.com/api/beta/Users('f97adce1-d718-4a0e-9af8-b10167e3a346@0d76cf04-f6a0-46cc-947b-d2e1bdd98d11')/Messages('AAMkAGI5MAAAwXADRAAA=')",
      "@odata.etag":"W/\"CQAAABYAAAA+Z5tnXBgBRpOasqS9T0shAAAwYS+A\"",
      "Id":"AAMkAGI5MAAAwXADRAAA=",
      "Subject":"Data sheets for the XT2000 ",
      "Sender":{
        "EmailAddress":{
          "Name":"Engineering",
          "Address":"engineering@contoso.onmicrosoft.com"
        }
      }
    }
  ],
  "@odata.deltaLink": "https://outlook.office365.com/api/beta/Me/MailFolders('AAMkAGI5MAAAwW-j-AAA=')/messages/?%24deltaToken=0_zCBD5nm2dcGAFGk5qypL1PSyEAADBb9RkEAAAA"
}

Exemple de demande de synchronisation incrémentielle

La première requête comprend le deltaToken de la dernière réponse de synchronisation complète.

GET https://outlook.office.com/api/beta/Me/MailFolders('AAMkAGI5MAAAwW-j-AAA=')/messages/?%24select=Subject%2cSender&%24deltatoken=0_zCBD5nm2dcGAFGk5qypL1PSyEAADBb9RkEAAAA HTTP/1.1
Prefer: odata.maxpagesize=2
Prefer: odata.track-changes

La réponse à la requête de synchronisation incrémentielle inclut toutes les modifications apportées à l’ensemble des messages du dossier.

Exemple de réponse de synchronisation incrémentielle

La réponse montre qu’une modification a été apportée à l’ensemble de messages. Un message est supprimé.


{
  "@odata.context":"https://outlook.office.com/api/beta/$metadata#Me/MailFolders('AAMkAGI5MAAAwW-j-AAA%3D')/Messages(Subject,Sender)/$delta",
  "value": [
        {
            "id": "Messages('AAMkAGY5MDFjNTQyLWI3NzItNGE4My04ZWE4LWQ4YmMwNTJkYTg1YwBGAAAAAAD7fYH1FVR1TayS78jtGGehBwDB1GgBNTpbT6Qe-PzdAR4YAh7cdimCAADwOTzPjXdMTKEex95TwbKkAACLEykWAAA=')",
            "reason": "deleted"
        }
    ]
,
  "@odata.deltaLink": "https://outlook.office365.com/api/beta/Me/MailFolders('AAMkAGI5MAAAwW-j-AAA=')/messages/?%24deltaToken=4_zRDV5nm2dcGAFGk5qypL1PSyEAADBb9RkEAAAA"
}

Étendue minimale requise : l’une des suivantes :

Vous pouvez synchroniser votre magasin de données local avec les messages sur le serveur. La synchronisation des messages est une opération par dossier. Par exemple, vous pouvez synchroniser tous les messages de votre boîte de réception. Pour synchroniser les messages dans une hiérarchie de dossiers, vous devez synchroniser chaque dossier individuellement.

L’API prend en charge à la fois la synchronisation complète, qui récupère tous les messages d’un dossier, et la synchronisation incrémentielle, qui récupère tous les messages qui ont été modifiés depuis la dernière synchronisation complète.

La synchronisation d’un dossier de courrier nécessite généralement deux requêtes GET ou plus. Effectuer une requête GET ressemble beaucoup à la façon dont vous récupérez des messages, sauf que vous devez inclure certains en-têtes de requête, et un deltaToken ou skipToken le cas échéant.

En-têtes de requête

  • Vous devez spécifier l’en-tête Prefer: odata.track-changes dans toutes les demandes de synchronisation, sauf celles qui incluent un skipToken qui est renvoyé depuis une requête de synchronisation antérieure. Dans la première réponse, cherchez l’en-tête Preference-Applied: odata.track-changes pour confirmer que la ressource prend en charge la synchronisation avant de continuer.

  • Vous pouvez spécifier l’en-tête Prefer: odata.maxpagesize={x} pour définir le nombre maximal de messages renvoyés dans une requête.

Voici une séquence typique de synchronisation de messages :

  1. Faire la requête GET initiale avec l’en-tête Prefer: odata.track-changes obligatoire. La réponse initiale à une requête de synchronisation renvoie toujours un deltaToken. (Les requêtes GET suivantes diffèrent de la première requête GET car elles incluent soit un deltaToken soit un skipToken reçu dans une réponse précédente.)

  2. Si la première réponse renvoie l’en-tête Preference-Applied: odata.track-changes, vous pouvez poursuivre la synchronisation du répertoire.

  3. Effectuer une seconde requête GET. Spécifiez l’en-tête Prefer: odata.track-changes et le deltaToken renvoyé par le premier GET pour déterminer s’il existe des messages supplémentaires. La deuxième requête renverra des messages supplémentaires, et soit un skipToken s’il y a davantage de messages disponibles, soit un deltaToken si le dernier message a été synchronisé, auquel cas la séquence de synchronisation est terminée et vous pouvez vous arrêter.

  4. Poursuivre la synchronisation en envoyant un appel GET et en incluant un skipToken renvoyé par l’appel précédent. Arrêter lorsque vous obtenez une dernière réponse contenant un en-tête _@odata.deltaLink_ avec un deltaToken à nouveau, ce qui indique que la synchronisation est terminée.

Mettez en cache le dernier jeton delta reçu dans la séquence de synchronisation complète. Utilisez-le pour lancer une séquence de synchronisation incrémentielle.

Voici une séquence de synchronisation incrémentielle :

  1. Faire la demande GET initiale avec l’en-tête Prefer: odata.track-changes requis et le deltaToken en cache reçu dans la dernière réponse d’un cycle de synchronisation complet.

  2. Les étapes suivantes suivent le modèle utilisé pour une synchronisation complète.

Pour synchroniser les messages dans un dossier spécifique

Première requête

GET https://outlook.office365.com/api/v2.0/me/MailFolders('{folder_id}')/messages

Deuxième requête, ou première requête d’une séquence suivante

GET https://outlook.office365.com/api/v2.0/me/MailFolders('{folder_id}')/messages/?$deltaToken={delta_token}

Troisième requête ou requête suivante dans la même séquence

Continuez à envoyer la requête de synchronisation suivante si la réponse précédente inclut un skipToken. Arrêtez lorsque vous obtenez une réponse contenant de nouveau un en-tête @odata.deltaLink avec un deltaToken.

GET https://outlook.office365.com/api/v2.0/me/MailFolders('{folder_id}')/messages/?$skipToken={skip_token}
ParamètresTypeDescription
Paramètres d’en-tête
Preferodata.track-changesIndique que la requête est une requête de synchronisation. Obligatoire pour les deux premières requêtes GET d’une séquence.
Preferodata.maxpagesizeDéfinit le nombre de messages à renvoyer dans chaque réponse. Facultatif.
Paramètres URL
folder_idchaîneL’ID du dossier ou les noms de dossier connus Inbox, Drafts, SentItems ou DeletedItems à synchroniser. Obligatoire.
deltaTokenChaîneJeton qui identifie la dernière requête de synchronisation pour ce dossier. Il est renvoyé comme partie de la valeur de @odata.deltaLink dans cette réponse de synchronisation précédente. Obligatoire pour la deuxième requête GET.
skipTokenChaîneJeton qui indique qu’il n’y a plus de messages à télécharger. Obligatoire s’il est renvoyé comme partie de la valeur de @odata.nextLink dans la réponse de synchronisation précédente.

Par défaut, la synchronisation renvoie toutes les propriétés et tous les messages d’un dossier. Utilisez $select pour spécifier uniquement les propriétés dont vous avez besoin pour obtenir les meilleurs niveaux de performance. La propriété Id est toujours renvoyée.

La synchronisation prend en charge les expressions de requête $select, $top et $expand. Il existe un support limité pour $filter et $orderby, et pas de support pour $search.

  • Les seules expressions $filter supportées sont "$filter=ReceivedDateTime+ge+{value}" ou "$filter=ReceivedDateTime+gt+{value}".
  • La seule expression $orderby supportée est "$orderby=ReceivedDateTime+desc". Si vous n’incluez pas d’expression $orderby, l’ordre de renvoi n’est pas garanti.

Voir Paramètres de requête OData pour les paramètres de filtrage, de tri et de pagination.

Type de réponse

Une collection contenant les messages demandés et un deltaToken ou un skipToken à utiliser pour demander des pages supplémentaires de données de message du serveur pour une synchronisation incrémentielle.

Exemple

L’exemple suivant montre une série de requêtes permettant de synchroniser un dossier spécifique contenant 7 messages. La première requête de synchronisation spécifie le renvoi de deux messages à la fois (odata.maxpagesize est à 2), et seulement les propriétés Sender et Subject pour chaque message.

  • La réponse initiale renvoie 2 messages, un deltaLink et un deltaToken.
  • La seconde requête utilise ce deltaToken. La seconde réponse renvoie 2 messages, un nextLink et un skipToken.
  • Pour achever la synchronisation, utilisez le skipToken renvoyé par la demande de synchronisation précédente jusqu’à ce que la réponse de synchronisation renvoie un deltaLink et un deltaToken, auquel cas cette séquence de synchronisation est terminée. Enregistrez le deltaToken pour la prochaine séquence de synchronisation.

Exemple de première requête

GET https://outlook.office.com/api/v2.0/Me/MailFolders('AAMkAGI5MAAAwW-j-AAA=')/messages?$select=Subject,Sender HTTP/1.1
Prefer: odata.maxpagesize=2
Prefer: odata.track-changes

Exemple de données d’une première réponse

La première réponse comprend un en-tête Preference-Applied: odata.track-changes, indiquant que ce dossier prend en charge la synchronisation. La réponse comprend également deux messages et un deltaToken.

Preference-Applied: odata.track-changes

{
  "@odata.context":"https://outlook.office.com/api/v2.0/$metadata#Me/MailFolders('AAMkAGI5MAAAwW-j-AAA%3D')/Messages(Subject,Sender)",
  "value":[
    {
      "@odata.id":"https://outlook.office.com/api/v2.0/Users('f97adce1-d718-4a0e-9af8-b10167e3a346@0d76cf04-f6a0-46cc-947b-d2e1bdd98d11')/Messages('AAMkAGI5MAAAwXADPAAA=')",
      "@odata.etag":"W/\"CQAAABYAAAA+Z5tnXBgBRpOasqS9T0shAAAwYS9+\"",
      "Id":"AAMkAGI5MAAAwXADPAAA=",
      "Subject":"Updates from All Company",
      "Sender":{
        "EmailAddress":{
          "Name":"Contoso Demo on Yammer",
          "Address":"noreply@yammer.com"
        }
      }
    },
    {
      "@odata.id":"https://outlook.office.com/api/v2.0/Users('f97adce1-d718-4a0e-9af8-b10167e3a346@0d76cf04-f6a0-46cc-947b-d2e1bdd98d11')/Messages('AAMkAGI5MAAAwXADVAAA=')",
      "@odata.etag":"W/\"CQAAABYAAAA+Z5tnXBgBRpOasqS9T0shAAAwYS+E\"",
      "Id":"AAMkAGI5MAAAwXADVAAA=",
      "Subject":"RE: Latin American Ad Campaign - XT Series",
      "Sender":{
        "EmailAddress":{
          "Name":"Alex Darrow",
          "Address":"AlexD@contoso.onmicrosoft.com"
        }
      }
    }
  ],
  "@odata.deltaLink":"https://outlook.office.com/api/v2.0/Me/MailFolders('AAMkAGI5MAAAwW-j-AAA=')/messages/?%24select=Subject%2cSender&%24deltatoken=MfzCBD5nm2dcGAFGk5qypL1PSyEAADFmX28BAAAA"
}

Exemple de deuxième requête

La deuxième requête spécifie le deltaToken renvoyé de la réponse précédente.

GET https://outlook.office.com/api/v2.0/Me/MailFolders('AAMkAGI5MAAAwW-j-AAA=')/messages/?%24select=Subject%2cSender&%24deltatoken=MfzCBD5nm2dcGAFGk5qypL1PSyEAADFmX28BAAAA HTTP/1.1
Prefer: odata.maxpagesize=2
Prefer: odata.track-changes

Exemple de données d’une deuxième réponse

La deuxième réponse comprend deux autres messages et un skipToken, indiquant qu’il n’y a plus de messages à synchroniser dans le dossier.

{
  "@odata.context":"https://outlook.office.com/api/v2.0/$metadata#Me/MailFolders('AAMkAGI5MAAAwW-j-AAA%3D')/Messages(Subject,Sender)/$delta",
  "value":[
    {
      "@odata.id":"https://outlook.office.com/api/v2.0/Users('f97adce1-d718-4a0e-9af8-b10167e3a346@0d76cf04-f6a0-46cc-947b-d2e1bdd98d11')/Messages('AAMkAGI5MAAAwXADQAAA=')",
      "@odata.etag":"W/\"CQAAABYAAAA+Z5tnXBgBRpOasqS9T0shAAAwYS9/\"",
      "Id":"AAMkAGI5MAAAwXADQAAA=",
      "Subject":"International Launch Planning for XT2000",
      "Sender":{
        "EmailAddress":{
          "Name":"Engineering",
          "Address":"engineering@contoso.onmicrosoft.com"
        }
      }
    },
    {
      "@odata.id":"https://outlook.office.com/api/v2.0/Users('f97adce1-d718-4a0e-9af8-b10167e3a346@0d76cf04-f6a0-46cc-947b-d2e1bdd98d11')/Messages('AAMkAGI5MAAAwXADUAAA=')",
      "@odata.etag":"W/\"CQAAABYAAAA+Z5tnXBgBRpOasqS9T0shAAAwYS+D\"",
      "Id":"AAMkAGI5MAAAwXADUAAA=",
      "Subject":"RE: Latin American Ad Campaign - XT Series",
      "Sender":{
        "EmailAddress":{
          "Name":"Anne Wallace",
          "Address":"AnneW@contoso.onmicrosoft.com"
        }
      }
    }
  ],
  "@odata.nextLink":"https://outlook.office.com/api/v2.0/Me/MailFolders('AAMkAGI5MAAAwW-j-AAA=')/messages/?%24select=Subject%2cSender&%24skipToken=MfzCAj5nm2dcGAFGk5qypL1PSyEAADFmX28CAAAA"
}

Exemple de troisième requête

La troisième requête comprend le skipToken renvoyé par la réponse précédente.

GET https://outlook.office.com/api/v2.0/Me/MailFolders('AAMkAGI5MAAAwW-j-AAA=')/messages/?%24select=Subject%2cSender&%24skipToken=MfzCAj5nm2dcGAFGk5qypL1PSyEAADFmX28CAAAA HTTP/1.1
Prefer: odata.maxpagesize=2

Exemple de données d’une troisième réponse

La troisième réponse renvoie deux autres messages et un autre skipToken, indiquant qu’il y a toujours des messages dans le dossier à synchroniser.

{
  "@odata.context":"https://outlook.office.com/api/v2.0/$metadata#Me/MailFolders('AAMkAGI5MAAAwW-j-AAA%3D')/Messages(Subject,Sender)/$delta",
  "value":[
    {
      "@odata.id":"https://outlook.office.com/api/v2.0/Users('f97adce1-d718-4a0e-9af8-b10167e3a346@0d76cf04-f6a0-46cc-947b-d2e1bdd98d11')/Messages('AAMkAGI5MAAAwXADTAAA=')",
      "@odata.etag":"W/\"CQAAABYAAAA+Z5tnXBgBRpOasqS9T0shAAAwYS+C\"",
      "Id":"AAMkAGI5MAAAwXADTAAA=",
      "Subject":"RE: Latin American Ad Campaign - XT Series",
      "Sender":{
        "EmailAddress":{
          "Name":"Pavel Bansky",
          "Address":"PavelB@contoso.onmicrosoft.com"
        }
      }
    },
    {
      "@odata.id":"https://outlook.office.com/api/v2.0/Users('f97adce1-d718-4a0e-9af8-b10167e3a346@0d76cf04-f6a0-46cc-947b-d2e1bdd98d11')/Messages('AAMkAGI5MAAAwXADSAAA=')",
      "@odata.etag":"W/\"CQAAABYAAAA+Z5tnXBgBRpOasqS9T0shAAAwYS+B\"",
      "Id":"AAMkAGI5MAAAwXADSAAA=",
      "Subject":"Latin American Ad Campaign - XT Series",
      "Sender":{
        "EmailAddress":{
          "Name":"Engineering",
          "Address":"engineering@contoso.onmicrosoft.com"
        }
      }
    }
  ],
  "@odata.nextLink":"https://outlook.office.com/api/v2.0/Me/MailFolders('AAMkAGI5MAAAwW-j-AAA=')/messages/?%24select=Subject%2cSender&%24skipToken=MfzCAj5nm2dcGAFGk5qypL1PSyEAADFmX28DAAAA"
}

Exemple de quatrième requête

La quatrième requête comprend le skipToken de la réponse précédente.

GET https://outlook.office.com/api/v2.0/Me/MailFolders('AAMkAGI5MAAAwW-j-AAA=')/messages/?%24select=Subject%2cSender&%24skipToken=MfzCAj5nm2dcGAFGk5qypL1PSyEAADFmX28DAAAA HTTP/1.1
Prefer: odata.maxpagesize=2

Exemple de données d’une quatrième et dernière réponse

La quatrième réponse renvoie le dernier message restant dans le dossier, et un deltaToken qui indique que la synchronisation est terminée pour ce dossier. Enregistrez le deltaToken pour la prochaine séquence de synchronisation de ce dossier.

{
  "@odata.context":"https://outlook.office.com/api/v2.0/$metadata#Me/MailFolders('AAMkAGI5MAAAwW-j-AAA%3D')/Messages(Subject,Sender)/$delta",
  "value":[
    {
      "@odata.id":"https://outlook.office.com/api/v2.0/Users('f97adce1-d718-4a0e-9af8-b10167e3a346@0d76cf04-f6a0-46cc-947b-d2e1bdd98d11')/Messages('AAMkAGI5MAAAwXADRAAA=')",
      "@odata.etag":"W/\"CQAAABYAAAA+Z5tnXBgBRpOasqS9T0shAAAwYS+A\"",
      "Id":"AAMkAGI5MAAAwXADRAAA=",
      "Subject":"Data sheets for the XT2000 ",
      "Sender":{
        "EmailAddress":{
          "Name":"Engineering",
          "Address":"engineering@contoso.onmicrosoft.com"
        }
      }
    }
  ],
  "@odata.deltaLink": "https://outlook.office365.com/api/v2.0/Me/MailFolders('AAMkAGI5MAAAwW-j-AAA=')/messages/?%24deltaToken=0_zCBD5nm2dcGAFGk5qypL1PSyEAADBb9RkEAAAA"
}

Exemple de demande de synchronisation incrémentielle

La première requête comprend le deltaToken de la dernière réponse de synchronisation complète.

GET https://outlook.office.com/api/v2.0/Me/MailFolders('AAMkAGI5MAAAwW-j-AAA=')/messages/?%24select=Subject%2cSender&%24deltatoken=0_zCBD5nm2dcGAFGk5qypL1PSyEAADBb9RkEAAAA HTTP/1.1
Prefer: odata.maxpagesize=2
Prefer: odata.track-changes

La réponse à la requête de synchronisation incrémentielle inclut toutes les modifications apportées à l’ensemble des messages du dossier.

Exemple de réponse de synchronisation incrémentielle

La réponse montre qu’une modification a été apportée à l’ensemble de messages. Un message est supprimé.


{
  "@odata.context":"https://outlook.office.com/api/v2.0/$metadata#Me/MailFolders('AAMkAGI5MAAAwW-j-AAA%3D')/Messages(Subject,Sender)/$delta",
  "value": [
        {
            "id": "Messages('AAMkAGY5MDFjNTQyLWI3NzItNGE4My04ZWE4LWQ4YmMwNTJkYTg1YwBGAAAAAAD7fYH1FVR1TayS78jtGGehBwDB1GgBNTpbT6Qe-PzdAR4YAh7cdimCAADwOTzPjXdMTKEex95TwbKkAACLEykWAAA=')",
            "reason": "deleted"
        }
    ]
,
  "@odata.deltaLink": "https://outlook.office365.com/api/beta/Me/MailFolders('AAMkAGI5MAAAwW-j-AAA=')/messages/?%24deltaToken=4_zRDV5nm2dcGAFGk5qypL1PSyEAADBb9RkEAAAA"
}

Cette fonctionnalité est actuellement disponible pour les versions v2.0 et bêta. Pour en savoir plus, utilisez le contrôle dans le coin supérieur droit de l’article et sélectionnez l’une ou l’autre version.


Créer et envoyer des messages

Vous pouvez envoyer un nouveau message à la volée ou créer un brouillon, puis l’envoyer. Vous pouvez créer des brouillons dans n’importe quel dossier.

Envoyer un nouveau message à la volée | Créer un brouillon de message | Envoyer un brouillon de message

Envoyer un nouveau message à la volée

Étendue minimale requise : l’une des suivantes :

Envoyez le message fourni dans le corps de la requête en utilisant la méthode SendMail. Vous pouvez inclure une ou plusieurs pièces jointes dans le même appel d’action en les spécifiant dans la propriété de collection Pièces jointes. Vous pouvez également enregistrer le message dans le dossier Éléments envoyés.

POST https://outlook.office.com/api/beta/me/sendmail
Paramètre requisTypeDescription
Paramètres de corps
MessageMessageLe message à envoyer.
SavetoSentItemsbooléenIndique s’il faut enregistrer le message dans Éléments envoyés. la valeur par défaut est true.

Spécifiez le paramètre Message avec la propriété ToRecipients requise et toute propriété message accessible en écriture dans le corps de la requête. Le paramètre SaveToSentItems est seulement nécessaire s’il est à false.

Exemple de requête

POST https://outlook.office.com/api/beta/me/sendmail
Content-Type: application/json

{
  "Message": {
    "Subject": "Meet for lunch?",
    "Body": {
      "ContentType": "Text",
      "Content": "The new cafeteria is open."
    },
    "ToRecipients": [
      {
        "EmailAddress": {
          "Address": "garthf@a830edad9050849NDA1.onmicrosoft.com"
        }
      }
    ],
    "Attachments": [
      {
        "@odata.type": "#Microsoft.OutlookServices.FileAttachment",
        "Name": "menu.txt",
        "ContentBytes": "bWFjIGFuZCBjaGVlc2UgdG9kYXk="
      }
    ]
  },
  "SaveToSentItems": "false"
}

Exemple de réponse

Status code: 202
POST https://outlook.office.com/api/v2.0/me/sendmail
Paramètre requisTypeDescription
Paramètres de corps
MessageMessageLe message à envoyer.
SavetoSentItemsbooléenIndique s’il faut enregistrer le message dans Éléments envoyés. la valeur par défaut est true.

Spécifiez le paramètre Message avec la propriété ToRecipients requise et toute propriété message accessible en écriture dans le corps de la requête. Le paramètre SaveToSentItems est seulement nécessaire s’il est à false.

Exemple de requête

POST https://outlook.office.com/api/v2.0/me/sendmail

{
  "Message": {
    "Subject": "Meet for lunch?",
    "Body": {
      "ContentType": "Text",
      "Content": "The new cafeteria is open."
    },
    "ToRecipients": [
      {
        "EmailAddress": {
          "Address": "garthf@a830edad9050849NDA1.onmicrosoft.com"
        }
      }
    ],
    "Attachments": [
      {
        "@odata.type": "#Microsoft.OutlookServices.FileAttachment",
        "Name": "menu.txt",
        "ContentBytes": "bWFjIGFuZCBjaGVlc2UgdG9kYXk="
      }
    ]
  },
  "SaveToSentItems": "false"
}

Exemple de réponse

Status code: 202
POST https://outlook.office.com/api/v1.0/me/sendmail
Paramètre requisTypeDescription
Paramètres de corps
MessageMessageLe message à envoyer.
SavetoSentItemsbooléenIndique s’il faut enregistrer le message dans Éléments envoyés. la valeur par défaut est true.

Spécifiez le paramètre Message avec la propriété ToRecipients requise et toute propriété message accessible en écriture dans le corps de la requête. Le paramètre SaveToSentItems est seulement nécessaire s’il est à false.

Exemple de requête

POST https://outlook.office.com/api/v1.0/me/sendmail

{
  "Message": {
    "Subject": "Meet for lunch?",
    "Body": {
      "ContentType": "Text",
      "Content": "The new cafeteria is open."
    },
    "ToRecipients": [
      {
        "EmailAddress": {
          "Address": "garthf@a830edad9050849NDA1.onmicrosoft.com"
        }
      }
    ],
    "Attachments": [
      {
        "@odata.type": "#Microsoft.OutlookServices.FileAttachment",
        "Name": "menu.txt",
        "ContentBytes": "bWFjIGFuZCBjaGVlc2UgdG9kYXk="
      }
    ]
  },
  "SaveToSentItems": "false"
}

Exemple de réponse

Status code: 202

Créer un brouillon de message

Étendue minimale requise : l’une des suivantes :

Crée le brouillon d’un nouveau message. Les brouillons peuvent être créés dans n’importe quel dossier et éventuellement mis à jour avant envoi. Pour enregistrer dans le dossier Brouillons, utilisez le raccourci /me/messages.

POST https://outlook.office.com/api/beta/me/messages
POST https://outlook.office.com/api/beta/me/MailFolders/{folder_id}/messages
Paramètre requisTypeDescription
Paramètres URL
folder_idchaîneL’ID du dossier de destination, ou les noms de dossier connus Inbox ou Drafts.

Spécifiez toutes les propriétés message inscriptibles dans le corps de la requête.

Exemple de requête

POST https://outlook.office.com/api/beta/me/MailFolders/inbox/messages
Content-Type: application/json

{
  "Subject": "Did you see last night's game?",
  "Importance": "Low",
  "Body": {
    "ContentType": "HTML",
    "Content": "They were <b>awesome</b>!"
  },
  "ToRecipients": [
    {
      "EmailAddress": {
        "Address": "katiej@a830edad9050849NDA1.onmicrosoft.com"
      }
    }
  ]
}

Exemple de réponse

Status code: 201

{
  "@odata.context": "https://outlook.office.com/api/beta/$metadata#Me/Messages/$entity",
  "@odata.id": "https://outlook.office.com/api/beta/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/Messages('AAMkAGE0Mz7k0AAA=')",
  "@odata.etag": "W/\"CQAAABYAAAAmP1Ln1wcHRariNdTMGAO9AAAS0Ag5\"",
  "Id": "AAMkAGE0Mz7k0AAA=",
  "ChangeKey": "CQAAABYAAAAmP1Ln1wcHRariNdTMGAO9AAAS0Ag5",
  "Categories": [],
  "InternetMessageId": "SN2PR00M@SN2.namprd00.prod.outlook.com",
  "CreatedDateTime": "2014-10-18T20:06:51Z",
  "LastModifiedDateTime": "2014-10-18T20:06:51Z",
  "Subject": "Did you see last night's game?",
  "BodyPreview": "They were awesome!",
  "Body": {
    "ContentType": "HTML",
    "Content": "<html>\r\n<head>\r\n<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\">\r\n</head>\r\n<body>\r\nThey were <b>awesome</b>!\r\n</body>\r\n</html>\r\n"
  },
  "Importance": "Low",
  "HasAttachments": false,
  "ParentFolderId": "AAMkAGE0MAAEPAAA=",
  "From": null,
  "Sender": null,
  "ToRecipients": [
    {
      "EmailAddress": {
        "Address": "katiej@a830edad9050849NDA1.onmicrosoft.com",
        "Name": "Katie Jordan"
      }
    }
  ],
  "CcRecipients": [],
  "BccRecipients": [],
  "ReplyTo": [],
  "ConversationId": "AAQkAGE0Mpv2hisc=",
  "ConversationIndex": "AQHRf4zqrkAcds2kw==",
  "ReceivedDateTime": "2014-10-18T20:06:51Z",
  "SentDateTime": "2014-10-18T20:06:51Z",
  "IsDeliveryReceiptRequested": false,
  "IsReadReceiptRequested": false,
  "IsDraft": true,
  "IsRead": true
}
POST https://outlook.office.com/api/v2.0/me/messages
POST https://outlook.office.com/api/v2.0/me/MailFolders/{folder_id}/messages
Paramètre requisTypeDescription
Paramètres URL
folder_idchaîneL’ID du dossier de destination, ou les noms de dossier connus Inbox ou Drafts.

Spécifiez toutes les propriétés message inscriptibles dans le corps de la requête.

Exemple de requête

POST https://outlook.office.com/api/v2.0/me/MailFolders/inbox/messages
Content-Type: application/json

{
  "Subject": "Did you see last night's game?",
  "Importance": "Low",
  "Body": {
    "ContentType": "HTML",
    "Content": "They were <b>awesome</b>!"
  },
  "ToRecipients": [
    {
      "EmailAddress": {
        "Address": "katiej@a830edad9050849NDA1.onmicrosoft.com"
      }
    }
  ]
}

Exemple de réponse

Status code: 201

{
  "@odata.context": "https://outlook.office.com/api/v2.0/$metadata#Me/Messages/$entity",
  "@odata.id": "https://outlook.office.com/api/v2.0/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/Messages('AAMkAGE0Mz7k0AAA=')",
  "@odata.etag": "W/\"CQAAABYAAAAmP1Ln1wcHRariNdTMGAO9AAAS0Ag5\"",
  "Id": "AAMkAGE0Mz7k0AAA=",
  "ChangeKey": "CQAAABYAAAAmP1Ln1wcHRariNdTMGAO9AAAS0Ag5",
  "Categories": [],
  "CreatedDateTime": "2014-10-18T20:06:51Z",
  "LastModifiedDateTime": "2014-10-18T20:06:51Z",
  "Subject": "Did you see last night's game?",
  "BodyPreview": "They were awesome!",
  "Body": {
    "ContentType": "HTML",
    "Content": "<html>\r\n<head>\r\n<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\">\r\n</head>\r\n<body>\r\nThey were <b>awesome</b>!\r\n</body>\r\n</html>\r\n"
  },
  "Importance": "Low",
  "HasAttachments": false,
  "ParentFolderId": "AAMkAGE0MAAEPAAA=",
  "From": null,
  "Sender": null,
  "ToRecipients": [
    {
      "EmailAddress": {
        "Address": "katiej@a830edad9050849NDA1.onmicrosoft.com",
        "Name": "Katie Jordan"
      }
    }
  ],
  "CcRecipients": [],
  "BccRecipients": [],
  "ReplyTo": [],
  "ConversationId": "AAQkAGE0Mpv2hisc=",
  "ReceivedDateTime": "2014-10-18T20:06:51Z",
  "SentDateTime": "2014-10-18T20:06:51Z",
  "IsDeliveryReceiptRequested": false,
  "IsReadReceiptRequested": false,
  "IsDraft": true,
  "IsRead": true
}
POST https://outlook.office.com/api/v1.0/me/messages
POST https://outlook.office.com/api/v1.0/me/folders/{folder_id}/messages
Paramètre requisTypeDescription
Paramètres URL
folder_idchaîneL’ID du dossier de destination, ou les noms de dossier connus Inbox ou Drafts.

Spécifiez toutes les propriétés message inscriptibles dans le corps de la requête.

Exemple de requête

POST https://outlook.office.com/api/v1.0/me/folders/inbox/messages
Content-Type: application/json
{
  "Subject": "Did you see last night's game?",
  "Importance": "Low",
  "Body": {
    "ContentType": "HTML",
    "Content": "They were <b>awesome</b>!"
  },
  "ToRecipients": [
    {
      "EmailAddress": {
        "Address": "katiej@a830edad9050849NDA1.onmicrosoft.com"
      }
    }
  ]
}

Exemple de réponse

Code d’état : 201

{
  "@odata.context": "https://outlook.office.com/api/v1.0/$metadata#Me/Messages/$entity",
  "@odata.id": "https://outlook.office.com/api/v1.0/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/Events('AAMkAGE4v1RAAA=')",
  "@odata.etag": "W/\"CQAAABYAAAAmP1Ln1wcHRariNdTMGAO9AAAS0Ag5\"",
  "Id": "AAMkAGE0MGM1Y2M5LWEzMmUtNGVlNy05MjRlLTk0YmJjYzVkN2I5MABGAAAAAAC_0WfqSjt_SqLtNkuO-bj1BwAmP1Ln1wcHRariNdTMGAO9AAAAAAEPAAAmP1Ln1wcHRariNdTMGAO9AAASz7k0AAA=",
  "ChangeKey": "CQAAABYAAAAmP1Ln1wcHRariNdTMGAO9AAAS0Ag5",
  "Categories": [],
  "DateTimeCreated": "2014-10-18T20:06:51Z",
  "DateTimeLastModified": "2014-10-18T20:06:51Z",
  "Subject": "Did you see last night's game?",
  "BodyPreview": "They were awesome!",
  "Body": {
    "ContentType": "HTML",
    "Content": "<html>\r\n<head>\r\n<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\">\r\n</head>\r\n<body>\r\nThey were <b>awesome</b>!\r\n</body>\r\n</html>\r\n"
  },
  "Importance": "Low",
  "HasAttachments": false,
  "ParentFolderId": "AAMkAGE0MGM1Y2M5LWEzMmUtNGVlNy05MjRlLTk0YmJjYzVkN2I5MAAuAAAAAAC_0WfqSjt_SqLtNkuO-bj1AQAmP1Ln1wcHRariNdTMGAO9AAAAAAEPAAA=",
  "From": null,
  "Sender": null,
  "ToRecipients": [
    {
      "EmailAddress": {
        "Address": "katiej@a830edad9050849NDA1.onmicrosoft.com",
        "Name": "Katie Jordan"
      }
    }
  ],
  "CcRecipients": [],
  "BccRecipients": [],
  "ReplyTo": [],
  "ConversationId": "AAQkAGE0MGM1Y2M5LWEzMmUtNGVlNy05MjRlLTk0YmJjYzVkN2I5MAAQADXiGXoAtX9IubRTpv2hisc=",
  "DateTimeReceived": "2014-10-18T20:06:51Z",
  "DateTimeSent": "2014-10-18T20:06:51Z",
  "IsDeliveryReceiptRequested": false,
  "IsReadReceiptRequested": false,
  "IsDraft": true,
  "IsRead": true
}

Type de réponse

Le brouillon de message.


Envoyer un brouillon de message

Étendue minimale requise : l’une des suivantes :

Envoyez un nouveau brouillon de message, un brouillon de réponse, un brouillon de réponse à tousou un brouillon de transfert en utilisant la méthode Send. Le message est enregistré dans le dossier Éléments envoyés.

POST https://outlook.office.com/api/beta/me/messages/{message_id}/send
Paramètre requisTypeDescription
Paramètres URL
message_idchaîneL’ID du brouillon de message à envoyer.

Exemple de requête

POST https://outlook.office.com/api/beta/me/messages/AAMkAGE0Mz7k0AAA=/send

Exemple de réponse

Status code: 202
POST https://outlook.office.com/api/v2.0/me/messages/{message_id}/send
Paramètre requisTypeDescription
Paramètres URL
message_idchaîneL’ID du brouillon de message à envoyer.

Exemple de requête

POST https://outlook.office.com/api/v2.0/me/messages/AAMkAGE0Mz7k0AAA=/send

Exemple de réponse

Status code: 202
POST https://outlook.office.com/api/v1.0/me/messages/{message_id}/send
Paramètre requisTypeDescription
Paramètres URL
message_idchaîneL’ID du brouillon de message à envoyer.

Exemple de requête

POST https://outlook.office.com/api/v1.0/me/messages/AAMkAGE0Mz7k0AAA=/send

Exemple de réponse

Status code: 202

Répondre ou répondre à tous les messages

Remarque Le comportement des opérations dans cette section varie selon la version. En savoir plus en choisissant une version dans le coin supérieur droit de la page.

Vous pouvez répondre à un message, ajouter un commentaire ou mettre à jour les propriétés du message en un seul appel. Vous pouvez également créer d’abord un brouillon de réponse et mettre à jour les propriétés du message en un seul appel, puis envoyer le brouillon.

Vous pouvez répondre uniquement à l’expéditeur du message ou répondre à tous les destinataires à la fois.

Vous pouvez répondre avec un commentaire à la volée, ou vous pouvez d’abord créer un brouillon de réponse, puis mettre à jour et envoyer ce brouillon. Vous pouvez répondre uniquement à l’expéditeur du message ou répondre à tous les destinataires à la fois.

Vous pouvez répondre avec un commentaire à la volée, ou vous pouvez d’abord créer un brouillon de réponse, puis mettre à jour et envoyer ce brouillon. Vous pouvez répondre uniquement à l’expéditeur du message ou répondre à tous les destinataires à la fois.

Répondre à l'expéditeur à la volée | Répondre à tous à la volée | Créer un brouillon de message de réponse | Créer un brouillon de message de réponse à tous

Répondre à l’expéditeur à la volée

Étendue minimale requise : l’une des suivantes :

Répondre à l’expéditeur d’un message, ajouter un commentaire ou modifier toute propriété pouvant être mise à jour en un seul appel Reply. Le message est enregistré dans le dossier Éléments envoyés.

Vous pouvez également commencer par créer un brouillon de message de réponse pour inclure un commentaire ou mettre à jour les propriétés du message, puis envoyer la réponse.

POST https://outlook.office.com/api/beta/me/messages/{message_id}/reply
Paramètre requisTypeDescription
Paramètres URL
message_idchaîneL'identifiant du message auquel répondre.
Paramètres de corps
CommentaireschaîneCommentaire à inclure. Peut être une chaîne vide.
MessageMessageToutes les propriétés modifiables à mettre à jour dans le message de réponse.

Remarque

  • Vous pouvez spécifier soit un commentaire, soit la propriété Body du paramètre Message. Spécifier les deux renverra une erreur HTTP 400 Bad Request.
  • Si ReplyTo est spécifié dans le message d’origine, selon le Internet Message Format (RFC 2822), vous devez envoyer la réponse aux destinataires dans ReplyTo et non au destinataire dans From.

Exemple de requête

L’exemple suivant inclut un commentaire et ajoute un destinataire au message de réponse.

POST https://outlook.office.com/api/beta/me/messages/AAMkADA1MTAAAAqldOAAA=/reply
Content-Type: application/json

{
  "Message":{  
    "ToRecipients":[
      {
        "EmailAddress": {
          "Address":"fannyd@contoso.onmicrosoft.com",
          "Name":"Fanny Downs"
        }
      },
      {
        "EmailAddress":{
          "Address":"randiw@contoso.onmicrosoft.com",
          "Name":"Randi Welch"
        }
      }
     ]
  },
  "Comment": "Fanny, Randi, would you name the group please?" 
}

Exemple de réponse

Status code: 202

Répondez à l’expéditeur d’un message en spécifiant un commentaire et en utilisant la méthode Reply. Le message est enregistré dans le dossier Éléments envoyés.

Si vous avez besoin de modifier toutepropriétés modifiable pour la réponse, vous pouvez également commencer par créer un brouillon de message de réponse, mettre à jour les propriétés du message, puis envoyer la réponse.

POST https://outlook.office.com/api/v2.0/me/messages/{message_id}/reply
Paramètre requisTypeDescription
Paramètres URL
message_idchaîneL'identifiant du message auquel répondre.
Paramètres de corps
CommentaireschaîneCommentaire à inclure. Peut être une chaîne vide.

Exemple de requête

POST https://outlook.office.com/api/v2.0/me/messages/AAMkAGE0Mz8DmAAA=/reply
Content-Type: application/json

{
  "Comment": "Sounds great! See you tomorrow."
}

Exemple de réponse

Status code: 202

Répondez à l’expéditeur d’un message en spécifiant un commentaire et en utilisant la méthode Reply. Le message est enregistré dans le dossier Éléments envoyés.

Si vous avez besoin de modifier toutepropriétés modifiable pour la réponse, vous pouvez également commencer par créer un brouillon de message de réponse, mettre à jour les propriétés du message, puis envoyer la réponse.

POST https://outlook.office.com/api/v1.0/me/messages/{message_id}/reply
Paramètre requisTypeDescription
Paramètres URL
message_idchaîneL'identifiant du message auquel répondre.
Paramètres de corps
CommentaireschaîneCommentaire à inclure. Peut être une chaîne vide.

Exemple de requête

POST https://outlook.office.com/api/v1.0/me/messages/AAMkAGE0Mz8DmAAA=/reply
Content-Type: application/json

{
  "Comment": "Sounds great! See you tomorrow."
}

Exemple de réponse

Status code: 202

Répondre à tous à la volée

Étendue minimale requise : l’une des suivantes :

Répondez à tous les destinataires d’un message en spécifiant un commentaire et en modifiant toute propriété modifiable pour la réponse, le tout en utilisant la méthode ReplyAll. Le message est enregistré dans le dossier Éléments envoyés.

Vous pouvez également commencer par créer un brouillon de message de réponse à tous pour inclure un commentaire ou mettre à jour les propriétés du message, puis envoyer la réponse.

POST https://outlook.office.com/api/beta/me/messages/{message_id}/replyall
Paramètre requisTypeDescription
Paramètres URL
message_idchaîneL'identifiant du message auquel répondre.
Paramètres de corps
CommentaireschaîneCommentaire à inclure. Peut être une chaîne vide.
MessageMessageToutes les propriétés modifiables à mettre à jour dans le message de réponse.

Remarque

  • Vous pouvez spécifier soit un commentaire, soit la propriété Body du paramètre Message. Spécifier les deux renverra une erreur HTTP 400 Bad Request.
  • Si ReplyTo est spécifié dans le message d’origine, selon le Internet Message Format (RFC 2822), vous devez envoyer la réponse aux destinataires dans ReplyTo et ToRecipients, et non aux destinataires dans From et ToRecipients.

Exemple de requête

L’exemple suivant inclut un commentaire et ajoute une pièce jointe au message répondre-à-tous.

POST https://outlook.office.com/api/beta/me/messages/AAMkADA1MTAAAH5JaKAAA=/ReplyAll
Content-Type: application/json

{
    "Message":{
      "Attachments": [ 
        { 
          "@odata.type": "#Microsoft.OutlookServices.FileAttachment", 
          "Name": "guidelines.txt", 
          "ContentBytes": "bWFjIGFuZCBjaGVlc2UgdG9kYXk=" 
        } 
      ]
    },
    "Comment": "Please take a look at the attached guidelines before you decide on the name." 
}

Exemple de réponse

Status code: 202

Répondez à tous les destinataires d’un message en spécifiant un commentaire et en utilisant la méthode ReplyAll. Le message est enregistré dans le dossier Éléments envoyés.

Si vous avez besoin de modifier toutepropriété modifiable pour la réponse, vous pouvez également commencer par créer un brouillon de message de réponse à tous, mettre à jour les propriétés du message, puis envoyer la réponse.

POST https://outlook.office.com/api/v2.0/me/messages/{message_id}/replyall
Paramètre requisTypeDescription
Paramètres URL
message_idchaîneL'identifiant du message auquel répondre.
Paramètres de corps
CommentaireschaîneCommentaire à inclure. Peut être une chaîne vide.

Exemple de requête

POST https://outlook.office.com/api/v2.0/me/messages/AAMkAGE0MSz8DmAAA=/replyall
Content-Type: application/json

{
  "Comment": "Thanks for the heads up."
}

Exemple de réponse

Status code: 202

Répondez à tous les destinataires d’un message en spécifiant un commentaire et en utilisant la méthode ReplyAll. Le message est enregistré dans le dossier Éléments envoyés.

Si vous avez besoin de modifier toutepropriété modifiable pour la réponse, vous pouvez également commencer par créer un brouillon de message de réponse à tous, mettre à jour les propriétés du message, puis envoyer la réponse.

POST https://outlook.office.com/api/v1.0/me/messages/{message_id}/replyall
Paramètre requisTypeDescription
Paramètres URL
message_idchaîneL'identifiant du message auquel répondre.
Paramètres de corps
CommentaireschaîneCommentaire à inclure. Peut être une chaîne vide.

Exemple de requête

POST https://outlook.office.com/api/v1.0/me/messages/AAMkAGE0MSz8DmAAA=/replyall
Content-Type: application/json

{
  "Comment": "Thanks for the heads up."
}

Exemple de réponse

Status code: 202

Créer un brouillon de message de réponse

Étendue minimale requise : l’une des suivantes :

Créer un brouillon du message de réponse pour inclure un commentaire ou mettre à jour les propriétés du message en un seul appel CreateReply. Vous pouvez ensuite envoyer le brouillon du message.

POST https://outlook.office.com/api/beta/me/messages/{message_id}/createreply
Paramètre requisTypeDescription
Paramètres URL
message_idchaîneL'identifiant du message auquel répondre.
Paramètres de corps
CommentaireschaîneCommentaire à inclure. Peut être une chaîne vide.
MessageMessageToutes les propriétés modifiables à mettre à jour dans le message de réponse.

Remarque

  • Vous pouvez spécifier soit un commentaire, soit la propriété Body du paramètre Message. Spécifier les deux renverra une erreur HTTP 400 Bad Request.
  • Si ReplyTo est spécifié dans le message d’origine, selon le Internet Message Format (RFC 2822), vous devez envoyer la réponse aux destinataires dans ReplyTo et non aux destinataires dans From.

Exemple de requête

L'exemple suivant crée un brouillon de réponse et ajoute un commentaire et un destinataire dans le corps de la demande.

POST https://outlook.office.com/api/beta/me/messages/AAMkADA1MTAAAAqldOAAA=/createreply
Content-Type: application/json

{
  "Message":{  
    "ToRecipients":[
      {
        "EmailAddress": {
          "Address":"fannyd@contoso.onmicrosoft.com",
          "Name":"Fanny Downs"
        }
      }
     ]
  },
  "Comment": "Fanny, would you name the group if the project is approved, please?" 
}

Exemple de réponse

Status code: 201

{
  "@odata.context": "https://outlook.office.com/api/beta/$metadata#Me/Messages/$entity",
  "@odata.id": "https://outlook.office.com/api/beta/Users('86b6ceaf-57f7-4278-97c4-4da0a97f6cdb@70559e59-b378-49ea-8e53-07a3a3d27f5b')/Messages('AAMkADA1MTAAAH5JKoAAA=')",
  "@odata.etag": "W/\"CQAAABYAAADX8oL1Wa7jQbcPAHouCzswAAAH5/DO\"",
  "Id": "AAMkADA1MTAAAH5JKoAAA=",
  "CreatedDateTime": "2016-03-15T08:33:43Z",
  "LastModifiedDateTime": "2016-03-15T08:33:43Z",
  "ChangeKey": "CQAAABYAAADX8oL1Wa7jQbcPAHouCzswAAAH5/DO",
  "Categories": [ ],
  "ReceivedDateTime": "2016-03-15T08:33:43Z",
  "SentDateTime": "2016-03-15T08:33:43Z",
  "HasAttachments": false,
  "InternetMessageId": "<DM2PR00MB00571796B16132601E1F286CF7890@DM2PR00MB0057.namprd00.prod.outlook.com>",
  "Subject": "RE: Let's start a group",
  "Body": {
    "ContentType": "HTML",
    "Content": "<html>\r\n<body>Fanny, would you name the group if the project is approved, please?\r\n<b>From:</b> Fanny Downs<br>\r\n<b>Sent:</b> Friday, March 4, 2016 12:23:35 AM<br>\r\n<b>To:</b> Admin<br>\r\n<b>Subject:</b> Re: Let's start a group</font>\r\n<p>That's a great idea!<br>\r\n</body>\r\n</html>"
  },
  "BodyPreview": "Fanny, would you name the group if the project is approved, please?\r\n________________________________\r\nFrom: Fanny Downs\r\nSent: Friday, March 4, 2016 12:23:35 AM\r\nTo: Admin\r\nSubject: Re: Let's start a group\r\n\r\n\r\nThat's a gre",
  "Importance": "Normal",
  "ParentFolderId": "AQMkADA1MTAAAAIBDwAAAA==",
  "Sender": {
    "EmailAddress": {
      "Name": "Admin",
      "Address": "admin@contoso.onmicrosoft.com"
    }
  },
  "From": null,
  "ToRecipients": [
    {
      "EmailAddress": {
        "Name": "Fanny Downs",
        "Address": "fannyd@contoso.onmicrosoft.com"
      }
    }
  ],
  "CcRecipients": [ ],
  "BccRecipients": [ ],
  "ReplyTo": [ ],
  "ConversationId": "AAQkADA1MTVGjIwpLvWmGtIo-aFE=",
  "ConversationIndex": "AQHRdar6akFxUaMjCku9aYa0ij9oUZ9IbLr7gBHStBQ=",
  "IsDeliveryReceiptRequested": false,
  "IsReadReceiptRequested": false,
  "IsRead": true,
  "IsDraft": true,
  "WebLink": "https://outlook.office.com/owa/?ItemID=AAMkADA1MTAAAH5JKoAAA%3D&exvsurl=1&viewmodel=ReadMessageItem",
  "MentionedMe": null,
  "AppliedHashtagsPreview": null,
  "LikesPreview": null,
  "MentionsPreview": null,
  "Mentioned": [ ],
  "InferenceClassification": "Focused",
  "UnsubscribeData": [ ],
  "UnsubscribeEnabled": false,
  "Flag": { "FlagStatus": "NotFlagged" }
}

Créez un brouillon pour la réponse au message spécifié. Vous pouvez ensuite mettre à jour le brouillon pour ajouter le contenu de la réponse à la propriété body ou modifier d’autres propriétés du message, ou simplement envoyer le brouillon.

POST https://outlook.office.com/api/v2.0/me/messages/{message_id}/createreply
Paramètre requisTypeDescription
Paramètres URL
message_idchaîneL'identifiant du message auquel répondre.

Exemple de requête

POST https://outlook.office.com/api/v2.0/me/messages/AAMkADA1MTAAAAqldOAAA=/createreply

Exemple de réponse

Status code: 201

{
  "@odata.context": "https://outlook.office.com/api/v2.0/$metadata#Me/Messages/$entity",
  "@odata.id": "https://outlook.office.com/api/v2.0/Users('86b6ceaf-57f7-4278-97c4-4da0a97f6cdb@70559e59-b378-49ea-8e53-07a3a3d27f5b')/Messages('AAMkADA1MTAAAH5JKoAAA=')",
  "@odata.etag": "W/\"CQAAABYAAADX8oL1Wa7jQbcPAHouCzswAAAH5/DO\"",
  "Id": "AAMkADA1MTAAAH5JKoAAA=",
  "CreatedDateTime": "2016-03-15T08:33:43Z",
  "LastModifiedDateTime": "2016-03-15T08:33:43Z",
  "ChangeKey": "CQAAABYAAADX8oL1Wa7jQbcPAHouCzswAAAH5/DO",
  "Categories": [ ],
  "ReceivedDateTime": "2016-03-15T08:33:43Z",
  "SentDateTime": "2016-03-15T08:33:43Z",
  "HasAttachments": false,
  "InternetMessageId": "<DM2PR00MB00571796B16132601E1F286CF7890@DM2PR00MB0057.namprd00.prod.outlook.com>",
  "Subject": "RE: Let's start a group",
  "Body": {
    "ContentType": "HTML",
    "Content": "<html>\r\n<body>Fanny, would you name the group if the project is approved, please?\r\n<b>From:</b> Fanny Downs<br>\r\n<b>Sent:</b> Friday, March 4, 2016 12:23:35 AM<br>\r\n<b>To:</b> Admin<br>\r\n<b>Subject:</b> Re: Let's start a group</font>\r\n<p>That's a great idea!<br>\r\n</body>\r\n</html>"
  },
  "BodyPreview": "Fanny, would you name the group if the project is approved, please?\r\n________________________________\r\nFrom: Fanny Downs\r\nSent: Friday, March 4, 2016 12:23:35 AM\r\nTo: Admin\r\nSubject: Re: Let's start a group\r\n\r\n\r\nThat's a gre",
  "Importance": "Normal",
  "ParentFolderId": "AQMkADA1MTAAAAIBDwAAAA==",
  "Sender": {
    "EmailAddress": {
      "Name": "Admin",
      "Address": "admin@contoso.onmicrosoft.com"
    }
  },
  "From": null,
  "ToRecipients": [
    {
      "EmailAddress": {
        "Name": "Fanny Downs",
        "Address": "fannyd@contoso.onmicrosoft.com"
      }
    }
  ],
  "CcRecipients": [ ],
  "BccRecipients": [ ],
  "ReplyTo": [ ],
  "ConversationId": "AAQkADA1MTVGjIwpLvWmGtIo-aFE=",
  "IsDeliveryReceiptRequested": false,
  "IsReadReceiptRequested": false,
  "IsRead": true,
  "IsDraft": true,
  "WebLink": "https://outlook.office.com/owa/?ItemID=AAMkADA1MTAAAH5JKoAAA%3D&exvsurl=1&viewmodel=ReadMessageItem",
  "MentionedMe": null,
  "AppliedHashtagsPreview": null,
  "LikesPreview": null,
  "MentionsPreview": null,
  "Mentioned": [ ],
  "InferenceClassification": "Focused",
  "UnsubscribeData": [ ],
  "UnsubscribeEnabled": false,
  "Flag": { "FlagStatus": "NotFlagged" }
}

Créez un brouillon pour la réponse au message spécifié. Vous pouvez ensuite mettre à jour le brouillon pour ajouter le contenu de la réponse à la propriété body ou modifier d’autres propriétés du message, ou simplement envoyer le brouillon.

POST https://outlook.office.com/api/v1.0/me/messages/{message_id}/createreply
Paramètre requisTypeDescription
Paramètres URL
message_idchaîneL'identifiant du message auquel répondre.

Exemple de requête

POST https://outlook.office.com/api/v1.0/me/messages/AAMkADA1MTAAAAqldOAAA=/createreply

Exemple de réponse

Status code: 201

{
  "@odata.context": "https://outlook.office.com/api/v1.0/$metadata#Me/Messages/$entity",
  "@odata.id": "https://outlook.office.com/api/v1.0/Users('86b6ceaf-57f7-4278-97c4-4da0a97f6cdb@70559e59-b378-49ea-8e53-07a3a3d27f5b')/Messages('AAMkADA1MTAAAH5JKoAAA=')",
  "@odata.etag": "W/\"CQAAABYAAADX8oL1Wa7jQbcPAHouCzswAAAH5/DO\"",
  "Id": "AAMkADA1MTAAAH5JKoAAA=",
  "CreatedDateTime": "2016-03-15T08:33:43Z",
  "LastModifiedDateTime": "2016-03-15T08:33:43Z",
  "ChangeKey": "CQAAABYAAADX8oL1Wa7jQbcPAHouCzswAAAH5/DO",
  "Categories": [ ],
  "ReceivedDateTime": "2016-03-15T08:33:43Z",
  "SentDateTime": "2016-03-15T08:33:43Z",
  "HasAttachments": false,
  "InternetMessageId": "<DM2PR00MB00571796B16132601E1F286CF7890@DM2PR00MB0057.namprd00.prod.outlook.com>",
  "Subject": "RE: Let's start a group",
  "Body": {
    "ContentType": "HTML",
    "Content": "<html>\r\n<body>Fanny, would you name the group if the project is approved, please?\r\n<b>From:</b> Fanny Downs<br>\r\n<b>Sent:</b> Friday, March 4, 2016 12:23:35 AM<br>\r\n<b>To:</b> Admin<br>\r\n<b>Subject:</b> Re: Let's start a group</font>\r\n<p>That's a great idea!<br>\r\n</body>\r\n</html>"
  },
  "BodyPreview": "Fanny, would you name the group if the project is approved, please?\r\n________________________________\r\nFrom: Fanny Downs\r\nSent: Friday, March 4, 2016 12:23:35 AM\r\nTo: Admin\r\nSubject: Re: Let's start a group\r\n\r\n\r\nThat's a gre",
  "Importance": "Normal",
  "ParentFolderId": "AQMkADA1MTAAAAIBDwAAAA==",
  "Sender": {
    "EmailAddress": {
      "Name": "Admin",
      "Address": "admin@contoso.onmicrosoft.com"
    }
  },
  "From": null,
  "ToRecipients": [
    {
      "EmailAddress": {
        "Name": "Fanny Downs",
        "Address": "fannyd@contoso.onmicrosoft.com"
      }
    }
  ],
  "CcRecipients": [ ],
  "BccRecipients": [ ],
  "ReplyTo": [ ],
  "ConversationId": "AAQkADA1MTVGjIwpLvWmGtIo-aFE=",
  "IsDeliveryReceiptRequested": false,
  "IsReadReceiptRequested": false,
  "IsRead": true,
  "IsDraft": true,
  "WebLink": "https://outlook.office.com/owa/?ItemID=AAMkADA1MTAAAH5JKoAAA%3D&exvsurl=1&viewmodel=ReadMessageItem",
  "MentionedMe": null,
  "AppliedHashtagsPreview": null,
  "LikesPreview": null,
  "MentionsPreview": null,
  "Mentioned": [ ],
  "InferenceClassification": "Focused",
  "UnsubscribeData": [ ],
  "UnsubscribeEnabled": false,
  "Flag": { "FlagStatus": "NotFlagged" }
}

Type de réponse

Le brouillon du message de réponse avec les propriétés ToRecipient, IsDraftet autres déjà pré-remplies.


Créer un brouillon de message de réponse à tous

Étendue minimale requise : l’une des suivantes :

Créez un brouillon du message de réponse à tous pour inclure un commentaire ou mettre à jour les propriétés du message en un seul appel CreateReplyAll. Vous pouvez ensuite envoyer le brouillon du message.

POST https://outlook.office.com/api/beta/me/messages/{message_id}/createreplyall
Paramètre requisTypeDescription
Paramètres URL
message_idchaîneL’identifiant du message auquel répondre à tous.
Paramètres de corps
CommentaireschaîneCommentaire à inclure. Peut être une chaîne vide.
MessageMessageToutes les propriétés modifiables à mettre à jour dans le message de réponse.

Remarque

  • Vous pouvez spécifier soit un commentaire, soit la propriété Body du paramètre Message. Spécifier les deux renverra une erreur HTTP 400 Bad Request.
  • Si ReplyTo est spécifié dans le message d’origine, selon le Internet Message Format (RFC 2822), vous devez envoyer la réponse aux destinataires dans les propriétés ReplyTo et ToRecipients, et non aux destinataires dans les propriétés From et ToRecipients.

Exemple de requête

L’exemple suivant crée un brouillon de réponse à tous, et ajoute une pièce jointe et un commentaire en un seul appel CreateReplyAll.

POST https://outlook.office.com/api/beta/me/messages/AAMkADA1MTAAAH5JaKAAA=/createreplyall
Content-Type: application/json

{
    "Message":{
      "Attachments": [ 
        { 
          "@odata.type": "#Microsoft.OutlookServices.FileAttachment", 
          "Name": "guidelines.txt", 
          "ContentBytes": "bWFjIGFuZCBjaGVlc2UgdG9kYXk=" 
        } 
      ]
    },
    "Comment": "if the project gets approved, please take a look at the attached guidelines before you decide on the name." 
}

Exemple de réponse

Status code: 201

{
  "@odata.context": "https://outlook.office.com/api/beta/$metadata#Me/Messages/$entity",
  "@odata.id": "https://outlook.office.com/api/beta/Users('86b6ceaf-57f7-4278-97c4-4da0a97f6cdb@70559e59-b378-49ea-8e53-07a3a3d27f5b')/Messages('AAMkADA1MTAAAH5JKpAAA=')",
  "@odata.etag": "W/\"CQAAABYAAADX8oL1Wa7jQbcPAHouCzswAAAH5/DP\"",
  "Id": "AAMkADA1MTAAAH5JKpAAA=",
  "CreatedDateTime": "2016-03-15T08:37:34Z",
  "LastModifiedDateTime": "2016-03-15T08:37:34Z",
  "ChangeKey": "CQAAABYAAADX8oL1Wa7jQbcPAHouCzswAAAH5/DP",
  "Categories": [ ],
  "ReceivedDateTime": "2016-03-15T08:37:34Z",
  "SentDateTime": "2016-03-15T08:37:34Z",
  "HasAttachments": true,
  "InternetMessageId": "<DM2PR00MB005732BE05BD669AC7CE056EF7890@DM2PR00MB0057.namprd00.prod.outlook.com>",
  "Subject": "RE: Let's start a group",
  "Body": {
    "ContentType": "HTML",
    "Content": "<html>\r\n<body dir=\"ltr\">\r\nif the project gets approved, please take a look at the attached guidelines before you decide on the name.\r\n<b>From:</b> Admin<br>\r\n<b>Sent:</b> Tuesday, March 15, 2016 6:36:32 AM<br>\r\n<b>To:</b> Fanny Downs; Randi Welch<br>\r\n<b>Subject:</b> RE: Let's start a group\r\n<div>Fanny, Randi, would you name the group please?\r\n<b>From:</b> Fanny Downs<br>\r\n<b>Sent:</b> Friday, March 4, 2016 12:23:35 AM<br>\r\n<b>To:</b> Admin<br>\r\n<b>Subject:</b> Re: Let's start a group</font>\r\n</body>\r\n</html>"
  },
  "BodyPreview": "if the project gets approved, please take a look at the attached guidelines before you decide on the name.\r\n________________________________\r\nFrom: Admin\r\nSent: Tuesday, March 15, 2016 6:36:32 AM\r\nTo: Fanny Downs; Randi Welch\r\nSubj",
  "Importance": "Normal",
  "ParentFolderId": "AQMkADA1MTAAAAIBDwAAAA==",
  "Sender": {
    "EmailAddress": {
      "Name": "Admin",
      "Address": "admin@contoso.onmicrosoft.com"
    }
  },
  "From": null,
  "ToRecipients": [
    {
      "EmailAddress": {
        "Name": "Fanny Downs",
        "Address": "fannyd@contoso.onmicrosoft.com"
      }
    },
    {
      "EmailAddress": {
        "Name": "Randi Welch",
        "Address": "randiw@contoso.onmicrosoft.com"
      }
    }
  ],
  "CcRecipients": [ ],
  "BccRecipients": [ ],
  "ReplyTo": [ ],
  "ConversationId": "AAQkADA1MTLvWmGtIo-aFE=",
  "ConversationIndex": "AQHRdar6akFxUaMjCku9aYa0ij9oUZ9IbLr7gBGx9qGAACHRQA==",
  "IsDeliveryReceiptRequested": false,
  "IsReadReceiptRequested": false,
  "IsRead": true,
  "IsDraft": true,
  "WebLink": "https://outlook.office.com/owa/?ItemID=AAMkADA1MTAAAH5JKpAAA%3D&exvsurl=1&viewmodel=ReadMessageItem",
  "MentionedMe": null,
  "AppliedHashtagsPreview": null,
  "LikesPreview": null,
  "MentionsPreview": null,
  "Mentioned": [ ],
  "InferenceClassification": "Focused",
  "UnsubscribeData": [ ],
  "UnsubscribeEnabled": false,
  "Flag": { "FlagStatus": "NotFlagged" }
}

Créez un brouillon pour répondre à l’expéditeur et à tous les destinataires du message spécifié. Vous pouvez ensuite mettre à jour le brouillon pour ajouter du contenu de réponse au corps ou modifier d’autres propriétés du message, ou simplement envoyer le brouillon.

POST https://outlook.office.com/api/v2.0/me/messages/{message_id}/createreplyall
Paramètre requisTypeDescription
Paramètres URL
message_idchaîneL'identifiant du message auquel répondre.

Exemple de requête

POST https://outlook.office.com/api/v2.0/me/messages/AAMkAGE0Mz8DmAAA=/createreplyall

Exemple de réponse

Status code: 201

{
  "@odata.context": "https://outlook.office.com/api/v2.0/$metadata#Me/Messages/$entity",
  "@odata.id": "https://outlook.office.com/api/v2.0/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/Messages('AAMkAGE0Mz7k5AAA=')",
  "@odata.etag": "W/\"CQAAABYAAAAmP1Ln1wcHRariNdTMGAO9AAAS0AhF\"",
  "Id": "AAMkAGE0Mz7k5AAA=",
  "ChangeKey": "CQAAABYAAAAmP1Ln1wcHRariNdTMGAO9AAAS0AhF",
  "Categories": [],
  "CreatedDateTime": "2014-10-18T21:21:06Z",
  "LastModifiedDateTime": "2014-10-18T21:21:06Z",
  "Subject": "RE: Check out the new Office 365 APIs",
  "BodyPreview": "If the project gets approved, please decide on the name.\r\n_________________________________\r\nFrom: Alex D\r\nSent: Saturday, October 18, 2014 9:18:18 PM\r\nTo: Katie Jordan; Garth Fort\r\nSubj",
  "Body": {
    "ContentType": "HTML",
    "Content": "<html>\r\n...</html>\r\n"
  },
  "Importance": "Normal",
  "HasAttachments": false,
  "ParentFolderId": "AAMkAGE0MAAEPAAA=",
  "From": null,
  "Sender": {
    "EmailAddress": {
      "Address": "alexd@a830edad9050849NDA1.onmicrosoft.com",
      "Name": "Alex D"
    }
  },
  "ToRecipients": [
    {
      "EmailAddress": {
        "Address": "katiej@a830edad9050849NDA1.onmicrosoft.com",
        "Name": "Katie Jordan"
      }
    },
    {
      "EmailAddress": {
        "Address": "garthf@a830edad9050849NDA1.onmicrosoft.com",
        "Name": "Garth Fort"
      }
    }
  ],
  "CcRecipients": [],
  "BccRecipients": [],
  "ReplyTo": [],
  "ConversationId": "AAQkAGE0M3HbTkEU=",
  "ReceivedDateTime": "2014-10-18T21:21:06Z",
  "SentDateTime": "2014-10-18T21:21:06Z",
  "IsDeliveryReceiptRequested": false,
  "IsReadReceiptRequested": false,
  "IsDraft": true,
  "IsRead": true
}

Créez un brouillon pour répondre à l’expéditeur et à tous les destinataires du message spécifié. Vous pouvez ensuite mettre à jour le brouillon pour ajouter du contenu de réponse au corps ou modifier d’autres propriétés du message, ou simplement envoyer le brouillon.

POST https://outlook.office.com/api/v1.0/me/messages/{message_id}/createreplyall
Paramètre requisTypeDescription
Paramètres URL
message_idchaîneL'identifiant du message auquel répondre.

Exemple de requête

POST https://outlook.office.com/api/v1.0/me/messages/AAMkAGE0Mz8DmAAA=/createreplyall

Exemple de réponse

Status code: 201

{
  "@odata.context": "https://outlook.office.com/api/v1.0/$metadata#Me/Messages/$entity",
  "@odata.id": "https://outlook.office.com/api/v1.0/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/Messages('AAMkAGE0Mz7k5AAA=')",
  "@odata.etag": "W/\"CQAAABYAAAAmP1Ln1wcHRariNdTMGAO9AAAS0AhF\"",
  "Id": "AAMkAGE0Mz7k5AAA=",
  "ChangeKey": "CQAAABYAAAAmP1Ln1wcHRariNdTMGAO9AAAS0AhF",
  "Categories": [],
  "CreatedDateTime": "2014-10-18T21:21:06Z",
  "LastModifiedDateTime": "2014-10-18T21:21:06Z",
  "Subject": "RE: Check out the new Office 365 APIs",
  "BodyPreview": "If the project gets approved, please decide on the name.\r\n_________________________________\r\nFrom: Alex D\r\nSent: Saturday, October 18, 2014 9:18:18 PM\r\nTo: Katie Jordan; Garth Fort\r\nSubj",
  "Body": {
    "ContentType": "HTML",
    "Content": "<html>\r\n...</html>\r\n"
  },
  "Importance": "Normal",
  "HasAttachments": false,
  "ParentFolderId": "AAMkAGE0MAAEPAAA=",
  "From": null,
  "Sender": {
    "EmailAddress": {
      "Address": "alexd@a830edad9050849NDA1.onmicrosoft.com",
      "Name": "Alex D"
    }
  },
  "ToRecipients": [
    {
      "EmailAddress": {
        "Address": "katiej@a830edad9050849NDA1.onmicrosoft.com",
        "Name": "Katie Jordan"
      }
    },
    {
      "EmailAddress": {
        "Address": "garthf@a830edad9050849NDA1.onmicrosoft.com",
        "Name": "Garth Fort"
      }
    }
  ],
  "CcRecipients": [],
  "BccRecipients": [],
  "ReplyTo": [],
  "ConversationId": "AAQkAGE0M3HbTkEU=",
  "ReceivedDateTime": "2014-10-18T21:21:06Z",
  "SentDateTime": "2014-10-18T21:21:06Z",
  "IsDeliveryReceiptRequested": false,
  "IsReadReceiptRequested": false,
  "IsDraft": true,
  "IsRead": true
}

Type de réponse

Le brouillon du message de réponse à tous avec les propriétés ToRecipient, IsDraftet autres déjà pré-remplies.


Transférer des nouveaux messages ou des brouillons

Remarque Le comportement des opérations dans cette section varie selon la version. En savoir plus en choisissant une version dans le coin supérieur droit de la page.

Vous pouvez transférer un message, ajouter un commentaire ou mettre à jour les propriétés du message en un seul appel. Vous pouvez également créer d’abord un brouillon et mettre à jour les propriétés du message en un seul appel, puis envoyer le brouillon.

Vous pouvez transférer un message directement, ou vous pouvez créer un brouillon de message transféré, le mettre à jour et l’envoyer.

Vous pouvez transférer un message directement, ou vous pouvez créer un brouillon de message transféré, le mettre à jour et l’envoyer.

Transférer un message directement | Créer un message Transfert

Transférer un message directement

Étendue minimale requise : l’une des suivantes :

Transférez un message, ajoutez un commentaire ou modifiez les propriétés pouvant être mises à jour en un seul appel Forward. Le message est enregistré dans le dossier Éléments envoyés.

Vous pouvez également commencer par créer un brouillon de message transféré pour inclure un commentaire ou mettre à jour les propriétés du message, puis envoyer la réponse.

POST https://outlook.office.com/api/beta/me/messages/{message_id}/forward
Paramètre requisTypeDescription
Paramètres URL
message_idchaîneL’ID du message à transférer.
Paramètres de corps
CommentaireschaîneCommentaire à inclure. Peut être une chaîne vide.
ToRecipientsCollection(Recipient)La liste des destinataires.
MessageMessageToutes les propriétés modifiables à mettre à jour dans le message de réponse.

Remarque

  • Vous pouvez spécifier soit un commentaire, soit la propriété Body du paramètre Message. Spécifier les deux renverra une erreur HTTP 400 Bad Request.
  • Vous devez spécifier soit le paramètre ToRecipients soit la propriété ToRecipients du paramètre Message. Spécifier les deux ou n’en spécifier aucun renverra une erreur HTTP 400 Bad Request.

Exemple de requête

L'exemple suivant donne à la propriété IsDeliveryReceiptRequested la valeur true, ajoute un commentaire et transmet le message.

POST https://outlook.office.com/api/beta/me/messages/AAMkADA1MTAAAH5JaLAAA=/forward
Content-Type: application/json

{
  "Message":{  
    "IsDeliveryReceiptRequested": true,
    "ToRecipients":[
      {
        "EmailAddress": {
          "Address":"danas@contoso.onmicrosoft.com",
          "Name":"Dana Swope"
        }
      }
     ]
  },
  "Comment": "Dana, just want to make sure you get this." 
}

Exemple de réponse

Status code: 202

Transférez un message en utilisant la méthode Forward et éventuellement en spécifiant un commentaire. Le message est enregistré dans le dossier Éléments envoyés.

Si vous avez besoin de modifier une propriété modifiable dans le message à transmettre, vous pouvez également commencer par créer un brouillon de message à transférer, mettre à jour les propriétés du message, puis envoyer la réponse.

POST https://outlook.office.com/api/v2.0/me/messages/{message_id}/forward
Paramètre requisTypeDescription
Paramètres URL
message_idchaîneL’ID du message à transférer.
Paramètres de corps
CommentaireschaîneCommentaire à inclure. Peut être une chaîne vide.
ToRecipientsCollection(Recipient)La liste des destinataires.

Spécifiez les paramètres Comment et ToRecipients dans le corps de la requête.

Exemple de requête

POST https://outlook.office.com/api/v2.0/me/messages/AAMkAGE0Mz8DmAAA=/forward
Content-Type: application/json

{
  "Comment": "FYI",
  "ToRecipients": [
    {
      "EmailAddress": {
        "Address": "katiej@a830edad9050849NDA1.onmicrosoft.com"
      }
    },
    {
      "EmailAddress": {
        "Address": "garthf@a830edad9050849NDA1.onmicrosoft.com"
      }
    }
  ]
}

Exemple de réponse

Status code: 202

Transférez un message en utilisant la méthode Forward et éventuellement en spécifiant un commentaire. Le message est enregistré dans le dossier Éléments envoyés.

Si vous avez besoin de modifier une propriété modifiable dans le message à transmettre, vous pouvez également commencer par créer un brouillon de message à transférer, mettre à jour les propriétés du message, puis envoyer la réponse.

POST https://outlook.office.com/api/v1.0/me/messages/{message_id}/forward
Paramètre requisTypeDescription
Paramètres URL
message_idchaîneL’ID du message à transférer.
Paramètres de corps
CommentaireschaîneCommentaire à inclure. Peut être une chaîne vide.
ToRecipientsCollection(Recipient)La liste des destinataires.

Spécifiez les paramètres Comment et ToRecipients dans le corps de la requête.

Exemple de requête

POST https://outlook.office.com/api/v1.0/me/messages/AAMkAGE0Mz8DmAAA=/forward
Content-Type: application/json

{
  "Comment": "FYI",
  "ToRecipients": [
    {
      "EmailAddress": {
        "Address": "katiej@a830edad9050849NDA1.onmicrosoft.com"
      }
    },
    {
      "EmailAddress": {
        "Address": "garthf@a830edad9050849NDA1.onmicrosoft.com"
      }
    }
  ]
}

Exemple de réponse

Status code: 202

Créer un brouillon de message de transfert

Étendue minimale requise : l’une des suivantes :

Créer un brouillon de message de transfert pour inclure un commentaire ou mettre à jour les propriétés du message en un seul appel CreateForward. Vous pouvez ensuite envoyer le brouillon du message.

POST https://outlook.office.com/api/v1.0/me/messages/{message_id}/createforward
Paramètre requisTypeDescription
Paramètres URL
message_idchaîneL’ID du message à transférer.
Paramètres de corps
CommentaireschaîneCommentaire à inclure. Peut être une chaîne vide.
ToRecipientsCollection(Recipient)La liste des destinataires.
MessageMessageToutes les propriétés modifiables à mettre à jour dans le message de réponse.

Remarque

  • Vous pouvez spécifier soit un commentaire, soit la propriété Body du paramètre Message. Spécifier les deux renverra une erreur HTTP 400 Bad Request.
  • Vous devez spécifier soit le paramètre ToRecipients soit la propriété ToRecipients du paramètre Message. Spécifier les deux ou n’en spécifier aucun renverra une erreur HTTP 400 Bad Request.

Exemple de requête

POST https://outlook.office.com/api/beta/me/messages/AAMkADA1MTAAAH5JaLAAA=/createforward
Content-Type: application/json

{
  "Message":{  
    "IsDeliveryReceiptRequested": true,
    "ToRecipients":[
      {
        "EmailAddress": {
          "Address":"danas@contoso.onmicrosoft.com",
          "Name":"Dana Swope"
        }
      }
     ]
  },
  "Comment": "Dana, just want to make sure you get this; you'll need this if the project gets approved." 
}

Exemple de réponse

Status code: 201

{
  "@odata.context": "https://outlook.office.com/api/beta/$metadata#Me/Messages/$entity",
  "@odata.id": "https://outlook.office.com/api/beta/Users('86b6ceaf-57f7-4278-97c4-4da0a97f6cdb@70559e59-b378-49ea-8e53-07a3a3d27f5b')/Messages('AAMkADA1MTAAAH5JKqAAA=')",
  "@odata.etag": "W/\"CQAAABYAAADX8oL1Wa7jQbcPAHouCzswAAAH5/DQ\"",
  "Id": "AAMkADA1MTAAAH5JKqAAA=",
  "CreatedDateTime": "2016-03-15T08:42:10Z",
  "LastModifiedDateTime": "2016-03-15T08:42:10Z",
  "ChangeKey": "CQAAABYAAADX8oL1Wa7jQbcPAHouCzswAAAH5/DQ",
  "Categories": [ ],
  "ReceivedDateTime": "2016-03-15T08:42:10Z",
  "SentDateTime": "2016-03-15T08:42:10Z",
  "HasAttachments": true,
  "InternetMessageId": "<DM2PR00MB0057E0EBC90EF37FC9233941F7890@DM2PR00MB0057.namprd00.prod.outlook.com>",
  "Subject": "FW: Let's start a group",
  "Body": {
    "ContentType": "HTML",
    "Content": "<html>\r\n<body>\r\nDana, just want to make sure you get this; you'll need this if the project gets approved.\r\n<b>From:</b> Admin<br>\r\n<b>Sent:</b> Tuesday, March 15, 2016 6:47:54 AM<br>\r\n<b>To:</b> Fanny Downs; Randi Welch<br>\r\n<b>Subject:</b> RE: Let's start a group</body>\r\n</html>\r\n"
  },
  "BodyPreview": "Dana, just want to make sure you get this; you'll need this if the project gets approved.\r\n________________________________\r\nFrom: Admin\r\nSent: Tuesday, March 15, 2016 6:47:54 AM\r\nTo: Fanny Downs; Randi Welch\r\nSubject: RE: Let's st",
  "Importance": "Normal",
  "ParentFolderId": "AQMkADA1MTAAAAIBDwAAAA==",
  "Sender": {
    "EmailAddress": {
      "Name": "Admin",
      "Address": "admin@contoso.onmicrosoft.com"
    }
  },
  "From": null,
  "ToRecipients": [
    {
      "EmailAddress": {
        "Name": "Dana Swope",
        "Address": "danas@contoso.onmicrosoft.com"
      }
    }
  ],
  "CcRecipients": [ ],
  "BccRecipients": [ ],
  "ReplyTo": [ ],
  "ConversationId": "AAQkADA1MTLvWmGtIo-aFE=",
  "ConversationIndex": "AQHRdar6akFxUaMjCku9aYa0ij9oUZ9IbLr7gBGx9qGAAAMtlIAAH+3c",
  "IsDeliveryReceiptRequested": true,
  "IsReadReceiptRequested": false,
  "IsRead": true,
  "IsDraft": true,
  "WebLink": "https://outlook.office.com/owa/?ItemID=AAMkADA1MTAAAH5JKqAAA%3D&exvsurl=1&viewmodel=ReadMessageItem",
  "MentionedMe": null,
  "AppliedHashtagsPreview": null,
  "LikesPreview": null,
  "MentionsPreview": null,
  "Mentioned": [ ],
  "InferenceClassification": "Focused",
  "UnsubscribeData": [ ],
  "UnsubscribeEnabled": false,
  "Flag": { "FlagStatus": "NotFlagged" }
}

Créez un brouillon pour transférer le message spécifié. Vous pouvez ensuite mettre à jour le brouillon pour ajouter du contenu au body ou modifier d’autres propriétés du message, ou simplement envoyer le brouillon.

POST https://outlook.office.com/api/v2.0/me/messages/{message_id}/createforward
Paramètre requisTypeDescription
Paramètres URL
message_idchaîneL’ID du message à transférer.

Exemple de requête

POST https://outlook.office.com/api/v2.0/me/messages/AAMkAGE0Mz8DmAAA=/createforward

Exemple de réponse

Status code: 201

{
  "@odata.context": "https://outlook.office.com/api/v2.0/$metadata#Me/Messages/$entity",
  "@odata.id": "https://outlook.office.com/api/v2.0/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/Messages('AAMkAGE0Mz7k6AAA=')",
  "@odata.etag": "W/\"CQAAABYAAAAmP1Ln1wcHRariNdTMGAO9AAAS0AhG\"",
  "Id": "AAMkAGE0Mz7k6AAA=",
  "ChangeKey": "CQAAABYAAAAmP1Ln1wcHRariNdTMGAO9AAAS0AhG",
  "Categories": [],
  "CreatedDateTime": "2016-03-15T08:42:10Z",
  "LastModifiedDateTime": "2016-03-15T08:42:10Z",
  "Subject": "FW: Let's start a group",
  "BodyPreview": "Dana, just want to make sure you get this.\r\n________________________________\r\nFrom: Admin\r\nSent: Tuesday, March 15, 2016 6:47:54 AM\r\nTo: Fanny Downs; Randi Welch\r\nSubject: RE: Let's st",
  "Body": {
    "ContentType": "HTML",
    "Content": "<html>\r\n...</html>\r\n"
  },
  "Importance": "Normal",
  "HasAttachments": false,
  "ParentFolderId": "AAMkAGE0MAAEPAAA=",
  "From": null,
  "Sender": {
    "EmailAddress": {
      "Address": "'alexd@contoso.onmicrosoft.com'",
      "Name": "Alex D"
    }
  },
  "ToRecipients": [],
  "CcRecipients": [],
  "BccRecipients": [],
  "ReplyTo": [],
  "ConversationId": "AAQkAGE0M3HbTkEU=",
  "ReceivedDateTime": "2016-03-15T08:42:10Z",
  "SentDateTime": "2016-03-15T08:42:10Z",
  "IsDeliveryReceiptRequested": false,
  "IsReadReceiptRequested": false,
  "IsDraft": true,
  "IsRead": true
}

Créez un brouillon pour transférer le message spécifié. Vous pouvez ensuite mettre à jour le brouillon pour ajouter du contenu au body ou modifier d’autres propriétés du message, ou simplement envoyer le brouillon.

POST https://outlook.office.com/api/v1.0/me/messages/{message_id}/createforward
Paramètre requisTypeDescription
Paramètres URL
message_idchaîneL’ID du message à transférer.

Exemple de requête

POST https://outlook.office.com/api/v1.0/me/messages/AAMkAGE0Mz8DmAAA=/createforward

Exemple de réponse

Status code: 201

{
  "@odata.context": "https://outlook.office.com/api/v1.0/$metadata#Me/Messages/$entity",
  "@odata.id": "https://outlook.office.com/api/v1.0/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/Messages('AAMkAGE0Mz7k6AAA=')",
  "@odata.etag": "W/\"CQAAABYAAAAmP1Ln1wcHRariNdTMGAO9AAAS0AhG\"",
  "Id": "AAMkAGE0Mz7k6AAA=",
  "ChangeKey": "CQAAABYAAAAmP1Ln1wcHRariNdTMGAO9AAAS0AhG",
  "Categories": [],
  "CreatedDateTime": "2016-03-15T08:42:10Z",
  "LastModifiedDateTime": "2016-03-15T08:42:10Z",
  "Subject": "FW: Let's start a group",
  "BodyPreview": "Dana, just want to make sure you get this.\r\n________________________________\r\nFrom: Admin\r\nSent: Tuesday, March 15, 2016 6:47:54 AM\r\nTo: Fanny Downs; Randi Welch\r\nSubject: RE: Let's st",
  "Body": {
    "ContentType": "HTML",
    "Content": "<html>\r\n...</html>\r\n"
  },
  "Importance": "Normal",
  "HasAttachments": false,
  "ParentFolderId": "AAMkAGE0MAAEPAAA=",
  "From": null,
  "Sender": {
    "EmailAddress": {
      "Address": "'alexd@contoso.onmicrosoft.com'",
      "Name": "Alex D"
    }
  },
  "ToRecipients": [],
  "CcRecipients": [],
  "BccRecipients": [],
  "ReplyTo": [],
  "ConversationId": "AAQkAGE0M3HbTkEU=",
  "ReceivedDateTime": "2016-03-15T08:42:10Z",
  "SentDateTime": "2016-03-15T08:42:10Z",
  "IsDeliveryReceiptRequested": false,
  "IsReadReceiptRequested": false,
  "IsDraft": true,
  "IsRead": true
}

Type de réponse

Le brouillon du message transfert avec la propriété IsDraft et les autres propriétés appropriées pré-remplies.


Mettre à jour les messages

Modifiez les propriétés modifiables d’un message et enregistrez les modifications.

Mettre à jour un message

Mettre à jour un message

Étendue minimale requise : l’une des suivantes :

Modifiez les propriétés modifiables d’un brouillon ou d’un message existant. Seules les propriétés que vous spécifiez sont modifiées.

PATCH https://outlook.office.com/api/beta/me/messages/{message_id}
Paramètre requisTypeDescription
Paramètres URL
message_idchaîneL’ID du message à mettre à jour.

Spécifiez une ou plusieurs propriétés message modifiables dans le corps de la requête.

Exemple de requête

L’exemple de requête suivant définit deux catégories sur un message électronique et marque le message avec un début et une date d’échéance.

Note : Si le FlagStatus est défini sur Flagged, la propriété Flag.CompletedDate ne doit pas être définie.

PATCH https://outlook.office.com/api/beta/me/messages/AAMkAGE0Mz8S-AAA=
Content-Type: application/json

{
  "Categories": [
    "Orange category",
    "Green category"
  ],
  "IsRead": true,
  "Flag": {
    "FlagStatus": "Flagged",
      DueDateTime": {
      "DateTime": "2017-12-22T08:00:00.0000000",
      "TimeZone": "UTC"
    },
    "StartDateTime": {
      "DateTime": "2017-12-18T08:00:00.0000000",
      "TimeZone": "UTC"
    }
  }
}

Exemple de réponse

Status code: 200


{
  "@odata.context": "https://outlook.office.com/api/beta/$metadata#Me/Messages/$entity",
  "@odata.id": "https://outlook.office.com/api/beta/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/Messages('AAMkAGE0Mz8S-AAA=')",
  "@odata.etag": "W/\"CQAAABYAAAAmP1Ln1wcHRariNdTMGAO9AAAS0AIP\"",
  "Id": "AAMkAGE0Mz8S-AAA=",
  "ChangeKey": "CQAAABYAAAAmP1Ln1wcHRariNdTMGAO9AAAS0AIP",
  "InternetMessageId": "SN2PR00M@SN2.namprd00.prod.outlook.com",
  "Categories": [
    "Orange category",
    "Green category"
  ],
  "CreatedDateTime": "2014-10-17T17:12:15Z",
  "LastModifiedDateTime": "2014-10-19T03:24:35Z",
  "Subject": "Meeting notes from today",
  "BodyPreview": "See attached",
  "Body": {
    "ContentType": "HTML",
    "Content": "<html>\r\n...</html>\r\n"
  },
  "Importance": "Normal",
  "HasAttachments": true,
  "ParentFolderId": "AAMkAGE0MAAEMAAA=",
  "From": {
    "EmailAddress": {
      "Address": "alexd@a830edad9050849NDA1.onmicrosoft.com",
      "Name": "Alex D"
    }
  },
  "Sender": {
    "EmailAddress": {
      "Address": "alexd@a830edad9050849NDA1.onmicrosoft.com",
      "Name": "Alex D"
    }
  },
  "ToRecipients": [
    {
      "EmailAddress": {
        "Address": "katiej@a830edad9050849NDA1.onmicrosoft.com",
        "Name": "Katie Jordan"
      }
    }
  ],
  "CcRecipients": [],
  "BccRecipients": [],
  "ReplyTo": [],
  "ConversationId": "AAQkAGE0Mip-qvhs=",
  "ConversationIndex": "AQHRh5tqrkAcds2kw==",
  "ReceivedDateTime": "2014-10-17T17:12:15Z",
  "SentDateTime": "2014-10-17T17:12:12Z",
  "IsDeliveryReceiptRequested": false,
  "IsReadReceiptRequested": false,
  "IsDraft": false,
  "IsRead": true,
  "Flag": {
    "FlagStatus": "Flagged",
    "DueDateTime": {
      "DateTime": "2017-12-22T08:00:00.0000000",
      "TimeZone": "UTC"
    },
    "StartDateTime": {
      "DateTime": "2017-12-18T08:00:00.0000000",
      "TimeZone": "UTC"
    }
  }
}

Exemple de requête

Les exemples de requêtes suivants marquent un message électronique précédemment marqué comme complet

PATCH https://outlook.office.com/api/beta/me/messages/AAMkADk0MGFkODE3LWE4MmYtNDRhOS04OGQxLTM4NzJkSLkRkXbBznTvAAEwgCZNAAA= 
Content-Type: application/json; charset=utf-8
Content-Length: 164


{
  "Flag": {
    "CompletedDateTime":{
      "DateTime": "2018-02-05T18:00:00",
      "TimeZone": "Pacific Standard Time"
    },
    "FlagStatus": "Complete"
  }
}

Exemple de réponse

HTTP/1.1 200 OK


{
    "Id": "AAMkADk0MGFkODE3LWE4MmYtNDRhOS04OGQxLTM4NzJkSLkRkXbBznTvAAEwgCZNAAA=",
    "CreatedDateTime": "2017-12-15T22:11:41Z",
    "LastModifiedDateTime": "2017-12-16T00:49:44Z",
    "ChangeKey": "CQAAABYAAABmngqUDhbeSLkRkXbBznTvAAEw/ThM",
    "Categories": [],
    "ReceivedDateTime": "2017-12-15T22:11:41Z",
    "SentDateTime": "2017-12-15T22:11:36Z",
    "HasAttachments": false,
    "InternetMessageId": "<e711230d-d066-469e-a128-c429c5789d97@SINGMEHUB02.gme.gbl>",
    "Subject": "An agent sent you a message in Microsoft Teams",
    "BodyPreview": "Hi John,\r\nYou're missing all the action in Microsoft Teams\r\n\r\n\r\nAn agent\r\nSent a new message to your chat\r\n\r\n         Open Microsoft Teams\r\n\r\nRather not receive these emails? Click your profile picture, select Options and then Notificatio",
    "Importance": "Normal",
    "ParentFolderId": "AAMkADk0MGFkODE3LWE4MmYtNDRhOS04OGQxLTM4NzJkNzQ0NWVlMgAuAAAAAAB79HWXBjsTRocnYZpOfEpCAQCHGmLqkYhISaO_lSymODLQABa6L5YsAAA=",
    "ConversationId": "AAQkADk0MGFkODE3LWE4MmYtNDRhOS04OGQxLTM4NzJkNzQ0NWVlMgAQAPQcMVQTnE5Aql13YD1jbQw=",
    "ConversationIndex": "AQHTdfGv9BwxVBOcTkCqXXdgPWNtDA==",
    "IsDeliveryReceiptRequested": null,
    "IsReadReceiptRequested": false,
    "IsRead": true,
    "IsDraft": false,
    "WebLink": "https://outlook.office365.com/owa/?ItemID=AAMkADTvAAEwgCZNAAA%3D&exvsurl=1&viewmodel=ReadMessageItem",
    "InferenceClassification": "Other",
    "UnsubscribeData": [],
    "UnsubscribeEnabled": false,
    "Body": {
        "ContentType": "HTML",
        "Content": "<html style=\"font-family:'Segoe UI',Tahoma,Geneva,Verdana,sans-serif; font-size:18px\"></html>\r\n"
    },
    "Sender": {
        "EmailAddress": {
            "Name": "Microsoft Teams",
            "Address": "noreply@email.teams.microsoft.com"
        }
    },
    "From": {
        "EmailAddress": {
            "Name": "Microsoft Teams",
            "Address": "noreply@email.teams.microsoft.com"
        }
    },
    "ToRecipients": [
        {
            "EmailAddress": {
                "Name": "John",
                "Address": "john@contoso.com"
            }
        }
    ],
    "CcRecipients": [],
    "BccRecipients": [],
    "ReplyTo": [],
    "MentionsPreview": null,
    "Flag": {
        "FlagStatus": "Complete",
        "CompletedDateTime": {
            "DateTime": "2018-02-06T00:00:00.0000000",
            "TimeZone": "UTC"
        }
    }
}
PATCH https://outlook.office.com/api/v2.0/me/messages/{message_id}
Paramètre requisTypeDescription
Paramètres URL
message_idchaîneL’ID du message à mettre à jour.

Spécifiez une ou plusieurs propriétés message modifiables dans le corps de la requête.

Exemple de requête

PATCH https://outlook.office.com/api/v2.0/me/messages/AAMkAGE0Mz8S-AAA=
Content-Type: application/json

{
  "Categories": [
    "Orange category",
    "Green category"
  ],
  "IsRead": true
}

Exemple de réponse

Status code: 200


{
  "@odata.context": "https://outlook.office.com/api/v2.0/$metadata#Me/Messages/$entity",
  "@odata.id": "https://outlook.office.com/api/v2.0/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/Messages('AAMkAGE0Mz8S-AAA=')",
  "@odata.etag": "W/\"CQAAABYAAAAmP1Ln1wcHRariNdTMGAO9AAAS0AIP\"",
  "Id": "AAMkAGE0Mz8S-AAA=",
  "ChangeKey": "CQAAABYAAAAmP1Ln1wcHRariNdTMGAO9AAAS0AIP",
  "Categories": [
    "Orange category",
    "Green category"
  ],
  "CreatedDateTime": "2014-10-17T17:12:15Z",
  "LastModifiedDateTime": "2014-10-19T03:24:35Z",
  "Subject": "Meeting notes from today",
  "BodyPreview": "See attached",
  "Body": {
    "ContentType": "HTML",
    "Content": "<html>\r\n...</html>\r\n"
  },
  "Importance": "Normal",
  "HasAttachments": true,
  "ParentFolderId": "AAMkAGE0MAAEMAAA=",
  "From": {
    "EmailAddress": {
      "Address": "alexd@a830edad9050849NDA1.onmicrosoft.com",
      "Name": "Alex D"
    }
  },
  "Sender": {
    "EmailAddress": {
      "Address": "alexd@a830edad9050849NDA1.onmicrosoft.com",
      "Name": "Alex D"
    }
  },
  "ToRecipients": [
    {
      "EmailAddress": {
        "Address": "katiej@a830edad9050849NDA1.onmicrosoft.com",
        "Name": "Katie Jordan"
      }
    }
  ],
  "CcRecipients": [],
  "BccRecipients": [],
  "ReplyTo": [],
  "ConversationId": "AAQkAGE0Mip-qvhs=",
  "ReceivedDateTime": "2014-10-17T17:12:15Z",
  "SentDateTime": "2014-10-17T17:12:12Z",
  "IsDeliveryReceiptRequested": false,
  "IsReadReceiptRequested": false,
  "IsDraft": false,
  "IsRead": true
}
PATCH https://outlook.office.com/api/v1.0/me/messages/{message_id}
Paramètre requisTypeDescription
Paramètres URL
message_idchaîneL’ID du message à mettre à jour.

Spécifiez une ou plusieurs propriétés message modifiables dans le corps de la requête.

Exemple de requête

PATCH https://outlook.office.com/api/v1.0/me/messages/AAMkAGE0MGM1Y2M5LWEzMmUtNGVlNy05MjRlLTk0YmJjYzVkN2I5MABGAAAAAAC_0WfqSjt_SqLtNkuO-bj1BwAmP1Ln1wcHRariNdTMGAO9AAAAAAEMAAAmP1Ln1wcHRariNdTMGAO9AAASz8S-AAA=
Content-Type: application/json
{
  "Categories": [
    "Orange category",
    "Green category"
  ],
  "IsRead": true
}

Exemple de réponse

Code d’état : 200

{
  "@odata.context": "https://outlook.office.com/api/v1.0/$metadata#Me/Messages/$entity",
  "@odata.id": "https://outlook.office.com/api/v1.0/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/Events('AAMkAGE4v1RAAA=')",
  "@odata.etag": "W/\"CQAAABYAAAAmP1Ln1wcHRariNdTMGAO9AAAS0AIP\"",
  "Id": "AAMkAGE0MGM1Y2M5LWEzMmUtNGVlNy05MjRlLTk0YmJjYzVkN2I5MABGAAAAAAC_0WfqSjt_SqLtNkuO-bj1BwAmP1Ln1wcHRariNdTMGAO9AAAAAAEMAAAmP1Ln1wcHRariNdTMGAO9AAASz8S-AAA=",
  "ChangeKey": "CQAAABYAAAAmP1Ln1wcHRariNdTMGAO9AAAS0AIP",
  "Categories": [
    "Orange category",
    "Green category"
  ],
  "DateTimeCreated": "2014-10-17T17:12:15Z",
  "DateTimeLastModified": "2014-10-19T03:24:35Z",
  "Subject": "Meeting notes from today",
  "BodyPreview": "See attached",
  "Body": {
    "ContentType": "HTML",
    "Content": "<html>\r\n<head>\r\n<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\">\r\n<style type=\"text/css\" style=\"display:none\"><!-- p { margin-top: 0px; margin-bottom: 0px; }--></style>\r\n</head>\r\n<body dir=\"ltr\">\r\n<div id=\"divtagdefaultwrapper\" style=\"color: rgb(0, 0, 0); font-family: Calibri,Arial,Helvetica,sans-serif; font-size: 12pt; background-color: rgb(255, 255, 255);\">\r\n<p>See attached</p>\r\n</div>\r\n</body>\r\n</html>\r\n"
  },
  "Importance": "Normal",
  "HasAttachments": true,
  "ParentFolderId": "AAMkAGE0MGM1Y2M5LWEzMmUtNGVlNy05MjRlLTk0YmJjYzVkN2I5MAAuAAAAAAC_0WfqSjt_SqLtNkuO-bj1AQAmP1Ln1wcHRariNdTMGAO9AAAAAAEMAAA=",
  "From": {
    "EmailAddress": {
      "Address": "alexd@a830edad9050849NDA1.onmicrosoft.com",
      "Name": "Alex D"
    }
  },
  "Sender": {
    "EmailAddress": {
      "Address": "alexd@a830edad9050849NDA1.onmicrosoft.com",
      "Name": "Alex D"
    }
  },
  "ToRecipients": [
    {
      "EmailAddress": {
        "Address": "katiej@a830edad9050849NDA1.onmicrosoft.com",
        "Name": "Katie Jordan"
      }
    }
  ],
  "CcRecipients": [],
  "BccRecipients": [],
  "ReplyTo": [],
  "ConversationId": "AAQkAGE0MGM1Y2M5LWEzMmUtNGVlNy05MjRlLTk0YmJjYzVkN2I5MAAQANKneItHNYxNlwnKip-qvhs=",
  "DateTimeReceived": "2014-10-17T17:12:15Z",
  "DateTimeSent": "2014-10-17T17:12:12Z",
  "IsDeliveryReceiptRequested": false,
  "IsReadReceiptRequested": false,
  "IsDraft": false,
  "IsRead": true
}

Type de réponse

Le message mis à jour.


Supprimer des messages

Supprimer un message.

Remarque Soyez prudent lorsque vous supprimez des messages. La récupération des contenus supprimés peut être impossible. Pour en savoir plus, voir Suppression d’éléments.

Supprimer un message

Supprimer un message

Étendue minimale requise : l’une des suivantes :

DELETE https://outlook.office.com/api/beta/me/messages/{message_id}
Paramètre requisTypeDescription
Paramètres URL
message_idchaîneL’ID du message à supprimer.

Exemple de requête

DELETE https://outlook.office.com/api/beta/me/messages/AAMkAGE0Mz8TBAAA=

Exemple de réponse

Status code: 204
DELETE https://outlook.office.com/api/v2.0/me/messages/{message_id}
Paramètre requisTypeDescription
Paramètres URL
message_idchaîneL’ID du message à supprimer.

Exemple de requête

DELETE https://outlook.office.com/api/v2.0/me/messages/AAMkAGE0Mz8TBAAA=

Exemple de réponse

Status code: 204
DELETE https://outlook.office.com/api/v1.0/me/messages/{message_id}
Paramètre requisTypeDescription
Paramètres URL
message_idchaîneL’ID du message à supprimer.

Exemple de requête

DELETE https://outlook.office.com/api/v1.0/me/messages/AAMkAGE0Mz8TBAAA=

Exemple de réponse

Status code: 204

Déplacer ou copier des messages

Vous pouvez déplacer ou copier un message dans un dossier.

Déplacer un message | Copier un message

Déplacer un message

Étendue minimale requise : l’une des suivantes :

Déplacer un message vers un dossier. Crée une nouvelle copie du message dans le dossier de destination.

POST https://outlook.office.com/api/beta/me/messages/{message_id}/move
Paramètre requisTypeDescription
Paramètres URL
message_idchaîneL’ID du message à déplacer.
Paramètres de corps
DestinationIdchaîneID de dossier de destination, ou nom de dossier connu Inbox, Drafts, SentItems ou DeletedItems.

Exemple de requête

POST https://outlook.office.com/api/beta/me/messages/AAMkAGI2TIy-AAA=/move
Content-Type: application/json

{
  "DestinationId": "AAMkAGI2AAEJAAA="
}

Exemple de réponse

Status code: 201

{
  "@odata.context": "https://outlook.office.com/api/beta/$metadata#Me/Messages/$entity",
  "@odata.id": "https://outlook.office.com/api/beta/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/Messages('AAMkAGE0MGz_vSAAA=')",
  "@odata.etag": "W/\"CQAAABYAAACd9nJ/tVysQos2hTfspaWRAAADTJqP\"",
  "Id": "AAMkAGI2shBhAAA=",
  "ChangeKey": "CQAAABYAAACd9nJ/tVysQos2hTfspaWRAAADTJqP",
  "InternetMessageId": "SN2PR00M@SN2.namprd00.prod.outlook.com",
  "Categories": [],
  "CreatedDateTime": "2014-10-20T00:13:21Z",
  "LastModifiedDateTime": "2014-10-20T00:13:23Z",
  "Subject": "Contract Signing",
  "BodyPreview": "There will be a detailed legal review of Project Falcon once the contract is ready.",
  "Body": {
    "ContentType": "Text",
    "Content": "There will be a detailed legal review of Project Falcon once the contract is ready."
  },
  "Importance": "Normal",
  "HasAttachments": false,
  "ParentFolderId": "AAMkAGI2AAEJAAA=",
  "From": {
    "EmailAddress": {
      "Address": "alexd@a830edad9050849NDA1.onmicrosoft.com",
      "Name": "Alex D"
    }
  },
  "Sender": {
    "EmailAddress": {
      "Address": "alexd@a830edad9050849NDA1.onmicrosoft.com",
      "Name": "Alex D"
    }
  },
  "ToRecipients": [
    {
      "EmailAddress": {
        "Address": "katiej@a830edad9050849NDA1.onmicrosoft.com",
        "Name": "Katie Jordan"
      }
    },
    {
      "EmailAddress": {
        "Address": "garthf@a830edad9050849NDA1.onmicrosoft.com",
        "Name": "Garth Fort"
      }
    }
  ],
  "CcRecipients": [],
  "BccRecipients": [],
  "ReplyTo": [],
  "ConversationId": "AAQkAGI2NGWgitxag=",
  "ConversationIndex": "AQHRh6etrkAcds2kw==",
  "ReceivedDateTime": "2014-10-20T00:13:21Z",
  "SentDateTime": "2014-10-20T00:13:21Z",
  "IsDeliveryReceiptRequested": false,
  "IsReadReceiptRequested": false,
  "IsDraft": false,
  "IsRead": true
}
POST https://outlook.office.com/api/v2.0/me/messages/{message_id}/move
Paramètre requisTypeDescription
Paramètres URL
message_idchaîneL’ID du message à déplacer.
Paramètres de corps
DestinationIdchaîneID de dossier de destination, ou nom de dossier connu Inbox, Drafts, SentItems ou DeletedItems.

Exemple de requête

POST https://outlook.office.com/api/v2.0/me/messages/AAMkAGI2TIy-AAA=/move
Content-Type: application/json

{
  "DestinationId": "AAMkAGI2AAEJAAA="
}

Exemple de réponse

Status code: 201

{
  "@odata.context": "https://outlook.office.com/api/v2.0/$metadata#Me/Messages/$entity",
  "@odata.id": "https://outlook.office.com/api/v2.0/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/Messages('AAMkAGE0MGz_vSAAA=')",
  "@odata.etag": "W/\"CQAAABYAAACd9nJ/tVysQos2hTfspaWRAAADTJqP\"",
  "Id": "AAMkAGI2shBhAAA=",
  "ChangeKey": "CQAAABYAAACd9nJ/tVysQos2hTfspaWRAAADTJqP",
  "Categories": [],
  "CreatedDateTime": "2014-10-20T00:13:21Z",
  "LastModifiedDateTime": "2014-10-20T00:13:23Z",
  "Subject": "Contract Signing",
  "BodyPreview": "There will be a detailed legal review of Project Falcon once the contract is ready.",
  "Body": {
    "ContentType": "Text",
    "Content": "There will be a detailed legal review of Project Falcon once the contract is ready."
  },
  "Importance": "Normal",
  "HasAttachments": false,
  "ParentFolderId": "AAMkAGI2AAEJAAA=",
  "From": {
    "EmailAddress": {
      "Address": "alexd@a830edad9050849NDA1.onmicrosoft.com",
      "Name": "Alex D"
    }
  },
  "Sender": {
    "EmailAddress": {
      "Address": "alexd@a830edad9050849NDA1.onmicrosoft.com",
      "Name": "Alex D"
    }
  },
  "ToRecipients": [
    {
      "EmailAddress": {
        "Address": "katiej@a830edad9050849NDA1.onmicrosoft.com",
        "Name": "Katie Jordan"
      }
    },
    {
      "EmailAddress": {
        "Address": "garthf@a830edad9050849NDA1.onmicrosoft.com",
        "Name": "Garth Fort"
      }
    }
  ],
  "CcRecipients": [],
  "BccRecipients": [],
  "ReplyTo": [],
  "ConversationId": "AAQkAGI2NGWgitxag=",
  "ReceivedDateTime": "2014-10-20T00:13:21Z",
  "SentDateTime": "2014-10-20T00:13:21Z",
  "IsDeliveryReceiptRequested": false,
  "IsReadReceiptRequested": false,
  "IsDraft": false,
  "IsRead": true
}
POST https://outlook.office.com/api/v1.0/me/messages/{message_id}/move
Paramètre requisTypeDescription
Paramètres URL
message_idchaîneL’ID du message à déplacer.
Paramètres de corps
DestinationIdchaîneID de dossier de destination, ou nom de dossier connu Inbox, Drafts, SentItems ou DeletedItems.

Exemple de requête

POST https://outlook.office.com/api/v1.0/me/messages/AAMkAGI2NGVhZTVlLTI1OGMtNDI4My1iZmE5LTA5OGJiZGEzMTc0YQBGAAAAAADUuTJK1K9aTpCdqXop_4NaBwCd9nJ-tVysQos2hTfspaWRAAAAAAEJAACd9nJ-tVysQos2hTfspaWRAAADTIy-AAA=/move
Content-Type: application/json
{
  "DestinationId": "AAMkAGI2NGVhZTVlLTI1OGMtNDI4My1iZmE5LTA5OGJiZGEzMTc0YQAuAAAAAADUuTJK1K9aTpCdqXop_4NaAQCd9nJ-tVysQos2hTfspaWRAAAAAAEJAAA="
}

Exemple de réponse

Code d’état : 201

{
  "@odata.context": "https://outlook.office.com/api/v1.0/$metadata#Me/Messages/$entity",
  "@odata.id": "https://outlook.office.com/api/v1.0/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/Events('AAMkAGE4v1RAAA=')",
  "@odata.etag": "W/\"CQAAABYAAACd9nJ/tVysQos2hTfspaWRAAADTJqP\"",
  "Id": "AAMkAGI2NGVhZTVlLTI1OGMtNDI4My1iZmE5LTA5OGJiZGEzMTc0YQBGAAAAAADUuTJK1K9aTpCdqXop_4NaBwCd9nJ-tVysQos2hTfspaWRAAAAAAEJAACd9nJ-tVysQos2hTfspaWRAAADTshBhAAA=",
  "ChangeKey": "CQAAABYAAACd9nJ/tVysQos2hTfspaWRAAADTJqP",
  "Categories": [],
  "DateTimeCreated": "2014-10-20T00:13:21Z",
  "DateTimeLastModified": "2014-10-20T00:13:23Z",
  "Subject": "Contract Signing",
  "BodyPreview": "There will be a detailed legal review of Project Falcon once the contract is ready.",
  "Body": {
    "ContentType": "Text",
    "Content": "There will be a detailed legal review of Project Falcon once the contract is ready."
  },
  "Importance": "Normal",
  "HasAttachments": false,
  "ParentFolderId": "AAMkAGI2NGVhZTVlLTI1OGMtNDI4My1iZmE5LTA5OGJiZGEzMTc0YQAuAAAAAADUuTJK1K9aTpCdqXop_4NaAQCd9nJ-tVysQos2hTfspaWRAAAAAAEJAAA=",
  "From": {
    "EmailAddress": {
      "Address": "alexd@a830edad9050849NDA1.onmicrosoft.com",
      "Name": "Alex D"
    }
  },
  "Sender": {
    "EmailAddress": {
      "Address": "alexd@a830edad9050849NDA1.onmicrosoft.com",
      "Name": "Alex D"
    }
  },
  "ToRecipients": [
    {
      "EmailAddress": {
        "Address": "katiej@a830edad9050849NDA1.onmicrosoft.com",
        "Name": "Katie Jordan"
      }
    },
    {
      "EmailAddress": {
        "Address": "garthf@a830edad9050849NDA1.onmicrosoft.com",
        "Name": "Garth Fort"
      }
    }
  ],
  "CcRecipients": [],
  "BccRecipients": [],
  "ReplyTo": [],
  "ConversationId": "AAQkAGI2NGVhZTVlLTI1OGMtNDI4My1iZmE5LTA5OGJiZGEzMTc0YQAQAKjRc0YJSUBJpofjWgitxag=",
  "DateTimeReceived": "2014-10-20T00:13:21Z",
  "DateTimeSent": "2014-10-20T00:13:21Z",
  "IsDeliveryReceiptRequested": false,
  "IsReadReceiptRequested": false,
  "IsDraft": false,
  "IsRead": true
}

Type de réponse

Le message qui a été déplacé.


Copier un message

Étendue minimale requise : l’une des suivantes :

Copier un message vers un dossier.

POST https://outlook.office.com/api/beta/me/messages/{message_id}/copy
Paramètre requisTypeDescription
Paramètres URL
message_idchaîneL’ID du message à copier.
Paramètres de corps
DestinationIdchaîneID de dossier de destination, ou nom de dossier connu Inbox, Drafts, SentItems ou DeletedItems.

Exemple de requête

POST https://outlook.office.com/api/beta/me/messages/AAMkAGI2TIy-AAA=/copy
Content-Type: application/json

{
  "DestinationId": "inbox"
}

Exemple de réponse

Status code: 201

{
  "@odata.context": "https://outlook.office.com/api/beta/$metadata#Me/Messages/$entity",
  "@odata.id": "https://outlook.office.com/api/beta/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/Messages('AAMkAGE0Mz8TDAAA=')",
  "@odata.etag": "W/\"CQAAABYAAAAmP1Ln1wcHRariNdTMGAO9AAAS0AIS\"",
  "Id": "AAMkAGI2T8DtAAA=",
  "ChangeKey": "CQAAABYAAACd9nJ/tVysQos2hTfspaWRAAADTJqP",
  "InternetMessageId": "SN2PR00M@SN2.namprd00.prod.outlook.com",
  "Categories": [],
  "CreatedDateTime": "2014-10-20T00:13:21Z",
  "LastModifiedDateTime": "2014-10-20T00:13:23Z",
  "Subject": "Contract Signing",
  "BodyPreview": "There will be a detailed legal review of Project Falcon once the contract is ready.",
  "Body": {
    "ContentType": "Text",
    "Content": "There will be a detailed legal review of Project Falcon once the contract is ready."
  },
  "Importance": "Normal",
  "HasAttachments": false,
  "ParentFolderId": "AAMkAGE0MAAEMAAA=",
  "From": {
    "EmailAddress": {
      "Address": "alexd@a830edad9050849NDA1.onmicrosoft.com",
      "Name": "Alex D"
    }
  },
  "Sender": {
    "EmailAddress": {
      "Address": "alexd@a830edad9050849NDA1.onmicrosoft.com",
      "Name": "Alex D"
    }
  },
  "ToRecipients": [
    {
      "EmailAddress": {
        "Address": "katiej@a830edad9050849NDA1.onmicrosoft.com",
        "Name": "Katie Jordan"
      }
    },
    {
      "EmailAddress": {
        "Address": "garthf@a830edad9050849NDA1.onmicrosoft.com",
        "Name": "Garth Fort"
      }
    }
  ],
  "CcRecipients": [],
  "BccRecipients": [],
  "ReplyTo": [],
  "ConversationId": "AAQkAGI2NGVhZTVlLTI1OGMtNDI4My1iZmE5LTA5OGJiZGEzMTc0YQAQAKjRc0YJSUBJpofjWgitxag=",
  "ConversationIndex": "AQHRh6sdrkAcds2kw==",
  "ReceivedDateTime": "2014-10-20T00:13:21Z",
  "SentDateTime": "2014-10-20T00:13:21Z",
  "IsDeliveryReceiptRequested": false,
  "IsReadReceiptRequested": false,
  "IsDraft": false,
  "IsRead": true
}
POST https://outlook.office.com/api/v2.0/me/messages/{message_id}/copy
Paramètre requisTypeDescription
Paramètres URL
message_idchaîneL’ID du message à copier.
Paramètres de corps
DestinationIdchaîneID de dossier de destination, ou nom de dossier connu Inbox, Drafts, SentItems ou DeletedItems.

Exemple de requête

POST https://outlook.office.com/api/v2.0/me/messages/AAMkAGI2TIy-AAA=/copy
Content-Type: application/json

{
  "DestinationId": "inbox"
}

Exemple de réponse

Status code: 201

{
  "@odata.context": "https://outlook.office.com/api/v2.0/$metadata#Me/Messages/$entity",
  "@odata.id": "https://outlook.office.com/api/v2.0/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/Messages('AAMkAGE0Mz8TDAAA=')",
  "@odata.etag": "W/\"CQAAABYAAAAmP1Ln1wcHRariNdTMGAO9AAAS0AIS\"",
  "Id": "AAMkAGI2T8DtAAA=",
  "ChangeKey": "CQAAABYAAACd9nJ/tVysQos2hTfspaWRAAADTJqP",
  "Categories": [],
  "CreatedDateTime": "2014-10-20T00:13:21Z",
  "LastModifiedDateTime": "2014-10-20T00:13:23Z",
  "Subject": "Contract Signing",
  "BodyPreview": "There will be a detailed legal review of Project Falcon once the contract is ready.",
  "Body": {
    "ContentType": "Text",
    "Content": "There will be a detailed legal review of Project Falcon once the contract is ready."
  },
  "Importance": "Normal",
  "HasAttachments": false,
  "ParentFolderId": "AAMkAGE0MAAEMAAA=",
  "From": {
    "EmailAddress": {
      "Address": "alexd@a830edad9050849NDA1.onmicrosoft.com",
      "Name": "Alex D"
    }
  },
  "Sender": {
    "EmailAddress": {
      "Address": "alexd@a830edad9050849NDA1.onmicrosoft.com",
      "Name": "Alex D"
    }
  },
  "ToRecipients": [
    {
      "EmailAddress": {
        "Address": "katiej@a830edad9050849NDA1.onmicrosoft.com",
        "Name": "Katie Jordan"
      }
    },
    {
      "EmailAddress": {
        "Address": "garthf@a830edad9050849NDA1.onmicrosoft.com",
        "Name": "Garth Fort"
      }
    }
  ],
  "CcRecipients": [],
  "BccRecipients": [],
  "ReplyTo": [],
  "ConversationId": "AAQkAGI2NGVhZTVlLTI1OGMtNDI4My1iZmE5LTA5OGJiZGEzMTc0YQAQAKjRc0YJSUBJpofjWgitxag=",
  "ReceivedDateTime": "2014-10-20T00:13:21Z",
  "SentDateTime": "2014-10-20T00:13:21Z",
  "IsDeliveryReceiptRequested": false,
  "IsReadReceiptRequested": false,
  "IsDraft": false,
  "IsRead": true
}
POST https://outlook.office.com/api/v1.0/me/messages/{message_id}/copy
Paramètre requisTypeDescription
Paramètres URL
message_idchaîneL’ID du message à copier.
Paramètres de corps
DestinationIdchaîneID de dossier de destination, ou nom de dossier connu Inbox, Drafts, SentItems ou DeletedItems.

Exemple de requête

POST https://outlook.office.com/api/v1.0/me/messages/AAMkAGI2NGVhZTVlLTI1OGMtNDI4My1iZmE5LTA5OGJiZGEzMTc0YQBGAAAAAADUuTJK1K9aTpCdqXop_4NaBwCd9nJ-tVysQos2hTfspaWRAAAAAAEJAACd9nJ-tVysQos2hTfspaWRAAADTIy-AAA=/copy
Content-Type: application/json
{
  "DestinationId": "inbox"
}

Exemple de réponse

Code d’état : 201

{
  "@odata.context": "https://outlook.office.com/api/v1.0/$metadata#Me/Messages/$entity",
  "@odata.id": "https://outlook.office.com/api/v1.0/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/Events('AAMkAGE4v1RAAA=')",
  "@odata.etag": "W/\"CQAAABYAAAAmP1Ln1wcHRariNdTMGAO9AAAS0AIS\"",
  "Id": "AAMkAGI2NGVhZTVlLTI1OGMtNDI4My1iZmE5LTA5OGJiZGEzMTc0YQBGAAAAAADUuTJK1K9aTpCdqXop_4NaBwCd9nJ-tVysQos2hTfspaWRAAAAAAEJAACd9nJ-tVysQos2hTfspaWRAAADT8DtAAA=",
  "ChangeKey": "CQAAABYAAACd9nJ/tVysQos2hTfspaWRAAADTJqP",
  "Categories": [],
  "DateTimeCreated": "2014-10-20T00:13:21Z",
  "DateTimeLastModified": "2014-10-20T00:13:23Z",
  "Subject": "Contract Signing",
  "BodyPreview": "There will be a detailed legal review of Project Falcon once the contract is ready.",
  "Body": {
    "ContentType": "Text",
    "Content": "There will be a detailed legal review of Project Falcon once the contract is ready."
  },
  "Importance": "Normal",
  "HasAttachments": false,
  "ParentFolderId": "AAMkAGE0MGM1Y2M5LWEzMmUtNGVlNy05MjRlLTk0YmJjYzVkN2I5MAAuAAAAAAC_0WfqSjt_SqLtNkuO-bj1AQAmP1Ln1wcHRariNdTMGAO9AAAAAAEMAAA=",
  "From": {
    "EmailAddress": {
      "Address": "alexd@a830edad9050849NDA1.onmicrosoft.com",
      "Name": "Alex D"
    }
  },
  "Sender": {
    "EmailAddress": {
      "Address": "alexd@a830edad9050849NDA1.onmicrosoft.com",
      "Name": "Alex D"
    }
  },
  "ToRecipients": [
    {
      "EmailAddress": {
        "Address": "katiej@a830edad9050849NDA1.onmicrosoft.com",
        "Name": "Katie Jordan"
      }
    },
    {
      "EmailAddress": {
        "Address": "garthf@a830edad9050849NDA1.onmicrosoft.com",
        "Name": "Garth Fort"
      }
    }
  ],
  "CcRecipients": [],
  "BccRecipients": [],
  "ReplyTo": [],
  "ConversationId": "AAQkAGI2NGVhZTVlLTI1OGMtNDI4My1iZmE5LTA5OGJiZGEzMTc0YQAQAKjRc0YJSUBJpofjWgitxag=",
  "DateTimeReceived": "2014-10-20T00:13:21Z",
  "DateTimeSent": "2014-10-20T00:13:21Z",
  "IsDeliveryReceiptRequested": false,
  "IsReadReceiptRequested": false,
  "IsDraft": false,
  "IsRead": true
}

Type de réponse

La nouvelle copie du message.


Gérer la boîte de réception triée

La boîte de réception triée vous permet d’afficher les messages importants dans l’onglet Focused de la boîte de réception, et le reste des messages de la boîte de réception dans l’onglet Other. Le système de classement trie par défaut les messages de la boîte de réception. Vous pouvez corriger et former le système au fil du temps via l’interface utilisateur ou un programme. Plus vous l’utilisez, plus le système peut déduire quel message entrant est important.

Au niveau programmatique, l'API REST de la boîte de réception prioritaire fonctionne sur les messages de l’utilisateur spécifié et prend en charge une propriété InferenceClassification pour chaque message. Les valeurs possibles sont Focused et Other, qui indiquent si l’utilisateur considère ce message comme, respectivement, plus important ou moins important. Pour corriger et entraîner le système de classification des messages, utilisez l’opération PATCH sur la propriété InferenceClassification au niveau du message.

L'API REST Boîte de réception prioritaire vous permet également de créer des remplacements. Chaque remplacement, représenté par une instance InferenceClassificationOverride est une instruction pour le système de classification de toujours désigner les messages d’un expéditeur spécifique d’une manière cohérente (c’est-à-dire toujours comme "Prioritaire" ou toujours comme "Autre"), indépendamment de toute approche précédemment apprise. Vous pouvez créer, obtenir, mettre à jour et effacer des remplacements pour l’utilisateur spécifié. Les remplacements de cet utilisateur, le cas échéant, sont accessibles dans une propriété de navigation InferenceClassification, qui est une collection d’instances InferenceClassificationOverride instances. Les remplacements permettent à l’utilisateur de mieux contrôler la classification des messages entrants et renforcent la confiance dans le système de classification.

Notez que le système de classification apprend et applique la classification uniquement aux messages entrants dans la boîte de réception. Les messages dans d’autres dossiers sont par défaut "Prioritaires". La mise en place d’un remplacement affecte les futurs messages arrivant dans la boîte de réception ; le remplacement ne modifie pas la propriété InferenceClassification dans les messages existants dans tout dossier, y compris dans la boîte de réception.

Formation du système de classement des messages

Mettre à jour la classification des messages

Utiliser des remplacements pour classer les messages par expéditeur de façon cohérente

Créer un remplacement pour un expéditeur | Obtenir tous les remplacements utilisateurs | Mettre à jour un remplacement pour un expéditeur | Supprimer un remplacement d’expéditeur

Mettre à jour la classification des messages

Étendue minimale requise : l’une des suivantes :

Changez la propriété InferenceClassification du message spécifié. Si le message est dans la boîte de réception, l’utilisateur verra ce message sous l’onglet Focused ou Other correspondant. Ce type de correction entraîne également le système de classification des messages pour personnaliser la future classification pour l’utilisateur spécifié.

PATCH https://outlook.office.com/api/beta/me/messages('{message_id}')

PATCH https://outlook.office.com/api/beta/Users('{user_id}')/messages('{message_id}')
ParamètreTypeDescription
Paramètres URL
message_idchaîneL’ID du brouillon de message à envoyer.
user_idchaîneAdresse de messagerie de l’utilisateur.

Type de réponse

Le message mis à jour.

Exemple de requête

Cet exemple change la propriété InferenceClassification en Other pour le message spécifié de l’utilisateur connecté.

PATCH https://outlook.office.com/api/beta/me/messages('AAMkADA1MTQBAAA=')

{
    "InferenceClassification": "Other"
}

Exemple de réponse

L’objet de réponse montré ici montre la propriété InferenceClassification mise à jour et est tronqué à des fins de concision. Une requête PATCH réelle renvoie toutes les propriétés du message.

Status code: 200 OK

{
    "@odata.context": "https://outlook.office.com/api/beta/$metadata#Me/Messages/$entity",
    "@odata.id": "https://outlook.office.com/api/beta/Users('86b6ceaf-57f7-4278-97c4-4da0a97f6cdb@70559e59-b378-49ea-8e53-07a3a3d27f5b')/Messages('AAMkADA1MTQBAAA=')",
    "@odata.etag": "W/\"CQAAABYAAADX8oL1Wa7jQbcPAHouCzswAAAffAsD\"",
    "Id": "AAMkADA1MTQBAAA=",
    "Importance": "Normal",
    "Sender": {
        "EmailAddress": {
            "Name": "Fanny Downs",
            "Address": "fannyd@adatum.onmicrosoft.com"
        }
    },
    "From": {
        "EmailAddress": {
            "Name": "Fanny Downs",
            "Address": "fannyd@adatum.onmicrosoft.com"
        }
    },
    "ToRecipients": [
        {
            "EmailAddress": {
                "Name": "Admin",
                "Address": "admin@adatum.onmicrosoft.com"
            }
        }
    ],
    "InferenceClassification": "Other"
}

Créer un remplacement pour un expéditeur

Étendue minimale requise : l’une des suivantes :

Créez un remplacement pour un expéditeur identifié par une adresse SMTP. Les futurs messages provenant de cette adresse SMTP seront classés de façon cohérente comme indiqué dans le remplacement.

Remarque

  • Si un remplacement existe déjà avec la même adresse SMTP, les champs ClassifyAs et Name de ce remplacement sont mis à jour avec les valeurs fournies.
  • Le nombre maximal de remplacements pris en charge pour une boîte aux lettres est 1 000, en fonction des adresses SMTP d’expéditeur unique.
  • L’opération POST prend en charge la création d’un seul remplacement à la fois. Pour créer plusieurs remplacements, vous pouvez envoyer plusieurs demandes POST ou les envoyer par lots.
POST https://outlook.office.com/api/beta/me/InferenceClassification/Overrides

POST https://outlook.office.com/api/beta/Users('{user_id}')/InferenceClassification/Overrides
ParamètreTypeDescription
Paramètres URL
user_idchaîneAdresse de messagerie de l’utilisateur.

Type de réponse

Le InferenceClassificationOverride nouvellement créé, ou l’instance de InferenceClassificationOverride mise à jour si une adresse SMTP existe déjà.

Exemple de requête

POST https://outlook.office.com/api/beta/me/InferenceClassification/Overrides

{
    "ClassifyAs": "Focused",
    "SenderEmailAddress": {
        "Name": "Fanny Downs",
        "Address": "fannyd@adatum.onmicrosoft.com"
    }
}

Exemple de réponse

Status code: 201 Created

{
    "@odata.context": "https://outlook.office.com/api/beta/$metadata#Me/InferenceClassification/Overrides/$entity",
    "@odata.id": "https://outlook.office.com/api/beta/Users('86b6ceaf-57f7-4278-97c4-4da0a97f6cdb@70559e59-b378-49ea-8e53-07a3a3d27f5b')/InferenceClassificationOverrides('98f5bdef-576a-404d-a2ea-07a3cf11a9b9')",
    "Id": "98f5bdef-576a-404d-a2ea-07a3cf11a9b9",
    "ClassifyAs": "Focused",
    "SenderEmailAddress": {
        "Name": "Fanny Downs",
        "Address": "fannyd@adatum.onmicrosoft.com"
    }
}

Obtenir tous les remplacements utilisateurs

Étendue minimale requise : l’une des suivantes :

Obtenir les remplacements qu’un utilisateur a configurés pour toujours classer les messages provenant de certains expéditeurs de façon spécifique.

Chaque remplacement correspond à l’adresse SMTP d’un expéditeur. Au départ, un utilisateur n’a aucun remplacement.

GET https://outlook.office.com/api/beta/me/InferenceClassification/Overrides

GET https://outlook.office.com/api/beta/Users('{user_id}')/InferenceClassification/Overrides
ParamètreTypeDescription
Paramètres URL
user_idchaîneAdresse de messagerie de l’utilisateur.

Type de réponse

Une collection d’instances de InferenceClassificationOverride. Une collection vide est renvoyée si l’utilisateur n’a mis en place aucun remplacement.

Exemple de requête

GET https://outlook.office.com/api/beta/me/InferenceClassification/Overrides

Exemple de réponse

Status code: 200 OK

{
    "@odata.context": "https://outlook.office.com/api/beta/$metadata#Me/InferenceClassification/Overrides",
    "value": [
        {
            "@odata.id": "https://outlook.office.com/api/beta/Users('86b6ceaf-57f7-4278-97c4-4da0a97f6cdb@70559e59-b378-49ea-8e53-07a3a3d27f5b')/InferenceClassificationOverrides('98f5bdef-576a-404d-a2ea-07a3cf11a9b9')",
            "Id": "98f5bdef-576a-404d-a2ea-07a3cf11a9b9",
            "ClassifyAs": "Focused",
            "SenderEmailAddress": {
                "Name": "Fanny Downs",
                "Address": "fannyd@adatum.onmicrosoft.com"
            }
        },
        {
            "@odata.id": "https://outlook.office.com/api/beta/Users('86b6ceaf-57f7-4278-97c4-4da0a97f6cdb@70559e59-b378-49ea-8e53-07a3a3d27f5b')/InferenceClassificationOverrides('98f5bdef-576a-404d-a2ea-07a3cf34af4r')",
            "Id": "98f5bdef-576a-404d-a2ea-07a3cf34af4r",
            "ClassifyAs": "Other",
            "SenderEmailAddress": {
                "Name": "Randi Welch",
                "Address": "randiw@adatum.onmicrosoft.com"
            }
        }
    ]
}

Mise à jour d’un remplacement pour un expéditeur

Étendue minimale requise : l’une des suivantes :

Modifiez le champ classifyAs d’un remplacement comme spécifié.

Vous ne pouvez pas utiliser PATCH pour modifier d’autres champs dans une instance inferenceClassificationOverride.

Si un remplacement existe pour un expéditeur et que ce dernier change son nom d’affichage, vous pouvez utiliser POST pour forcer une mise à jour du champ Name dans le remplacement existant.

Si un remplacement existe pour un expéditeur et qu’il change son adresse SMTP, le seul moyen de « mettre à jour » le remplacement pour cet expéditeur est de supprimer le remplacement existant et d’en créer un avec la nouvelle adresse SMTP.

PATCH https://outlook.office.com/api/beta/me/InferenceClassification/Overrides('{override_id}')

PATCH https://outlook.office.com/api/beta/Users('{user_id}')/InferenceClassification/Overrides('{override_id}')
ParamètreTypeDescription
Paramètres URL
override_idchaîneL’ID du remplacement à mettre à jour.
user_idchaîneAdresse de messagerie de l’utilisateur.

Type de réponse

L’instance InferenceClassificationOverride mise à jour.

Exemple de requête

L’exemple suivant modifie un remplacement pour l’utilisateur connecté. Le remplacement est pour l’expéditeur avec l'adresse SMTP randiw@adatum.onmicrosoft.com, modifié de Other en Focused.

PATCH https://outlook.office.com/api/beta/me/InferenceClassification/Overrides('98f5bdef-576a-404d-a2ea-07a3cf34af4r')

{
    "ClassifyAs": "Focused"
}

Exemple de réponse

Status code: 200 OK

{
    "@odata.context": "https://outlook.office.com/api/beta/$metadata#Me/InferenceClassification/Overrides/$entity",
    "@odata.id": "https://outlook.office.com/api/beta/Users('86b6ceaf-57f7-4278-97c4-4da0a97f6cdb@70559e59-b378-49ea-8e53-07a3a3d27f5b')/InferenceClassificationOverrides('98f5bdef-576a-404d-a2ea-07a3cf34af4r')",
    "Id": "98f5bdef-576a-404d-a2ea-07a3cf34af4r",
    "ClassifyAs": "Focused",
    "SenderEmailAddress": {
        "Name": "Randi Welch",
        "Address": "randiw@adatum.onmicrosoft.com"
    }
}

Supprimer un remplacement d’expéditeur

Étendue minimale requise : l’une des suivantes :

Supprimer un remplacement spécifié par son ID.

DELETE https://outlook.office.com/api/beta/me/InferenceClassification/Overrides('{override_id}')

DELETE https://outlook.office.com/api/beta/Users('{user_id}')/InferenceClassification/Overrides('{override_id}')
ParamètreTypeDescription
Paramètres URL
override_idchaîneL’ID du brouillon de message à envoyer.
user_idchaîneAdresse de messagerie de l’utilisateur.

Exemple de requête

DELETE https://outlook.office.com/api/beta/me/InferenceClassification/Overrides('98f5bdef-576a-404d-a2ea-07a3cf34af4r')

Exemple de réponse

Status code: 204 No Content

La boîte de réception triée vous permet d’afficher les messages importants dans l’onglet Focused de la boîte de réception, et le reste des messages de la boîte de réception dans l’onglet Other. Le système de classement trie par défaut les messages de la boîte de réception. Vous pouvez corriger et former le système au fil du temps via l’interface utilisateur ou un programme. Plus vous l’utilisez, plus le système peut déduire quel message entrant est important.

Au niveau programmatique, l'API REST de la boîte de réception prioritaire fonctionne sur les messages de l’utilisateur spécifié et prend en charge une propriété InferenceClassification pour chaque message. Les valeurs possibles sont Focused et Other, qui indiquent si l’utilisateur considère ce message comme, respectivement, plus important ou moins important. Pour corriger et entraîner le système de classification des messages, utilisez l’opération PATCH sur la propriété InferenceClassification au niveau du message.

L'API REST Boîte de réception prioritaire vous permet également de créer des remplacements. Chaque remplacement, représenté par une instance InferenceClassificationOverride est une instruction pour le système de classification de toujours désigner les messages d’un expéditeur spécifique d’une manière cohérente (c’est-à-dire toujours comme "Prioritaire" ou toujours comme "Autre"), indépendamment de toute approche précédemment apprise. Vous pouvez créer, obtenir, mettre à jour et effacer des remplacements pour l’utilisateur spécifié. Les remplacements de cet utilisateur, le cas échéant, sont accessibles dans une propriété de navigation InferenceClassification, qui est une collection d’instances InferenceClassificationOverride instances. Les remplacements permettent à l’utilisateur de mieux contrôler la classification des messages entrants et renforcent la confiance dans le système de classification.

Notez que le système de classification apprend et applique la classification uniquement aux messages entrants dans la boîte de réception. Les messages dans d’autres dossiers sont par défaut "Prioritaires". La mise en place d’un remplacement affecte les futurs messages arrivant dans la boîte de réception ; le remplacement ne modifie pas la propriété InferenceClassification dans les messages existants dans tout dossier, y compris dans la boîte de réception.

Formation du système de classement des messages

Mettre à jour la classification des messages

Utiliser des remplacements pour classer les messages par expéditeur de façon cohérente

Créer un remplacement pour un expéditeur | Obtenir tous les remplacements utilisateurs | Mettre à jour un remplacement pour un expéditeur | Supprimer un remplacement d’expéditeur

Mettre à jour la classification des messages

Étendue minimale requise : l’une des suivantes :

Changez la propriété InferenceClassification du message spécifié. Si le message est dans la boîte de réception, l’utilisateur verra ce message sous l’onglet Focused ou Other correspondant. Ce type de correction entraîne également le système de classification des messages pour personnaliser la future classification pour l’utilisateur spécifié.

PATCH https://outlook.office.com/api/v2.0/me/messages('{message_id}')

PATCH https://outlook.office.com/api/v2.0/Users('{user_id}')/messages('{message_id}')
ParamètreTypeDescription
Paramètres URL
message_idchaîneL’ID du brouillon de message à envoyer.
user_idchaîneAdresse de messagerie de l’utilisateur.

Type de réponse

Le message mis à jour.

Exemple de requête

Cet exemple change la propriété InferenceClassification en Other pour le message spécifié de l’utilisateur connecté.

PATCH https://outlook.office.com/api/v2.0/me/messages('AAMkADA1MTQBAAA=')

{
    "InferenceClassification": "Other"
}

Exemple de réponse

L’objet de réponse montré ici montre la propriété InferenceClassification mise à jour et est tronqué à des fins de concision. Une requête PATCH réelle renvoie toutes les propriétés du message.

Status code: 200 OK

{
    "@odata.context": "https://outlook.office.com/api/v2.0/$metadata#Me/Messages/$entity",
    "@odata.id": "https://outlook.office.com/api/v2.0/Users('86b6ceaf-57f7-4278-97c4-4da0a97f6cdb@70559e59-b378-49ea-8e53-07a3a3d27f5b')/Messages('AAMkADA1MTQBAAA=')",
    "@odata.etag": "W/\"CQAAABYAAADX8oL1Wa7jQbcPAHouCzswAAAffAsD\"",
    "Id": "AAMkADA1MTQBAAA=",
    "Importance": "Normal",
    "Sender": {
        "EmailAddress": {
            "Name": "Fanny Downs",
            "Address": "fannyd@adatum.onmicrosoft.com"
        }
    },
    "From": {
        "EmailAddress": {
            "Name": "Fanny Downs",
            "Address": "fannyd@adatum.onmicrosoft.com"
        }
    },
    "ToRecipients": [
        {
            "EmailAddress": {
                "Name": "Admin",
                "Address": "admin@adatum.onmicrosoft.com"
            }
        }
    ],
    "InferenceClassification": "Other"
}

Créer un remplacement pour un expéditeur

Étendue minimale requise : l’une des suivantes :

Créez un remplacement pour un expéditeur identifié par une adresse SMTP. Les futurs messages provenant de cette adresse SMTP seront classés de façon cohérente comme indiqué dans le remplacement.

Remarque

  • Si un remplacement existe déjà avec la même adresse SMTP, les champs ClassifyAs et Name de ce remplacement sont mis à jour avec les valeurs fournies.
  • Le nombre maximal de remplacements pris en charge pour une boîte aux lettres est 1 000, en fonction des adresses SMTP d’expéditeur unique.
  • L’opération POST prend en charge la création d’un seul remplacement à la fois. Pour créer plusieurs remplacements, vous pouvez envoyer plusieurs demandes POST ou les envoyer par lots.
POST https://outlook.office.com/api/v2.0/me/InferenceClassification/Overrides

POST https://outlook.office.com/api/v2.0/Users('{user_id}')/InferenceClassification/Overrides
ParamètreTypeDescription
Paramètres URL
user_idchaîneAdresse de messagerie de l’utilisateur.

Type de réponse

Le InferenceClassificationOverride nouvellement créé, ou l’instance de InferenceClassificationOverride mise à jour si une adresse SMTP existe déjà.

Exemple de requête

POST https://outlook.office.com/api/v2.0/me/InferenceClassification/Overrides

{
    "ClassifyAs": "Focused",
    "SenderEmailAddress": {
        "Name": "Fanny Downs",
        "Address": "fannyd@adatum.onmicrosoft.com"
    }
}

Exemple de réponse

Status code: 201 Created

{
    "@odata.context": "https://outlook.office.com/api/v2.0/$metadata#Me/InferenceClassification/Overrides/$entity",
    "@odata.id": "https://outlook.office.com/api/v2.0/Users('86b6ceaf-57f7-4278-97c4-4da0a97f6cdb@70559e59-b378-49ea-8e53-07a3a3d27f5b')/InferenceClassificationOverrides('98f5bdef-576a-404d-a2ea-07a3cf11a9b9')",
    "Id": "98f5bdef-576a-404d-a2ea-07a3cf11a9b9",
    "ClassifyAs": "Focused",
    "SenderEmailAddress": {
        "Name": "Fanny Downs",
        "Address": "fannyd@adatum.onmicrosoft.com"
    }
}

Obtenir tous les remplacements utilisateurs

Étendue minimale requise : l’une des suivantes :

Obtenir les remplacements qu’un utilisateur a configurés pour toujours classer les messages provenant de certains expéditeurs de façon spécifique.

Chaque remplacement correspond à l’adresse SMTP d’un expéditeur. Au départ, un utilisateur n’a aucun remplacement.

GET https://outlook.office.com/api/v2.0/me/InferenceClassification/Overrides

GET https://outlook.office.com/api/v2.0/Users('{user_id}')/InferenceClassification/Overrides
ParamètreTypeDescription
Paramètres URL
user_idchaîneAdresse de messagerie de l’utilisateur.

Type de réponse

Une collection d’instances de InferenceClassificationOverride. Une collection vide est renvoyée si l’utilisateur n’a mis en place aucun remplacement.

Exemple de requête

GET https://outlook.office.com/api/v2.0/me/InferenceClassification/Overrides

Exemple de réponse

Status code: 200 OK

{
    "@odata.context": "https://outlook.office.com/api/v2.0/$metadata#Me/InferenceClassification/Overrides",
    "value": [
        {
            "@odata.id": "https://outlook.office.com/api/v2.0/Users('86b6ceaf-57f7-4278-97c4-4da0a97f6cdb@70559e59-b378-49ea-8e53-07a3a3d27f5b')/InferenceClassificationOverrides('98f5bdef-576a-404d-a2ea-07a3cf11a9b9')",
            "Id": "98f5bdef-576a-404d-a2ea-07a3cf11a9b9",
            "ClassifyAs": "Focused",
            "SenderEmailAddress": {
                "Name": "Fanny Downs",
                "Address": "fannyd@adatum.onmicrosoft.com"
            }
        },
        {
            "@odata.id": "https://outlook.office.com/api/v2.0/Users('86b6ceaf-57f7-4278-97c4-4da0a97f6cdb@70559e59-b378-49ea-8e53-07a3a3d27f5b')/InferenceClassificationOverrides('98f5bdef-576a-404d-a2ea-07a3cf34af4r')",
            "Id": "98f5bdef-576a-404d-a2ea-07a3cf34af4r",
            "ClassifyAs": "Other",
            "SenderEmailAddress": {
                "Name": "Randi Welch",
                "Address": "randiw@adatum.onmicrosoft.com"
            }
        }
    ]
}

Mise à jour d’un remplacement pour un expéditeur

Étendue minimale requise : l’une des suivantes :

Modifiez le champ classifyAs d’un remplacement comme spécifié.

Vous ne pouvez pas utiliser PATCH pour modifier d’autres champs dans une instance inferenceClassificationOverride.

Si un remplacement existe pour un expéditeur et que ce dernier change son nom d’affichage, vous pouvez utiliser POST pour forcer une mise à jour du champ Name dans le remplacement existant.

Si un remplacement existe pour un expéditeur et qu’il change son adresse SMTP, le seul moyen de « mettre à jour » le remplacement pour cet expéditeur est de supprimer le remplacement existant et d’en créer un avec la nouvelle adresse SMTP.

PATCH https://outlook.office.com/api/v2.0/me/InferenceClassification/Overrides('{override_id}')

PATCH https://outlook.office.com/api/v2.0/Users('{user_id}')/InferenceClassification/Overrides('{override_id}')
ParamètreTypeDescription
Paramètres URL
override_idchaîneL’ID du remplacement à mettre à jour.
user_idchaîneAdresse de messagerie de l’utilisateur.

Type de réponse

L’instance InferenceClassificationOverride mise à jour.

Exemple de requête

L’exemple suivant modifie un remplacement pour l’utilisateur connecté. Le remplacement est pour l’expéditeur avec l’adresse SMTP randiw@adatum.onmicrosoft.com, de Other en Focused.

PATCH https://outlook.office.com/api/v2.0/me/InferenceClassification/Overrides('98f5bdef-576a-404d-a2ea-07a3cf34af4r')

{
    "ClassifyAs": "Focused"
}

Exemple de réponse

Status code: 200 OK

{
    "@odata.context": "https://outlook.office.com/api/v2.0/$metadata#Me/InferenceClassification/Overrides/$entity",
    "@odata.id": "https://outlook.office.com/api/v2.0/Users('86b6ceaf-57f7-4278-97c4-4da0a97f6cdb@70559e59-b378-49ea-8e53-07a3a3d27f5b')/InferenceClassificationOverrides('98f5bdef-576a-404d-a2ea-07a3cf34af4r')",
    "Id": "98f5bdef-576a-404d-a2ea-07a3cf34af4r",
    "ClassifyAs": "Focused",
    "SenderEmailAddress": {
        "Name": "Randi Welch",
        "Address": "randiw@adatum.onmicrosoft.com"
    }
}

Supprimer un remplacement d’expéditeur

Étendue minimale requise : l’une des suivantes :

Supprimer un remplacement spécifié par son ID.

DELETE https://outlook.office.com/api/v2.0/me/InferenceClassification/Overrides('{override_id}')

DELETE https://outlook.office.com/api/v2.0/Users('{user_id}')/InferenceClassification/Overrides('{override_id}')
ParamètreTypeDescription
Paramètres URL
override_idchaîneL’ID du brouillon de message à envoyer.
user_idchaîneAdresse de messagerie de l’utilisateur.

Exemple de requête

DELETE https://outlook.office.com/api/v2.0/me/InferenceClassification/Overrides('98f5bdef-576a-404d-a2ea-07a3cf34af4r')

Exemple de réponse

Status code: 204 No Content

Cette fonctionnalité est actuellement disponible pour les versions v2.0 et bêta. Pour en savoir plus, utilisez le contrôle dans le coin supérieur droit de l’article et sélectionnez l’une de ces versions.


Gérer les @-Mentions (préversion)

Interpeller un destinataire pour attirer son attention dans un message est un geste social commun. La ressource Mention fournit un mécanisme léger pour notifier un autre destinataire, ou pour obtenir une notification d’un expéditeur dans un message.

Via son interface utilisateur, une application peut permettre à un utilisateur d’insérer une mention dans un message en faisant précéder la mention par @ (couramment utilisé pour des scénarios similaires dans d’autres applications, d’où le terme @-mention). Par programmation, l’application peut créer la mention en l’ajoutant à la propriété Mentions dans le même appel POST pour créer le message.

L’application peut laisser les utilisateurs chercher s’ils ont été notifiés dans les messages de leur boîte de réception. Les utilisateurs peuvent trouver les détails de chaque mention dans un message. Ils peuvent aussi effacer une mention dans un message.

Créer des mentions dans un nouveau message

Créer et envoyer des mentions dans le cadre d’un nouveau message | Créer des mentions dans le cadre d’un brouillon de message

Obtenir des informations sur les mentions dans le message

Récupérer tous les messages mentionnant l’utilisateur connecté | Obtenez les détails de chaque mention dans un message

Supprimer une mention dans un message

Supprimer une mention

Créer et envoyer des mentions dans le cadre d’un nouveau message

Étendue minimale requise : l’une des suivantes :

Créez et envoyez un message fourni dans le corps de la requête qui comprend une collection d'une ou plusieurs instances Mention.

Cela utilise la même action SendMail disponible dans la ressource Message ; en outre, vous incluez la propriété Mentions propriété comme partie du paramètre de corps du Message.

POST https://outlook.office.com/api/beta/me/sendmail
Paramètre requisTypeDescription
Paramètres de corps
MessageMessageLe message à envoyer.
SavetoSentItemsbooléenIndique s’il faut enregistrer le message dans Éléments envoyés. la valeur par défaut est true. Nécessaire seulement si faux.

Spécifiez le paramètre Message avec la propriété ToRecipients requise, la propriété Mentions et toute propriété message modifiable dans le corps de la requête.

Et, pour chaque mention dans la propriété Mentions, vous devez spécifier les propriétés Mentioned et CreatedBy.

Exemple de requête

POST https://outlook.office.com/api/beta/me/sendmail
Content-Type: application/json

{
  "Message": {
    "Subject": "Project kickoff",
    "ToRecipients":[
      {
          "EmailAddress":{
          "Name":"Fanny Downs",
          "Address":"fannyd@contoso.onmicrosoft.com"
          }
      }
    ],
    "Mentions":[
      {
        "Mentioned":{
          "Name":"Dana Swope",
          "Address":"danas@contoso.onmicrosoft.com"
         },
        "CreatedBy": {
            "Name":"Randi Welch",
            "Address":"randiw@contoso.onmicrosoft.com"
        }
      }
    ]
  }
}

Exemple de réponse

Status code: 202 Accepted

Créer des mentions dans le cadre d’un brouillon de message

Étendue minimale requise : l’une des suivantes :

Créez le brouillon d’un nouveau message qui comprend une collection d’une ou plusieurs instances de Mention. Vous pouvez créer le brouillon dans n’importe quel dossier et éventuellement lemettre à jour avant l’envoi.

Cela utilise la même méthode POST disponible dans la ressourceMessage ; de plus, vous incluez sa propriété Mentions dans le corps de la requête.

POST https://outlook.office.com/api/beta/me/messages
POST https://outlook.office.com/api/beta/me/MailFolders/{folder_id}/messages
Paramètre requisTypeDescription
Paramètres URL
folder_idchaîneL’ID du dossier de destination, ou les noms de dossier connus Inbox ou Drafts.

Spécifie la propriété Mentions et toute propriété message modifiable dans le corps de la requête.

Et, pour chaque mention dans la propriété Mentions, vous devez spécifier les propriétés Mentioned et CreatedBy.

Type de réponse

Le brouillon de message.

Exemple de requête

POST https://outlook.office.com/api/beta/me/messages
Content-Type: application/json

{
    "Subject": "Party planning",
    "ToRecipients":[
      {
          "EmailAddress":{
          "Name":"Fanny Downs",
          "Address":"fannyd@contoso.onmicrosoft.com"
          }
      }
    ],
    "Mentions":[
      {    
        "Mentioned":{
          "Name":"Dana Swope",
          "Address":"danas@contoso.onmicrosoft.com"
         },
        "CreatedBy": {
            "Name":"Randi Welch",
            "Address":"randiw@contoso.onmicrosoft.com"
        }
      }
    ]
}

Exemple de réponse

Ce qui suit montre le brouillon de message créé. Remarque : l’objet de réponse illustré ici est tronqué à des fins de concision. Toutes les propriétés sont renvoyées à partir d’un appel réel.

Status code: 201 Created

{
  "@odata.context":"https://outlook.office.com/api/beta/$metadata#Me/Messages/$entity",
  "@odata.id":"https://outlook.office.com/api/beta/Users('266efe5a-0fd7-4edd-877b-b2d1e561f193@ae01a323-3934-4475-a32d-af1274312bb0')/Messages('AQMkADJmMTUAAAW1fsAAAAA==')",
  "@odata.etag":"W/\"CQAAABYAAAAPFhK2FclcRbABBJhCde8iAAAAbYj7\"",
  "Id":"AQMkADJmMTUAAAW1fsAAAAA==",
  "Body":{
    "ContentType":"Text",
    "Content":""
  },
  "BodyPreview":"",
  "Sender":null,
  "From":null,
  "ToRecipients":[
    {
      "EmailAddress":{
        "Name":"Fanny Downs",
        "Address":"fannyd@contoso.onmicrosoft.com"
      }
    }
  ],
  "MentionsPreview":{
    "IsMentioned":false
  },
  "Mentions@odata.context":"https://outlook.office.com/api/beta/$metadata#Me/Messages('AQMkADJmMTUAAAW1fsAAAAA%3D%3D')/Mentions",
  "Mentions":[
    {
      "@odata.id":"https://outlook.office.com/api/beta/Users('266efe5a-0fd7-4edd-877b-b2d1e561f193@ae01a323-3934-4475-a32d-af1274312bb0')/Messages('AQMkADJmMTUAAAW1fsAAAAA==')/Mentions('4577bba4-b063-4cea-9073-6f7ca815fcec')",
      "Id":"4577bba4-b063-4cea-9073-6f7ca815fcec",
      "Mentioned":{
        "Name":"Dana Swope",
        "Address":"danas@contoso.onmicrosoft.com",
        "ExternalId":"72137a84-1a8b-4b92-aa06-cca538e8616b"
      },
      "MentionText":null,
      "ClientReference":null,
      "CreatedBy":{
        "Name":"Randi Welch",
        "Address":"randiw@contoso.onmicrosoft.com",
        "ExternalId":"266efe5a-0fd7-4edd-877b-b2d1e561f193"
      },
      "CreatedDateTime":"2016-07-22T02:22:44Z",
      "ServerCreatedDateTime":"2016-07-22T02:22:44.201Z",
      "DeepLink":null,
      "Application":null
    }
  ]
}

Récupérer tous les messages mentionnant l’utilisateur connecté

Étendue minimale requise : l’une des suivantes :

Récupère tous les messages dans la boîte aux lettres de l’utilisateur connecté ou dans le dossier spécifié, qui contient une Mention de cet utilisateur.

Cela utilise la même méthode GET disponible sur la ressource Message ; de plus, vous incluez un paramètre de requête $filter sur la propriété MentionsPreview.

Par défaut, un appel GET /me/messages ne renvoie pas la propriété Mentions. Utilisez le paramètre de requête $expand pour trouver le détail de chaque mention dans un message.

Remarque : Assurez-vous que votre appel réel code les caractères d’espace dans la chaîne de paramètre de requête de manière appropriée.

GET https://outlook.office.com/api/beta/me/messages?$filter=MentionsPreview/IsMentioned eq true

GET https://outlook.office.com/api/beta/me/MailFolders/{folder_id}/messages?$filter=MentionsPreview/IsMentioned eq true
Paramètre requisTypeDescription
Paramètres URL
folder_idchaîneL’ID du dossier de destination, ou les noms de dossier connus Inbox ou Drafts.

Type de réponse

La collection de messages demandée.

Exemple de requête

L’exemple ci-dessous filtre tous les messages dans la boîte aux lettres de l’utilisateur connecté pour trouver ceux qui mentionnent l’utilisateur. Il utilise $select pour renvoyer un sous-ensemble des propriétés de chaque message dans la réponse. Il incorpore également le codage d’URL pour les caractères d’espace dans la chaîne de paramètre de requête.

GET https://outlook.office.com/api/beta/me/messages?$filter=MentionsPreview/IsMentioned%20eq%20true&$select=Subject,Sender,ReceivedDateTime,MentionsPreview

Exemple de réponse

La réponse contient 2 messages qui mentionnent l’utilisateur connecté.

Status code: 200 OK

{
  "@odata.context":"https://outlook.office.com/api/beta/$metadata#Me/Messages(Subject,Sender,ReceivedDateTime,MentionsPreview)",
  "value":[
    {
      "@odata.id":"https://outlook.office.com/api/beta/Users('266efe5a-0fd7-4edd-877b-b2d1e561f193@ae01a323-3934-4475-a32d-af1274312bb0')/Messages('AQMkADJmMTUAAAgVZAAAA')",
      "@odata.etag":"W/\"CQAAABYAAAAPFhK2FclcRbABBJhCde8iAAAAAATI\"",
      "Id":"AQMkADJmMTUAAAgVZAAAA",
      "ReceivedDateTime":"2016-07-21T07:40:21Z",
      "Subject":"Re: Start planning soon",
      "Sender":{
        "EmailAddress":{
          "Name":"Randi Welch",
          "Address":"randiw@contoso.onmicrosoft.com"
        }
      },
      "MentionsPreview":{
        "IsMentioned":true
      }
    },
    {
      "@odata.id":"https://outlook.office.com/api/beta/Users('266efe5a-0fd7-4edd-877b-b2d1e561f193@ae01a323-3934-4475-a32d-af1274312bb0')/Messages('AQMkADJmMTUAAAjwVAAAA')",
      "@odata.etag":"W/\"CQAAABYAAAAPFhK2FclcRbABBJhCde8iAAAAAEGj\"",
      "Id":"AQMkADJmMTUAAAjwVAAAA",
      "ReceivedDateTime":"2016-07-21T07:40:20Z",
      "Subject":"Re: Start planning soon",
      "Sender":{
        "EmailAddress":{
          "Name":"Randi Welch",
          "Address":"randiw@contoso.onmicrosoft.com"
        }
      },
      "MentionsPreview":{
        "IsMentioned":true
      }
    }
  ]
}

Obtenez les détails de chaque mention dans un message

Étendue minimale requise : l’une des suivantes :

Obtenez un message avec les détails de chaque Mention dans le message étendu.

Cela utilise la même méthode GET disponible sur la ressource Message ; de plus, vous incluez un paramètre de requête $expand sur la propriété de navigation Mentions.

GET https://outlook.office.com/api/beta/me/messages('{message_id}')?$expand=Mentions
Paramètre requisTypeDescription
Paramètres URL
message_idchaîneL’identifiant du message demandé.

Type de réponse

Le message demandé.

Exemple de requête

Dans l’exemple suivant, l’utilisatrice connectée est Dana Swope. L’exemple montre comment obtenir les détails de toutes les mentions dans le message spécifié dans la boîte aux lettres de Dana.

GET https://outlook.office.com/api/beta/me/messages('AQMkADJmMTUAAAgVZAAAA')?$expand=Mentions 

Exemple de réponse

Ce qui suit montre le message demandé, incluant les détails de chaque mention dans la propriété Mentions. Ce message comprend 2 mentions, une pour l’utilisatrice Dana et l’autre pour Randi Welch.

Remarque : L'objet de réponse présenté ici est tronqué pour être plus concis et se concentrer sur les propriétés liées à la prise en charge de Mention.

Status code: 200 OK

{
  "@odata.context":"https://outlook.office.com/api/beta/$metadata#Me/Messages/$entity",
  "@odata.id":"https://outlook.office.com/api/beta/Users('266efe5a-0fd7-4edd-877b-b2d1e561f193@ae01a323-3934-4475-a32d-af1274312bb0')/Messages('AQMkADJmMTUAAAgVZAAAA')",
  "@odata.etag":"W/\"CQAAABYAAAAPFhK2FclcRbABBJhCde8iAAAAAATI\"",
  "Id":"AQMkADJmMTUAAAgVZAAAA",
  "Subject":"Start planning soon",
  "Body":{
    "ContentType":"HTML",
    "Content":"<html><head></head><body"><p><a href=\"mailto:danas@contoso.onmicrosoft.com\">@Dana Swope</a>,<a href=\"mailto:randiw@contoso.onmicrosoft.com\">@Randi Welch</a>, forgot to mention, I will be away&nbsp;this weekend. I can start on Monday though.</p></body></html>"
  },
  "BodyPreview":"@Dana Swope<mailto:danas@contoso.onmicrosoft.com>, @Randi Welch, forgot to mention, I will be away this weekend. I can start on Monday though.",
  "Sender":{
    "EmailAddress":{
      "Name":"Fanny Downs",
      "Address":"fannyd@contoso.onmicrosoft.com"
    }
  },
  "From":{
    "EmailAddress":{
      "Name":"Fanny Downs",
      "Address":"fannyd@contoso.onmicrosoft.com"
    }
  },
  "ToRecipients":[
    {
      "EmailAddress":{
        "Name":"Dana Swope",
        "Address":"danas@contoso.onmicrosoft.com"
      }
    },
    {
      "EmailAddress":{
        "Name":"Randi Welch",
        "Address":"randiw@contoso.onmicrosoft.com"
      }
    }
  ],
  "CcRecipients":[
  ],
  "BccRecipients":[
  ],
  "MentionsPreview":{
    "IsMentioned":true
  },
  "Mentions@odata.context":"https://outlook.office.com/api/beta/$metadata#Me/Messages('AQMkADJmMTUAAAgVZAAAA')/Mentions",
  "Mentions":[
    {
      "@odata.id":"https://outlook.office.com/api/beta/Users('266efe5a-0fd7-4edd-877b-b2d1e561f193@ae01a323-3934-4475-a32d-af1274312bb0')/Messages('AQMkADJmMTUAAAgVZAAAA')/Mentions('138f4c0a-1130-4776-b780-bf79d73abb3f')",
      "Id":"138f4c0a-1130-4776-b780-bf79d73abb3f",
      "Mentioned":{
        "Name":"Dana Swope",
        "Address":"danas@contoso.onmicrosoft.com",
        "ExternalId":"72137a84-1a8b-4b92-aa06-cca538e8616b"
      },
      "MentionText":null,
      "ClientReference":null,
      "CreatedBy":{
        "Name":"Fanny Downs",
        "Address":"fannyd@contoso.onmicrosoft.com",
        "ExternalId":"266efe5a-0fd7-4edd-877b-b2d1e561f193"
      },
      "CreatedDateTime":"2016-07-21T07:40:20.152Z",
      "ServerCreatedDateTime":"2016-07-21T07:40:20.152Z",
      "DeepLink":null,
      "Application":null
    },
    {
      "@odata.id":"https://outlook.office.com/api/beta/Users('266efe5a-0fd7-4edd-877b-b2d1e561f193@ae01a323-3934-4475-a32d-af1274312bb0')/Messages('AQMkADJmMTUAAAgVZAAAA')/Mentions('7b94df1a-0086-482a-b0da-e62fae12f983')",
      "Id":"7b94df1a-0086-482a-b0da-e62fae12f983",
      "Mentioned":{
        "Name":"Randi Welch",
        "Address":"randiw@contoso.onmicrosoft.com",
        "ExternalId":"266efe5a-0fd7-4edd-877b-b2d1e561f193"
      },
      "MentionText":null,
      "ClientReference":null,
      "CreatedBy":{
        "Name":"Fanny Downs",
        "Address":"fannyd@contoso.onmicrosoft.com",
        "ExternalId":"266efe5a-0fd7-4edd-877b-b2d1e561f193"
      },
      "CreatedDateTime":"2016-07-21T07:40:20.158Z",
      "ServerCreatedDateTime":"2016-07-21T07:40:20.158Z",
      "DeepLink":null,
      "Application":null
    }
  ]
}

Supprimer une mention

Étendue minimale requise : l’une des suivantes :

Supprime la mention spécifiée dans le message spécifié dans la boîte aux lettres de l’utilisateur connecté.

DELETE https://outlook.office.com/api/beta/me/messages('{message_id}')/mentions('{mention_id}')
Paramètre requisTypeDescription
Paramètres URL
mention_idchaîneL’identifiant de la mention à supprimer.
message_idchaîneL’identifiant du message qui contient la mention.

Exemple de requête

DELETE https://outlook.office.com/api/beta/me/messages('AAMkADA1MTk1ZAAAKXBQCAAA=')/mentions('7b94df1a-0086-482a-b0da-e62fae12f983')

Exemple de réponse

Status code: 204 No Content

Cette fonctionnalité est actuellement disponible en version bêta. Pour en savoir plus, utilisez le contrôle dans le coin supérieur droit de l’article et sélectionnez bêta.

Cette fonctionnalité est actuellement disponible en version bêta. Pour en savoir plus, utilisez le contrôle dans le coin supérieur droit de l’article et sélectionnez bêta.


Gérer les règles (préversion)

Dans Outlook, vous pouvez configurer des règles pour les messages entrants dans la boîte de réception afin d’exécuter des actions spécifiques si certaines conditions sont réunies.

Par programmation, vous pouvez accéder aux règles via la propriété de navigation MessageRules du dossier de boîte de réception. Chaque règle est représentée par cette ressource MessageRule. Les actions de règle disponibles sont représentées par le type complexe MessageRuleActions. Les exceptions et les conditions de règle disponibles sont représentées par le type complexe MessageRulePredicates.

Créer des règles | Obtenir des règles | Mettre à jour des règles | Supprimer des règles

Créer des règles (préversion)

Étendue minimale requise : https://outlook.office.com/mailboxsettings.readwrite

Créez une règle en spécifiant un ensemble de conditions et d’actions. Outlook effectue ces actions si un message entrant dans la boîte de réception de l’utilisateur remplit les conditions spécifiées.

POST https://outlook.office.com/api/beta/me/mailfolders/inbox/messagerules

Voici les paramètres de corps généralement utilisés lors de la création de règles. Vous pouvez spécifier toute autre propriété modifiable MessageRule appropriée dans le corps de la requête.

Paramètres de corpsTypeDescription
ActionsMessageRuleActionsActions à effectuer sur un message lorsque les conditions correspondantes, le cas échéant, sont remplies. Obligatoire.
ConditionsMessageRulePredicatesConditions qui, lorsqu’elles sont remplies, déclenchent les actions correspondantes pour cette règle. Facultatif.
DisplayNameChaîneNom d’affichage de la règle. Obligatoire.
ExceptionsMessageRulePredicatesReprésente les conditions d’exception de la règle. Facultatif.
IsEnabledBooléenIndique si la règle peut être appliquée aux messages. Facultatif.
SequenceInt32Indique l’ordre dans lequel la règle est exécutée, parmi d’autres règles. Obligatoire.

Exemple de requête

La règle suivante transfère un message entrant à Alex Wilbur si le nom de l’expéditeur inclut le terme "adele".

POST https://outlook.office.com/api/beta/me/mailfolders/inbox/messagerules
Content-Type: application/json

{      
    "DisplayName": "From partner",      
    "Sequence": 2,      
    "IsEnabled": true,          
    "Conditions": {
        "SenderContains": [
          "adele"       
        ]
     },
     "Actions": {
        "ForwardTo": [
          {
             "EmailAddress": {
                "Name": "Alex Wilbur",
                "Address": "AlexW@MOD154847.onmicrosoft.com"
              }
           }
        ],
        "StopProcessingRules": true
     }    
}

Exemple de réponse

Status code: 201 Created

{
  "Id":"AQAAAJ5dZqA=",
  "DisplayName":"From partner",
  "Sequence":2,
  "IsEnabled":true,
  "HasError":false,
  "IsReadOnly":false,
  "Conditions":{
    "SenderContains":[
      "ADELE"
    ]
  },
  "Actions":{
      "StopProcessingRules":true,
      "ForwardTo":[
        {
          "EmailAddress":{
            "Name":"Alex Wilbur",
            "Address":"AlexW@MOD154847.onmicrosoft.com"
          }
        }
      ]
  }
}

Obtenir des règles (préversion)

Étendue minimale requise : https://outlook.office.com/mailboxsettings.read

Vous pouvez obtenir toutes les règles définies pour la boîte de réception de l’utilisateur ou obtenir une règle spécifique en spécifiant son ID.

Obtenez toutes les règles pour une boîte de réception

GET https://outlook.office.com/api/beta/me/mailfolders/inbox/messagerules

Exemple de requête

GET https://outlook.office.com/api/beta/me/mailfolders/inbox/messagerules

Exemple de réponse

Status code: 200 OK

{
  "@odata.context":"https://outlook.office.com/api/beta/$metadata#Me/MailFolders('inbox')/MessageRules",
  "value":[
    {
      "@odata.id":"https://outlook.office.com/api/beta/Users('94447c6e-ea4c-494c-a9ed-d905e366c5cb@007e925e-fb5a-4f60-9cb6-58a21e692480')/MailFolders('inbox')/MessageRules('AQAAAJ5dZp8=')",
      "Id":"AQAAAJ5dZp8=",
      "DisplayName":"Remove spam",
      "Sequence":1,
      "IsEnabled":true,
      "HasError":false,
      "IsReadOnly":false,
      "Conditions":{
        "SubjectContains":[
          "enter to win"
        ]
      },
      "Actions":{
        "Delete":true,
        "StopProcessingRules":true
      }
    },
    {
      "@odata.id":"https://outlook.office.com/api/beta/Users('94447c6e-ea4c-494c-a9ed-d905e366c5cb@007e925e-fb5a-4f60-9cb6-58a21e692480')/MailFolders('inbox')/MessageRules('AQAAAJ5dZqA=')",
      "Id":"AQAAAJ5dZqA=",
      "DisplayName":"From partner",
      "Sequence":2,
      "IsEnabled":true,
      "HasError":false,
      "IsReadOnly":false,
      "Conditions":{
        "SenderContains":[
          "ADELE"
        ]
      },
      "Actions":{
        "StopProcessingRules":true,
        "ForwardTo":[
          {
            "EmailAddress":{
              "Name":"Alex Wilbur",
              "Address":"AlexW@MOD154847.onmicrosoft.com"
            }
          }
        ]
      }
    }
  ]
}

Obtenir une règle spécifique

GET https://outlook.office.com/api/beta/me/mailfolders/inbox/messagerules('{rule_id}')
Paramètres URLTypeDescription
rule_idChaîneL’identifiant de la règle à obtenir.

Exemple de requête

GET https://outlook.office.com/api/beta/me/mailfolders/inbox/messagerules('AQAAAJ5dZqA=')

Exemple de réponse

Status code: 200 OK

{
  "@odata.context":"https://outlook.office.com/api/beta/$metadata#Me/MailFolders('inbox')/MessageRules/$entity",
  "@odata.id":"https://outlook.office.com/api/beta/Users('94447c6e-ea4c-494c-a9ed-d905e366c5cb@007e925e-fb5a-4f60-9cb6-58a21e692480')/MailFolders('inbox')/MessageRules('AQAAAJ5dZqA=')",
  "Id":"AQAAAJ5dZqA=",
  "DisplayName":"From partner",
  "Sequence":2,
  "IsEnabled":true,
  "HasError":false,
  "IsReadOnly":false,
  "Conditions":{
    "SenderContains":[
      "ADELE"
    ]
  },
  "Actions":{
      "StopProcessingRules":true,
      "ForwardTo":[
        {
          "EmailAddress":{
            "Name":"Alex Wilbur",
            "Address":"AlexW@MOD154847.onmicrosoft.com"
          }
        }
      ]
  }
}

Mettre à jour des règles (préversion)

Étendue minimale requise : https://outlook.office.com/mailboxsettings.readwrite

Modifiez les propriétés modifiables d’un message et enregistrez les modifications.

PATCH https://outlook.office.com/api/beta/me/mailfolders/inbox/messagerules('{rule_id}')
Paramètres URLTypeDescription
rule_idChaîneL’ID de la règle à mettre à jour.

Exemple de requête

L’exemple suivant modifie le nom de la règle et les actions à effectuer pour cette règle dans le dernier exemple, du transfert vers une adresse au marquage de son importance comme élevée.

PATCH https://outlook.office.com/api/beta/me/mailfolders/inbox/messagerules('AQAAAJ5dZqA=')
Content-Type: application/json

{
    "DisplayName": "Important from partner",
    "Actions": {
        "MarkImportance": "High"
     }
}   

Exemple de réponse

Status code: 200 OK

{
  "Id":"AQAAAJ5dZqA=",
  "DisplayName":"Important from partner",
  "Sequence":2,
  "IsEnabled":true,
  "HasError":false,
  "IsReadOnly":false,
  "Conditions":{
    "SenderContains":[
      "ADELE"
    ]
  },
  "Actions":{
      "MarkImportance": "High"
  }
}

Supprimer des règles (préversion)

Étendue minimale requise : https://outlook.office.com/mailboxsettings.readwrite

Supprimez la règle spécifiée.

DELETE https://outlook.office.com/api/beta/me/mailfolders/inbox/messagerules('{rule_id}')
Paramètres URLTypeDescription
rule_idChaîneL’ID de la règle à supprimer.

Exemple de requête

DELETE https://outlook.office.com/api/beta/me/mailfolders/inbox/messagerules('AQAAAJ5dZp8=')

Exemple de réponse

Status code: 204 No Content

Cette fonctionnalité est actuellement disponible en version bêta. Pour en savoir plus, utilisez le contrôle dans le coin supérieur droit de l’article et sélectionnez bêta.

Cette fonctionnalité est actuellement disponible en version bêta. Pour en savoir plus, utilisez le contrôle dans le coin supérieur droit de l’article et sélectionnez bêta.


Se désabonner (préversion)

Étendue minimale requise : l’une des suivantes :

Envoie une demande d’e-mail au nom de l’utilisateur connecté pour se désabonner d’une liste de distribution d’e-mail. Utilise l’information dans l’en-tête List-Unsubscribe.

POST https://outlook.office.com/api/beta/me/messages('{message_id}')/unsubscribe
Paramètre requisTypeDescription
Paramètres URL
message_idchaîneL’ID du brouillon de message à envoyer.

Les expéditeurs de messages peuvent utiliser les listes de diffusion de manière conviviale en incluant l’option permettant aux destinataires de se désabonner. Ils peuvent le faire en spécifiant un en-tête List-Unsubscribe dans chaque message selon le RFC-2369.

Remarque En particulier, pour que l’action Unsubscribe fonctionne, l’expéditeur doit spécifier mailto: et non des informations de désabonnement basées sur des URL.

La définition de cet en-tête donnerait également à la propriété UnsubscribeEnabled de l’instance Message la valeur true, et la propriété UnsubscribeData aux données de l’en-tête.

Si la propriété UnsubscribeEnabled d’un message est true, vous pouvez utiliser l’action Unsubscribe pour désabonner l’utilisateur de futurs messages similaires gérés par l’expéditeur du message.

Une action Unsubscribe réussie déplace le message dans le dossier Éléments supprimés. L’exclusion réelle de l’utilisateur de la future distribution de courrier est gérée par l’expéditeur.

Exemple de requête

POST https://outlook.office.com/api/beta/me/messages('AAMkADA1MTk1ZAAAKXBQCAAA=')/unsubscribe

Exemple de réponse

Status code: 202 Accepted

Cette fonctionnalité est actuellement disponible en version bêta. Pour en savoir plus, utilisez le contrôle dans le coin supérieur droit de l’article et sélectionnez bêta.

Cette fonctionnalité est actuellement disponible en version bêta. Pour en savoir plus, utilisez le contrôle dans le coin supérieur droit de l’article et sélectionnez bêta.


Obtenez des choix de langue (préversion)

L’un des champs d’application suivants est requis au minimum :

Obtenez la liste des langues et des paramètres régionaux pris en charge pour l’utilisateur, comme configuré sur le serveur de boîte aux lettres de l’utilisateur.

La langue préférée de l’utilisateur est sélectionnée dans cette liste prise en charge. Par la suite, vous pouvez obtenir la langue par défaut en obtenant les paramètres de boîte aux lettres de l’utilisateur.

GET https://outlook.office.com/api/beta/me/SupportedLanguages

Type de réponse

Collection de LocaleInfo.

Exemple de requête

GET https://outlook.office.com/api/beta/me/SupportedLanguages

Exemple de réponse

L’exemple de réponse ci-dessous est tronqué par souci de concision pour se concentrer sur le format JSON de la réponse.

Status code: 200

{
  "@odata.context":"https://outlook.office.com/api/beta/$metadata#Collection(Microsoft.OutlookServices.LocaleInfo)",
  "value":[
    {
      "Locale":"af-ZA",
      "DisplayName":"Afrikaans (Suid-Afrika)"
    },
    {
      "Locale":"en-US",
      "DisplayName":"English (United States)"
    },
    {
       "Locale":"en-CA",
       "DisplayName":"English (Canada)"
    }
  ]
}

Cette fonctionnalité est actuellement disponible uniquement en version bêta. Pour en savoir plus, utilisez le contrôle dans le coin supérieur droit de l’article et sélectionnez bêta.

Cette fonctionnalité est actuellement disponible uniquement en version bêta. Pour en savoir plus, utilisez le contrôle dans le coin supérieur droit de l’article et sélectionnez bêta.


Obtenez les choix de fuseau horaire (préversion)

L’un des champs d’application suivants est requis au minimum :

Obtenez la liste des fuseaux horaires pris en charge pour l’utilisateur, comme configuré sur le serveur de boîte aux lettres de l’utilisateur.

Vous pouvez spécifier que les fuseaux horaires doivent être renvoyés au format de fuseau horaire Windows ou IANA (Internet Assigned Numbers Authority), également appelé fuseau horaire Olson. Si vous ne spécifiez pas de format, les fuseaux horaires sont renvoyés dans le format de fuseau horaire Windows.

Le fuseau horaire préféré de l’utilisateur est sélectionnée dans cette liste prise en charge. Vous pouvez obtenir le fuseau horaire préféré en obtenant les paramètres de boîte aux lettres de l’utilisateur.

GET https://outlook.office.com/api/beta/me/SupportedTimeZones(TimeZoneStandard='{timezone_format}')
Paramètre facultatifTypeDescription
Paramètres URL
timezone_formatTimeZoneStandardFormat de fuseau horaire. Les valeurs prises en charge sont : Windows et Iana.

Type de réponse

Collection de TimeZoneInformation.

Exemple de requête

L’exemple suivant obtient la liste des fuseaux horaires pris en charge pour l’utilisateur connecté au format Windows.

GET https://outlook.office.com/api/beta/me/SupportedTimeZones(TimeZoneStandard='Windows')

Exemple de réponse

L’exemple de réponse ci-dessous est tronqué par souci de concision pour se concentrer sur le format JSON de la réponse.

Status code: 200

{
  "@odata.context":"https://outlook.office.com/api/beta/$metadata#Collection(Microsoft.OutlookServices.TimeZoneInformation)",
  "value":[
    {
      "Alias":"Dateline Standard Time",
      "DisplayName":"(UTC-12:00) International Date Line West"
    },
    {
      "Alias":"Samoa Standard Time",
      "DisplayName":"(UTC+13:00) Samoa"
    },
    {
       "Alias":"UTC-11",
       "DisplayName":"(UTC-11:00) Coordinated Universal Time-11"
    },
    {
      "Alias":"Aleutian Standard Time",
      "DisplayName":"(UTC-10:00) Aleutian Islands"
    }
  ]
}

Exemple de requête

L’exemple suivant obtient la liste des fuseaux horaires pris en charge au format IANA.

GET https://outlook.office.com/api/beta/me/SupportedTimeZones(TimeZoneStandard='Iana')

Exemple de réponse

L’exemple de réponse ci-dessous est tronqué par souci de concision pour se concentrer sur le format JSON de la réponse.

Status code: 200

{
  "@odata.context":"https://outlook.office.com/api/beta/$metadata#Collection(Microsoft.OutlookServices.TimeZoneInformation)",
  "value":[
    {
      "Alias":"Etc/GMT+12",
      "DisplayName":"Etc/GMT+12"
    },
    {
      "Alias":"US/Samoa",
      "DisplayName":"US/Samoa"
    },
    {
      "Alias":"Etc/GMT+11",
      "DisplayName":"Etc/GMT+11"
    },
    {
      "Alias":"US/Aleutian",
      "DisplayName":"US/Aleutian"
    }
  ]
}

Cette fonctionnalité est actuellement disponible uniquement en version bêta. Pour en savoir plus, utilisez le contrôle dans le coin supérieur droit de l’article et sélectionnez bêta.

Cette fonctionnalité est actuellement disponible uniquement en version bêta. Pour en savoir plus, utilisez le contrôle dans le coin supérieur droit de l’article et sélectionnez bêta.


Obtenir des paramètres de boîte aux lettres

Étendue minimale requise : https://outlook.office.com/mailboxsettings.read

Obtenez les paramètres de la boîte aux lettres principale de l’utilisateur. Des exemples de paramètres incluent la langue préférée de l’utilisateur et le fuseau horaire par défaut, ainsi que tous les paramètres de réponse automatique.

La langue et le fuseau horaire préférés de l’utilisateur font partie des choix avec lesquels le serveur de boîte aux lettres a été configuré. Vous pouvez obtenir les listes des langues prises en charge et des fuseaux horaires pris en charge pour l’utilisateur.

GET https://outlook.office.com/api/beta/me/MailboxSettings

Type de réponse

MailboxSettings.

Pour obtenir uniquement le paramètre de langue préféré parmi tous les paramètres de boîte aux lettres :

GET https://outlook.office.com/api/beta/me/MailboxSettings/Language

Type de réponse

LocaleInfo.

Pour obtenir uniquement le paramètre de fuseau horaire préféré parmi tous les paramètres de boîte aux lettres :

GET https://outlook.office.com/api/beta/me/MailboxSettings/TimeZone

Type de réponse

Chaîne représentant le fuseau horaire préféré au format de fuseau horaire Windows.

Vous pouvez aussi obtenir spécifiquement les paramètres de réponse automatique.

Exemple de requête

L’exemple suivant obtient tous les paramètres de boîte aux lettres pour l’utilisateur connecté.

GET https://outlook.office.com/api/beta/me/MailboxSettings

Exemple de réponse

Status code: 200

{
    "@odata.context": "https://outlook.office.com/api/beta/$metadata#Me/MailboxSettings",
    "AutomaticRepliesSetting": {
        "Status": "Scheduled",
        "ExternalAudience": "All",
        "ScheduledStartDateTime": {
            "DateTime": "2016-03-14T07:00:00.0000000",
            "TimeZone": "UTC"
        },
        "ScheduledEndDateTime": {
            "DateTime": "2016-03-28T07:00:00.0000000",
            "TimeZone": "UTC"
        },
        "InternalReplyMessage": "<html>\n<body>\n<p>I'm at our company's worldwide reunion and will respond to your message as soon as I return.<br>\n</p></body>\n</html>\n",
        "ExternalReplyMessage": "<html>\n<body>\n<p>I'm at the Contoso worldwide reunion and will respond to your message as soon as I return.<br>\n</p></body>\n</html>\n"
    },
    "TimeZone": "Pacific Standard Time",
    "Language":{
        "Locale":"en-US",
        "DisplayName":"English (United States)"
    }
}

Étendue minimale requise : https://outlook.office.com/mailboxsettings.read

Obtenez les paramètres de la boîte aux lettres principale de l’utilisateur connecté. Des exemples de paramètres incluent la langue préférée de l’utilisateur et le fuseau horaire par défaut, ainsi que tous les paramètres de réponse automatique.

GET https://outlook.office.com/api/v2.0/me/MailboxSettings

Type de réponse

MailboxSettings.

Pour obtenir uniquement le paramètre de langue préféré parmi tous les paramètres de boîte aux lettres :

GET https://outlook.office.com/api/beta/me/MailboxSettings/Language

Type de réponse

LocaleInfo.

Pour obtenir uniquement le paramètre de fuseau horaire préféré parmi tous les paramètres de boîte aux lettres :

GET https://outlook.office.com/api/beta/me/MailboxSettings/TimeZone

Type de réponse

Chaîne représentant le fuseau horaire préféré au format de fuseau horaire Windows.

Vous pouvez aussi obtenir spécifiquement les paramètres de réponse automatique.

Exemple de requête

L’exemple suivant obtient tous les paramètres de boîte aux lettres pour l’utilisateur connecté.

GET https://outlook.office.com/api/v2.0/me/MailboxSettings

Exemple de réponse

Status code: 200

{
    "@odata.context": "https://outlook.office.com/api/v2.0/$metadata#Me/MailboxSettings",
    "AutomaticRepliesSetting": {
        "Status": "Scheduled",
        "ExternalAudience": "All",
        "ScheduledStartDateTime": {
            "DateTime": "2016-03-14T07:00:00.0000000",
            "TimeZone": "UTC"
        },
        "ScheduledEndDateTime": {
            "DateTime": "2016-03-28T07:00:00.0000000",
            "TimeZone": "UTC"
        },
        "InternalReplyMessage": "<html>\n<body>\n<p>I'm at our company's worldwide reunion and will respond to your message as soon as I return.<br>\n</p></body>\n</html>\n",
        "ExternalReplyMessage": "<html>\n<body>\n<p>I'm at the Contoso worldwide reunion and will respond to your message as soon as I return.<br>\n</p></body>\n</html>\n"
    },
    "TimeZone": "Pacific Standard Time",
    "Language":{
        "Locale":"en-US",
        "DisplayName":"English (United States)"
    }
}

Cette fonctionnalité est actuellement disponible pour les versions v2.0 et bêta. Pour en savoir plus, utilisez le contrôle dans le coin supérieur droit de l’article et sélectionnez l’une de ces versions.


Obtenir les paramètres de réponse automatique

Étendue minimale requise : https://outlook.office.com/mailboxsettings.read

Obtenez les paramètres de réponse automatique de la boîte aux lettres de l’utilisateur connecté.

Les réponses automatiques vous permettent d’informer automatiquement les personnes avec un message lorsqu’elles vous envoient un e-mail. Par exemple, vous pouvez les avertir lorsque vous n’êtes pas disponible et que vous ne pouvez pas y répondre.

Les réponses automatiques font partie des paramètres de boîte aux lettres de l’utilisateur (représentés par MailboxSettings). Vous pouvez afficher les paramètres des réponses automatiques en obtenant tous les paramètres de boîte aux lettres, qui incluent les paramètres de réponses automatiques, ou en obtenant spécifiquement les paramètres de réponses automatiques.

Vous pouvez utiliser l’en-tête HTTP Prefer: outlook.timezone pour spécifier le fuseau horaire préféré pour afficher les valeurs ScheduledStartDateTime et ScheduledEndDateTime.

GET https://outlook.office.com/api/beta/me/MailboxSettings/AutomaticRepliesSetting

Type de réponse

AutomaticRepliesSetting.

Exemple de requête

GET https://outlook.office.com/api/beta/me/MailboxSettings/AutomaticRepliesSetting

Exemple de réponse

Status code: 200

{
    "@odata.context": "https://outlook.office.com/api/beta/$metadata#Me/MailboxSettings/AutomaticRepliesSetting",
    "Status": "AlwaysEnabled",
    "ExternalAudience": "None",
    "ScheduledStartDateTime": {
        "DateTime": "2016-03-19T02:00:00.0000000",
        "TimeZone": "UTC"
    },
    "ScheduledEndDateTime": {
        "DateTime": "2016-03-20T02:00:00.0000000",
        "TimeZone": "UTC"
    },
    "InternalReplyMessage": "<html>\n<body>\n<p>I'm at our company's worldwide reunion and will respond to your message as soon as I return.<br>\n</p></body>\n</html>\n",
    "ExternalReplyMessage": "<html>\n<body>\n<p>I'm at the Contoso worldwide reunion and will respond to your message as soon as I return.<br>\n</p></body>\n</html>\n"
}

Étendue minimale requise : https://outlook.office.com/mailboxsettings.read

Obtenez les paramètres de réponse automatique de la boîte aux lettres de l’utilisateur connecté.

Les réponses automatiques vous permettent d’informer automatiquement les personnes avec un message lorsqu’elles vous envoient un e-mail. Par exemple, vous pouvez les avertir lorsque vous n’êtes pas disponible et que vous ne pouvez pas y répondre.

Les réponses automatiques font partie des paramètres de boîte aux lettres de l’utilisateur (représentés par MailboxSettings). Vous pouvez afficher les paramètres des réponses automatiques en obtenant tous les paramètres de boîte aux lettres, qui incluent les paramètres de réponses automatiques, ou en obtenant spécifiquement les paramètres de réponses automatiques.

Vous pouvez utiliser l’en-tête HTTP Prefer: outlook.timezone pour spécifier le fuseau horaire préféré pour afficher les valeurs ScheduledStartDateTime et ScheduledEndDateTime.

GET https://outlook.office.com/api/v2.0/me/MailboxSettings/AutomaticRepliesSetting

Type de réponse

AutomaticRepliesSetting.

Exemple de requête

GET https://outlook.office.com/api/v2.0/me/MailboxSettings/AutomaticRepliesSetting

Exemple de réponse

Status code: 200

{
    "@odata.context": "https://outlook.office.com/api/v2.0/$metadata#Me/MailboxSettings/AutomaticRepliesSetting",
    "Status": "AlwaysEnabled",
    "ExternalAudience": "None",
    "ScheduledStartDateTime": {
        "DateTime": "2016-03-19T02:00:00.0000000",
        "TimeZone": "UTC"
    },
    "ScheduledEndDateTime": {
        "DateTime": "2016-03-20T02:00:00.0000000",
        "TimeZone": "UTC"
    },
    "InternalReplyMessage": "<html>\n<body>\n<p>I'm at our company's worldwide reunion and will respond to your message as soon as I return.<br>\n</p></body>\n</html>\n",
    "ExternalReplyMessage": "<html>\n<body>\n<p>I'm at the Contoso worldwide reunion and will respond to your message as soon as I return.<br>\n</p></body>\n</html>\n"
}

Cette fonctionnalité est actuellement disponible pour les versions v2.0 et bêta. Pour en savoir plus, utilisez le contrôle dans le coin supérieur droit de l’article et sélectionnez l’une de ces versions.


Mettre à jour les paramètres de réponse automatique

Étendue minimale requise : https://outlook.office.com/mailboxsettings.readwrite

Les réponses automatiques font partie des paramètres de boîte aux lettres de l’utilisateur (représentés par MailboxSettings). Vous pouvez activer, configurer ou désactiver les réponses automatiques en mettant à jour les paramètres de boîte aux lettres correspondants.

Remarque Vous ne pouvez pas créer ni supprimer des paramètres de boîte aux lettres.

PATCH https://outlook.office.com/api/beta/me/MailboxSettings

Type de réponse

MailboxSettings.

Exemple de requête

Suivant l’exemple précédent montrant comment obtenir les paramètres de réponses automatiques, l’exemple suivant change le Status de AlwaysEnabled en Scheduledet les dates de début et de fin à une plage de dates différente.

PATCH https://outlook.office.com/api/beta/me/MailboxSettings
Content-Type: application/json

{
    "@odata.context": "https://outlook.office.com/api/beta/$metadata#Me/MailboxSettings",
    "AutomaticRepliesSetting": {
        "Status": "Scheduled",
        "ScheduledStartDateTime": {
          "DateTime": "2016-03-20T18:00:00.0000000",
          "TimeZone": "UTC"
        },
        "ScheduledEndDateTime": {
          "DateTime": "2016-03-28T18:00:00.0000000",
          "TimeZone": "UTC"
        }
    }
}

Exemple de réponse

Status code: 200

{
    "@odata.context": "https://outlook.office.com/api/beta/$metadata#Me/MailboxSettings",
    "AutomaticRepliesSetting": {
        "Status": "Scheduled",
        "ExternalAudience": "None",
        "ScheduledStartDateTime": {
            "DateTime": "2016-03-20T02:00:00.0000000",
            "TimeZone": "UTC"
        },
        "ScheduledEndDateTime": {
            "DateTime": "2016-03-28T02:00:00.0000000",
            "TimeZone": "UTC"
        },
    "InternalReplyMessage": "<html>\n<body>\n<p>I'm at our company's worldwide reunion and will respond to your message as soon as I return.<br>\n</p></body>\n</html>\n",
    "ExternalReplyMessage": "<html>\n<body>\n<p>I'm at the Contoso worldwide reunion and will respond to your message as soon as I return.<br>\n</p></body>\n</html>\n"
    },
    "TimeZone": "Pacific Standard Time",
    "Language":{
        "Locale":"en-US",
        "DisplayName":"English (United States)"
    }
}

Étendue minimale requise : https://outlook.office.com/mailboxsettings.readwrite

Les réponses automatiques font partie des paramètres de boîte aux lettres de l’utilisateur (représentés par MailboxSettings). Vous pouvez activer, configurer ou désactiver les réponses automatiques en mettant à jour les paramètres de boîte aux lettres correspondants.

Remarque Vous ne pouvez pas créer ni supprimer des paramètres de boîte aux lettres.

PATCH https://outlook.office.com/api/v2.0/me/MailboxSettings

Type de réponse

MailboxSettings.

Exemple de requête

Suivant l’exemple précédent montrant comment obtenir les paramètres de réponses automatiques, l’exemple suivant change le Status de AlwaysEnabled en Scheduledet les dates de début et de fin à une plage de dates différente.

PATCH https://outlook.office.com/api/v2.0/me/MailboxSettings
Content-Type: application/json

{
    "@odata.context": "https://outlook.office.com/api/v2.0/$metadata#Me/MailboxSettings",
    "AutomaticRepliesSetting": {
        "Status": "Scheduled",
        "ScheduledStartDateTime": {
          "DateTime": "2016-03-20T18:00:00.0000000",
          "TimeZone": "UTC"
        },
        "ScheduledEndDateTime": {
          "DateTime": "2016-03-28T18:00:00.0000000",
          "TimeZone": "UTC"
        }
    }
}

Exemple de réponse

Status code: 200

{
    "@odata.context": "https://outlook.office.com/api/v2.0/$metadata#Me/MailboxSettings",
    "AutomaticRepliesSetting": {
        "Status": "Scheduled",
        "ExternalAudience": "None",
        "ScheduledStartDateTime": {
            "DateTime": "2016-03-20T02:00:00.0000000",
            "TimeZone": "UTC"
        },
        "ScheduledEndDateTime": {
            "DateTime": "2016-03-28T02:00:00.0000000",
            "TimeZone": "UTC"
        },
    "InternalReplyMessage": "<html>\n<body>\n<p>I'm at our company's worldwide reunion and will respond to your message as soon as I return.<br>\n</p></body>\n</html>\n",
    "ExternalReplyMessage": "<html>\n<body>\n<p>I'm at the Contoso worldwide reunion and will respond to your message as soon as I return.<br>\n</p></body>\n</html>\n"
    },
    "TimeZone": "Pacific Standard Time",
    "Language":{
        "Locale":"en-US",
        "DisplayName":"English (United States)"
    }
}

Cette fonctionnalité est actuellement disponible dans les version bêta et V2.0. Pour en savoir plus, utilisez le contrôle dans le coin supérieur droit de l’article et sélectionnez l’une de ces versions.


Obtenir des Infos-courriers (préversion)

Étendue minimale requise : l’une des suivantes :

Obtenez les infos-courrier d’un ou de plusieurs destinataires disponibles pour l’utilisateur connecté. Notez que ceci est effectué comme une opération POST pour une action GetMailTips.

POST https://outlook.office.com/api/beta/me/GetMailTips
Paramètre requisTypeDescription
Paramètres de corps
EmailAddressesCollection(String)Une collection d’adresses SMTP de destinataires pour lesquels obtenir des infos-courriers.
MailTipsOptionsMailTipsTypeLes types d'infos-courriers à obtenir pour les destinataires spécifiés.

Type de réponse

Collection de MailTips.

Exemple de requête

L’exemple suivant obtient des infos-courrier pour les destinataires spécifiés, pour tous les paramètres de réponse automatique et l’état complet de la boîte aux lettres.

POST https://outlook.office.com/api/beta/me/GetMailTips
Content-Type: application/json

{
    "EmailAddresses": [
        "danas@contoso.onmicrosoft.com", 
        "fannyd@contoso.onmicrosoft.com"
    ],
    "MailTipsOptions": "AutomaticReplies, MailboxFullStatus"
}

Exemple de réponse

Status code: 200 OK

{
    "@odata.context":"https://outlook.office.com/api/beta/$metadata#Collection(Microsoft.OutlookServices.MailTips)",
    "value":[
        {
            "EmailAddress":{
                "Name":"",
                "Address":"danas@contoso.onmicrosoft.com"
            },
            "AutomaticReplies":{
                "Message":"<style type=\"text/css\" style=\"\">\r\n<!--\r\np\r\n\t{margin-top:0;\r\n\tmargin-bottom:0}\r\n-->\r\n</style>\r\n<div dir=\"ltr\">\r\n<div id=\"x_divtagdefaultwrapper\" style=\"font-size:12pt; color:#000000; background-color:#FFFFFF; font-family:Calibri,Arial,Helvetica,sans-serif\">\r\n<p>Hi, I am on vacation right now. I'll get back to you after I return.<br>\r\n</p>\r\n</div>\r\n</div>",
                "MessageLanguage":{
                    "Locale":"en-US",
                    "DisplayName":"English (United States)"
                }
            },
            "MailboxFull":false
        },
        {
            "EmailAddress":{
                "Name":"",
                "Address":"fannyd@contoso.onmicrosoft.com"
            },
            "AutomaticReplies":{
                "Message":""
            },
            "MailboxFull":false
        }
    ]
}

Cette fonctionnalité est actuellement disponible en version bêta. Pour en savoir plus, utilisez le contrôle dans le coin supérieur droit de l’article et sélectionnez bêta.

Cette fonctionnalité est actuellement disponible en version bêta. Pour en savoir plus, utilisez le contrôle dans le coin supérieur droit de l’article et sélectionnez bêta.


Obtention de pièces jointes

Vous pouvez obtenir une collection de pièces jointes ou une pièce jointe. Les pièces jointes peuvent être des fichiers (par exemple,

Obtenir une collection de pièces jointes | Obtenir une pièce jointe

Obtenir une collection de pièces jointes

Étendue minimale requise : l’une des suivantes :

Obtenez les pièces jointes d’un message particulier.

GET https://outlook.office.com/api/beta/me/messages/{message_id}/attachments
Paramètre requisTypeDescription
Paramètres URL
message_idchaîneL’ID du message.

Remarque Par défaut, chaque pièce jointe de la réponse inclut toutes ses propriétés correspondant à ce type de pièce jointe. Utilisez $select pour spécifier uniquement les propriétés dont vous avez besoin pour de meilleurs niveaux de performance. La propriété Id est toujours renvoyée. Voir Paramètres de requête OData pour les paramètres de filtrage, de tri et de pagination.

Type de réponse

Une collection de pièces jointes pouvant être de type FileAttachment, ItemAttachment ou ReferenceAttachment.

Exemples de requêtes et de réponses

L’exemple suivant montre comment utiliser $select pour spécifier ne renvoyer que la propriété Name de chaque pièce jointe dans la réponse. Reportez-vous à l’exemple de réponse dans Obtenir une pièce jointe pour avoir une liste complète des propriétés qui seraient renvoyées pour une pièce jointe si vous n’utilisez pas $select.

Exemple de requête

GET https://outlook.office.com/api/beta/me/messages/AAMkAGI2THVSAAA=/attachments?$select=Name

Exemple de réponse

Status code: 200

{
    "@odata.context": "https://outlook.office.com/api/beta/$metadata#Me/Messages('AAMkAGI2THVSAAA%3D')/Attachments(Name)",
    "value": [
        {
            "@odata.type": "#Microsoft.OutlookServices.FileAttachment",
            "@odata.id": "https://outlook.office.com/api/beta/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/Messages('AAMkAGI2THVSAAA=')/Attachments('AAMkAGI2j4kShdM=')",
            "Id": "AAMkAGI2j4kShdM=",
            "Name": "minutes.docx"
        }
    ]
}

L’exemple suivant montre l’obtention de la seule pièce jointe qui est un élément de courrier Outlook. La réponse inclut un ID de pièce jointe qui est également l’ID du message joint.

GET https://outlook.office.com/api/beta/me/messages('AAMkADFiNTPAAA=')/attachments

Content-Type: application/json

{
  "@odata.context": "https://outlook.office.com/api/beta/$metadata#Me/Messages('AAMkADFiNTPAAA%3D')/Attachments",
  "value": [
    {
      "@odata.type": "#Microsoft.OutlookServices.ItemAttachment",
      "@odata.id": "https://outlook.office.com/api/beta/Users('ddfcd489-628b-40d7-b48b-20075df800e5@1717622f-1d94-4d0c-9d74-f907ad6677b4')/Messages('AAMkADFiNTPAAA=')/Attachments('AAMkADFiNTAUhhYuYi0=')",
      "Id": "AAMkADFiNTAUhhYuYi0=",
      "Name": "How to retrieve item attachment using Outlook REST API",
      "ContentType": message/rfc822,
      "Size": 71094,
      "IsInline": false,
      "LastModifiedDateTime": "2015-09-24T05:57:59Z",
    }
  ]
}
GET https://outlook.office.com/api/v2.0/me/messages/{message_id}/attachments
Paramètre requisTypeDescription
Paramètres URL
message_idchaîneL’ID du message.

Remarque Par défaut, chaque pièce jointe de la réponse inclut toutes ses propriétés correspondant à ce type de pièce jointe. Utilisez $select pour spécifier uniquement les propriétés dont vous avez besoin pour de meilleurs niveaux de performance. La propriété Id est toujours renvoyée. Voir Paramètres de requête OData pour les paramètres de filtrage, de tri et de pagination.

Type de réponse

Une collection de pièces jointes pouvant être de type FileAttachment ou ItemAttachment.

Exemples de requêtes et de réponses

L’exemple suivant montre comment utiliser $select pour spécifier ne renvoyer que la propriété Name de chaque pièce jointe dans la réponse. Reportez-vous à l’exemple de réponse dans Obtenir une pièce jointe pour avoir une liste complète des propriétés qui seraient renvoyées pour une pièce jointe si vous n’utilisez pas $select.

Exemple de requête

GET https://outlook.office.com/api/v2.0/me/messages/AAMkAGI2THVSAAA=/attachments?$select=Name

Exemple de réponse

Status code: 200

{
    "@odata.context": "https://outlook.office.com/api/v2.0/$metadata#Me/Messages('AAMkAGI2THVSAAA%3D')/Attachments(Name)",
    "value": [
        {
            "@odata.type": "#Microsoft.OutlookServices.FileAttachment",
            "@odata.id": "https://outlook.office.com/api/v2.0/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/Messages('AAMkAGI2THVSAAA=')/Attachments('AAMkAGI2j4kShdM=')",
            "Id": "AAMkAGI2j4kShdM=",
            "Name": "minutes.docx"
        }
    ]
}

L’exemple suivant montre l’obtention de la seule pièce jointe qui est un élément de courrier Outlook. La réponse inclut un ID de pièce jointe qui est également l’ID du message joint.

GET https://outlook.office.com/api/v2.0/me/messages('AAMkADFiNTPAAA=')/attachments

Content-Type: application/json

{
  "@odata.context": "https://outlook.office.com/api/v2.0/$metadata#Me/Messages('AAMkADFiNTPAAA%3D')/Attachments",
  "value": [
    {
      "@odata.type": "#Microsoft.OutlookServices.ItemAttachment",
      "@odata.id": "https://outlook.office.com/api/v2.0/Users('ddfcd489-628b-40d7-b48b-20075df800e5@1717622f-1d94-4d0c-9d74-f907ad6677b4')/Messages('AAMkADFiNTPAAA=')/Attachments('AAMkADFiNTAUhhYuYi0=')",
      "Id": "AAMkADFiNTAUhhYuYi0=",
      "Name": "How to retrieve item attachment using Outlook REST API",
      "ContentType": message/rfc822,
      "Size": 71094,
      "IsInline": false,
      "LastModifiedDateTime": "2015-09-24T05:57:59Z",
    }
  ]
}
GET https://outlook.office.com/api/v1.0/me/messages/{message_id}/attachments
Paramètre requisTypeDescription
Paramètres URL
message_idchaîneL’ID du message.

Remarque Par défaut, chaque pièce jointe de la réponse inclut toutes ses propriétés correspondant à ce type de pièce jointe. Utilisez $select pour spécifier uniquement les propriétés dont vous avez besoin pour de meilleurs niveaux de performance. La propriété Id est toujours renvoyée. Voir Paramètres de requête OData pour les paramètres de filtrage, de tri et de pagination.

Type de réponse

Une collection de pièces jointes pouvant être de type FileAttachment ou ItemAttachment.

Exemples de requêtes et de réponses

L’exemple suivant montre comment utiliser $select pour spécifier ne renvoyer que la propriété Name de chaque pièce jointe dans la réponse. Reportez-vous à l’exemple de réponse dans Obtenir une pièce jointe pour avoir une liste complète des propriétés qui seraient renvoyées pour une pièce jointe si vous n’utilisez pas $select.

Exemple de requête

GET https://outlook.office.com/api/v1.0/me/messages/AAMkAGI2NGVhZTVlLTI1OGMtNDI4My1iZmE5LTA5OGJiZGEzMTc0YQBGAAAAAADUuTJK1K9aTpCdqXop_4NaBwCd9nJ-tVysQos2hTfspaWRAAAAAAEMAACd9nJ-tVysQos2hTfspaWRAAADTHVSAAA=/attachments?$select=Name

Exemple de réponse

Code d’état : 200

{
  "@odata.context": "https://outlook.office.com/api/v1.0/$metadata#Me/Messages('AAMkAGI2NGVhZTVlLTI1OGMtNDI4My1iZmE5LTA5OGJiZGEzMTc0YQBGAAAAAADUuTJK1K9aTpCdqXop_4NaBwCd9nJ-tVysQos2hTfspaWRAAAAAAEMAACd9nJ-tVysQos2hTfspaWRAAADTHVSAAA%3D')/Attachments",
  "value": [
    {
      "@odata.type": "#Microsoft.OutlookServices.FileAttachment",
      "@odata.id": "https://outlook.office.com/api/v1.0/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/Events('AAMkAGE4v1RAAA=')",
      "Id": "AAMkAGI2NGVhZTVlLTI1OGMtNDI4My1iZmE5LTA5OGJiZGEzMTc0YQBGAAAAAADUuTJK1K9aTpCdqXop_4NaBwCd9nJ-tVysQos2hTfspaWRAAAAAAEMAACd9nJ-tVysQos2hTfspaWRAAADTHVSAAABEgAQANQEWV4bM8FIlPwxj4kShdM=",
      "Name": "minutes.docx",
      "ContentType": "application/vnd.openxmlformats-officedocument.wordprocessingml.document",
      "Size": 11585,
      "IsInline": false,
      "DateTimeLastModified": "2014-10-20T00:41:52Z",
      "ContentId": null,
      "ContentLocation": null,
      "IsContactPhoto": false,
      "ContentBytes": "UEsDBBQABgAIAAAAIQDCAAA4KQAAAAA="
    }
  ]
}

L’exemple suivant montre l’obtention de la seule pièce jointe qui est un élément de courrier Outlook. La réponse inclut un ID de pièce jointe qui est également l’ID du message joint.

GET https://outlook.office.com/api/v1.0/me/messages('AAMkADFiNTPAAA=')/attachments

Content-Type: application/json

{
  "@odata.context": "https://outlook.office.com/api/v1.0/$metadata#Me/Messages('AAMkADFiNTPAAA%3D')/Attachments",
  "value": [
    {
      "@odata.type": "#Microsoft.OutlookServices.ItemAttachment",
      "@odata.id": "https://outlook.office.com/api/v1.0/Users('ddfcd489-628b-40d7-b48b-20075df800e5@1717622f-1d94-4d0c-9d74-f907ad6677b4')/Messages('AAMkADFiNTPAAA=')/Attachments('AAMkADFiNTAUhhYuYi0=')",
      "Id": "AAMkADFiNTAUhhYuYi0=",
      "Name": "How to retrieve item attachment using Outlook REST API",
      "ContentType": message/rfc822,
      "Size": 71094,
      "IsInline": false,
      "DateTimeLastModified": "2015-09-24T05:57:59Z",
    }
  ]
}

Obtenir une pièce jointe

Étendue minimale requise : l’une des suivantes :

Obtenir une pièce jointe d’un message particulier.

GET https://outlook.office.com/api/beta/me/messages/{message_id}/attachments/{attachment_id}

Remarque Voir Paramètres de requête OData pour les paramètres de filtrage, de tri et de pagination.

Paramètre requisTypeDescription
Paramètres URL
message_idchaîneL’ID du message.
attachment_idchaîneID de la pièce jointe.

Remarque Par défaut, la réponse inclut toutes les propriétés de la pièce jointe. Utilisez $select pour spécifier uniquement les propriétés dont vous avez besoin pour de meilleurs niveaux de performance. Consultez Obtenir une collection de pièces jointes pour voir un exemple.
La propriété Id est toujours renvoyée. Voir Paramètres de requête OData pour les paramètres de filtrage, de tri et de pagination.

Type de réponse

Le fichier joint, l’élément joint, ou la référence jointe demandés.

Exemple de requête (fichier joint)

L’exemple suivant obtient le fichier joint à un message spécifique.

GET https://outlook.office.com/api/beta/me/messages/AAMkAGI2THVSAAA=/attachments/AAMkAGI2j4kShdM=

Exemple de réponse

Status code: 200

{
    "@odata.context": "https://outlook.office.com/api/beta/$metadata#Me/Messages('AAMkAGI2THVSAAA%3D')/Attachments/$entity",
    "@odata.type": "#Microsoft.OutlookServices.FileAttachment",
    "@odata.id": "https://outlook.office.com/api/beta/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/Messages('AAMkAGI2THVSAAA=')/Attachments('AAMkAGI2j4kShdM=')",
    "Id": "AAMkAGI2j4kShdM=",
    "LastModifiedDateTime": "2014-10-20T00:41:52Z",
    "Name": "minutes.docx",
    "ContentType": "application/vnd.openxmlformats-officedocument.wordprocessingml.document",
    "Size": 11585,
    "IsInline": false,
    "ContentId": null,
    "ContentLocation": null,
    "ContentBytes": "UEsDBBQABgAIAAAAIQDCAAA4KQAAAAA="
}

Exemple de requête (référence jointe)

L’exemple suivant obtient la référence jointe d’un message.

GET https://outlook.office.com/api/beta/me/messages/AAMkAGE1Mbs88AADUv0uFAAA=/attachments/AAMkAGE1Mbs88AADUv0uFAAABEgAQAPSg72tgf7hJp0PICVGCc0g=

Exemple de réponse

Status code: 200

{
  "@odata.context": "https://outlook.office.com/api/beta/$metadata#users('ddfcd489-628b-40d7-b48b-57002df800e5')/messages('AAMkAGE1Mbs88AADUv0uFAAA%3D')/attachments/$entity",
  "@odata.type": "#Microsoft.OutlookServices.ReferenceAttachment",
  "Id": "AAMkAGE1Mbs88AADUv0uFAAABEgAQAPSg72tgf7hJp0PICVGCc0g=",
  "LastModifiedDateTime": "2016-03-12T06:04:38Z",
  "Name": "Koala picture",
  "ContentType": null,
  "Size": 382,
  "IsInline": false,
  "SourceUrl": "https://contoso-my.spoppe.com/personal/danas_contoso_onmicrosoft_com/Documents/Pics/koala.jpg",
  "ProviderType": "OneDriveBusiness",
  "ThumbnailUrl": null,
  "PreviewUrl": null,
  "Permission": "Edit",
  "IsFolder": false
}

Exemple de requête ($expand sur les pièces jointes)

L’exemple suivant obtient et développe les 3 références jointes inline avec les propriétés du message.

GET https://outlook.office.com/api/beta/me/messages/AAMkAGE1Mbs88AADUv0uFAAA=/?$expand=attachments

Exemple de réponse

Status code: 200

{
  "@odata.context": "https://outlook.office.com/api/beta/$metadata#users('ddfcd489-628b-40d7-b48b-57002df800e5')/messages/$entity",
  "@odata.etag": "W/\"CQAAABYAAACY4MQpaFz9SbqUDe4+bs88AADZsPav\"",
  "Id": "AAMkAGE1Mbs88AADUv0uFAAA=",
  "CreatedDateTime": "2016-03-08T01:01:57Z",
  "LastModifiedDateTime": "2016-03-12T06:18:54Z",
  "ChangeKey": "CQAAABYAAACY4MQpaFz9SbqUDe4+bs88AADZsPav",
  "Categories": [ ],
  "ReceivedDateTime": "2016-03-08T01:01:57Z",
  "SentDateTime": "2016-03-08T01:01:51Z",
  "HasAttachments": true,
  "InternetMessageId": "<SN2SR0101MB00299F0D7D22EE5D380104ED84B20@SN2SR0101MB0029.namsdf01.sdf.exchangelabs.com>",
  "Subject": "RE: New year activity",
  "Body": {
    "ContentType": "html",
    "Content": "<html>\r\n<<body>Let's gather to celebrate the new year! </body>\r\n</html>\r\n"
  },
  "BodyPreview": "What about the tulips?\r\n________________________________\r\nFrom: Dana Swope <danas@contoso.onmicrosoft.com>\r\nSent: Monday, March 7, 2016 10:51:39 PM\r\nTo: Dana Swope; Culinary Expert Group\r\nSubject: RE: New year activity\r\n\r\nLet's gather to celebrate the new year! ",
  "Importance": "Normal",
  "ParentFolderId": "AQMkAGE1MQN7j5uzzwAAAIBDAAAAA==",
  "Sender": {
    "EmailAddress": {
      "Name": "Dana Swope",
      "Address": "danas@contoso.onmicrosoft.com"
    }
  },
  "From": {
    "EmailAddress": {
      "Name": "Dana Swope",
      "Address": "danas@contoso.onmicrosoft.com"
    }
  },
  "ToRecipients": [
    {
      "EmailAddress": {
        "Name": "Dana Swope",
        "Address": "danas@contoso.onmicrosoft.com"
      }
    },
    {
      "EmailAddress": {
        "Name": "Culinary Expert Group",
        "Address": "Chefs@contoso.onmicrosoft.com"
      }
    }
  ],
  "CcRecipients": [ ],
  "BccRecipients": [ ],
  "ReplyTo": [ ],
  "ConversationId": "AAQkAGE1MMM2SaRFsKgx7BKVfig=",
  "ConversationIndex": "AQHRaThgdSG4wzZJpEWwqDHsEpV+KJ9OtWGUgAAkYLI=",
  "IsDeliveryReceiptRequested": false,
  "IsReadReceiptRequested": false,
  "IsRead": true,
  "IsDraft": false,
  "WebLink": "https://outlook.office.com/owa/?ItemID=AAMkAGE1Mbs88AADUv0uFAAA%3D&exvsurl=1&viewmodel=ReadMessageItem",
  "InferenceClassification": "Focused",
  "UnsubscribeData": [ ],
  "UnsubscribeEnabled": false,
  "Flag": { "FlagStatus": "NotFlagged" },
  "Attachments@odata.context": "https://outlook.office.com/api/beta/$metadata#users('ddfcd489-628b-40d7-b48b-57002df800e5')/messages('AAMkAGE1Mbs88AADUv0uFAAA%3D')/attachments",
  "Attachments": [
    {
      "@odata.type": "#Microsoft.OutlookServices.ReferenceAttachment",
      "Id": "AAMkAGE1Mbs88AADUv0uFAAABEgAQAL53d0u3BKBJmCxKVxZKBZ8=",
      "LastModifiedDateTime": "2016-03-12T05:54:31Z",
      "Name": "Personal pictures",
      "ContentType": null,
      "Size": 362,
      "IsInline": false,
      "SourceUrl": "https://contoso-my.spoppe.com/personal/danas_contoso_onmicrosoft_com/Documents/Pics",
      "ProviderType": "OneDriveBusiness",
      "ThumbnailUrl": null,
      "PreviewUrl": null,
      "Permission": "edit",
      "IsFolder": true
    },
    {
      "@odata.type": "#Microsoft.OutlookServices.ReferenceAttachment",
      "Id": "AAMkAGE1Mbs88AADUv0uFAAABEgAQAPSg72tgf7hJp0PICVGCc0g=",
      "LastModifiedDateTime": "2016-03-12T06:04:38Z",
      "Name": "Koala picture",
      "ContentType": null,
      "Size": 382,
      "IsInline": false,
      "SourceUrl": "https://contoso-my.spoppe.com/personal/danas_contoso_onmicrosoft_com/Documents/Pics/koala.jpg",
      "ProviderType": "OneDriveBusiness",
      "ThumbnailUrl": null,
      "PreviewUrl": null,
      "Permission": "edit",
      "IsFolder": false
    },
    {
      "@odata.type": "#Microsoft.OutlookServices.ReferenceAttachment",
      "Id": "AAMkAGE1Mbs88AADUv0uFAAABEgAQAO3wkFiM3KlCpn81m8qS1W0=",
      "LastModifiedDateTime": "2016-03-12T06:18:54Z",
      "Name": "Hydrangea picture",
      "ContentType": null,
      "Size": 412,
      "IsInline": false,
      "SourceUrl": "https://contoso-my.spoppe.com/personal/danas_contoso_onmicrosoft_com/Documents/Pics/hydrangea.jpg",
      "ProviderType": "OneDriveBusiness",
      "ThumbnailUrl": null,
      "PreviewUrl": null,
      "Permission": "edit",
      "IsFolder": false
    }
  ]
}

Exemple de requête ($expand sur des éléments joints imbriqués)

L’exemple suivant obtient un élément de pièce jointe imbriqué.

GET https://outlook-sdf.office.com/api/beta/me/messages/AAMkAGE1Mbs88AADUv0uFAAA=/attachments/AAMkAGE1Mbs88AADUv0uFAAABEgAQAL53d0u3BKBJmCxKVxZKBZ8=$expand=Microsoft.OutlookServices.ItemAttachment/Item

Exemple de réponse

Status code: 200

{
    "Id": "AAMkAGE1Mbs88AADUv0uFAAABEgAQAL53d0u3BKBJmCxKVxZKBZ8=",
    "LastModifiedDateTime": "2017-04-25T20:05:55Z",
    "Name": "RE: Changes to GetConditionMetadata handler",
    "ContentType": null,
    "Size": 78927,
    "IsInline": false,
    "Item": {
        "Id": "", 
        "Name": "How to retrieve item attachment using Outlook REST API",
        "ContentType": message/rfc822,
        "Size": 71094,
        "IsInline": false,
        "LastModifiedDateTime": "2015-09-24T05:57:59Z",
    }
}
GET https://outlook.office.com/api/v2.0/me/messages/{message_id}/attachments/{attachment_id}

Remarque Voir Paramètres de requête OData pour les paramètres de filtrage, de tri et de pagination.

Paramètre requisTypeDescription
Paramètres URL
message_idchaîneL’ID du message.
attachment_idchaîneID de la pièce jointe.

Remarque Par défaut, la réponse inclut toutes les propriétés de la pièce jointe. Utilisez $select pour spécifier uniquement les propriétés dont vous avez besoin pour de meilleurs niveaux de performance. Consultez Obtenir une collection de pièces jointes pour voir un exemple.
La propriété Id est toujours renvoyée. Voir Paramètres de requête OData pour les paramètres de filtrage, de tri et de pagination.

Type de réponse

Le fichier joint ou l’élément joint demandés.

Exemple de requête

GET https://outlook.office.com/api/v2.0/me/messages/AAMkAGI2THVSAAA=/attachments/AAMkAGI2j4kShdM=

Exemple de réponse

Status code: 200

{
    "@odata.context": "https://outlook.office.com/api/v2.0/$metadata#Me/Messages('AAMkAGI2THVSAAA%3D')/Attachments/$entity",
    "@odata.type": "#Microsoft.OutlookServices.FileAttachment",
    "@odata.id": "https://outlook.office.com/api/v2.0/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/Messages('AAMkAGI2THVSAAA=')/Attachments('AAMkAGI2j4kShdM=')",
    "Id": "AAMkAGI2j4kShdM=",
    "LastModifiedDateTime": "2014-10-20T00:41:52Z",
    "Name": "minutes.docx",
    "ContentType": "application/vnd.openxmlformats-officedocument.wordprocessingml.document",
    "Size": 11585,
    "IsInline": false,
    "ContentId": null,
    "ContentLocation": null,
    "ContentBytes": "UEsDBBQABgAIAAAAIQDCAAA4KQAAAAA="
}

Exemple de requête (référence jointe)

L’exemple suivant obtient la référence jointe d’un message.

GET https://outlook.office.com/api/v2.0/me/messages/AAMkAGE1Mbs88AADUv0uFAAA=/attachments/AAMkAGE1Mbs88AADUv0uFAAABEgAQAPSg72tgf7hJp0PICVGCc0g=

Exemple de réponse

Status code: 200

{
  "@odata.context": "https://outlook.office.com/api/v2.0/$metadata#users('ddfcd489-628b-40d7-b48b-57002df800e5')/messages('AAMkAGE1Mbs88AADUv0uFAAA%3D')/attachments/$entity",
  "@odata.type": "#Microsoft.OutlookServices.ReferenceAttachment",
  "Id": "AAMkAGE1Mbs88AADUv0uFAAABEgAQAPSg72tgf7hJp0PICVGCc0g=",
  "LastModifiedDateTime": "2016-03-12T06:04:38Z",
  "Name": "Koala picture",
  "ContentType": null,
  "Size": 382,
  "IsInline": false,
  "SourceUrl": "https://contoso-my.spoppe.com/personal/danas_contoso_onmicrosoft_com/Documents/Pics/koala.jpg",
  "ProviderType": "OneDriveBusiness",
  "ThumbnailUrl": null,
  "PreviewUrl": null,
  "Permission": "Edit",
  "IsFolder": false
}

Exemple de requête ($expand sur les pièces jointes)

L’exemple suivant obtient et développe les 3 références jointes inline avec les propriétés du message.

GET https://outlook.office.com/api/v2.0/me/messages/AAMkAGE1Mbs88AADUv0uFAAA=/?$expand=attachments

Exemple de réponse

Status code: 200

{
  "@odata.context": "https://outlook.office.com/api/v2.0/$metadata#users('ddfcd489-628b-40d7-b48b-57002df800e5')/messages/$entity",
  "@odata.etag": "W/\"CQAAABYAAACY4MQpaFz9SbqUDe4+bs88AADZsPav\"",
  "Id": "AAMkAGE1Mbs88AADUv0uFAAA=",
  "CreatedDateTime": "2016-03-08T01:01:57Z",
  "LastModifiedDateTime": "2016-03-12T06:18:54Z",
  "ChangeKey": "CQAAABYAAACY4MQpaFz9SbqUDe4+bs88AADZsPav",
  "Categories": [ ],
  "ReceivedDateTime": "2016-03-08T01:01:57Z",
  "SentDateTime": "2016-03-08T01:01:51Z",
  "HasAttachments": true,
  "InternetMessageId": "<SN2SR0101MB00299F0D7D22EE5D380104ED84B20@SN2SR0101MB0029.namsdf01.sdf.exchangelabs.com>",
  "Subject": "RE: New year activity",
  "Body": {
    "ContentType": "html",
    "Content": "<html>\r\n<<body>Let's gather to celebrate the new year! </body>\r\n</html>\r\n"
  },
  "BodyPreview": "What about the tulips?\r\n________________________________\r\nFrom: Dana Swope <danas@contoso.onmicrosoft.com>\r\nSent: Monday, March 7, 2016 10:51:39 PM\r\nTo: Dana Swope; Culinary Expert Group\r\nSubject: RE: New year activity\r\n\r\nLet's gather to celebrate the new year! ",
  "Importance": "Normal",
  "ParentFolderId": "AQMkAGE1MQN7j5uzzwAAAIBDAAAAA==",
  "Sender": {
    "EmailAddress": {
      "Name": "Dana Swope",
      "Address": "danas@contoso.onmicrosoft.com"
    }
  },
  "From": {
    "EmailAddress": {
      "Name": "Dana Swope",
      "Address": "danas@contoso.onmicrosoft.com"
    }
  },
  "ToRecipients": [
    {
      "EmailAddress": {
        "Name": "Dana Swope",
        "Address": "danas@contoso.onmicrosoft.com"
      }
    },
    {
      "EmailAddress": {
        "Name": "Culinary Expert Group",
        "Address": "Chefs@contoso.onmicrosoft.com"
      }
    }
  ],
  "CcRecipients": [ ],
  "BccRecipients": [ ],
  "ReplyTo": [ ],
  "ConversationId": "AAQkAGE1MMM2SaRFsKgx7BKVfig=",
  "ConversationIndex": "AQHRaThgdSG4wzZJpEWwqDHsEpV+KJ9OtWGUgAAkYLI=",
  "IsDeliveryReceiptRequested": false,
  "IsReadReceiptRequested": false,
  "IsRead": true,
  "IsDraft": false,
  "WebLink": "https://outlook.office.com/owa/?ItemID=AAMkAGE1Mbs88AADUv0uFAAA%3D&exvsurl=1&viewmodel=ReadMessageItem",
  "InferenceClassification": "Focused",
  "UnsubscribeData": [ ],
  "UnsubscribeEnabled": false,
  "Flag": { "FlagStatus": "NotFlagged" },
  "Attachments@odata.context": "https://outlook.office.com/api/beta/$metadata#users('ddfcd489-628b-40d7-b48b-57002df800e5')/messages('AAMkAGE1Mbs88AADUv0uFAAA%3D')/attachments",
  "Attachments": [
    {
      "@odata.type": "#Microsoft.OutlookServices.ReferenceAttachment",
      "Id": "AAMkAGE1Mbs88AADUv0uFAAABEgAQAL53d0u3BKBJmCxKVxZKBZ8=",
      "LastModifiedDateTime": "2016-03-12T05:54:31Z",
      "Name": "Personal pictures",
      "ContentType": null,
      "Size": 362,
      "IsInline": false,
      "SourceUrl": "https://contoso-my.spoppe.com/personal/danas_contoso_onmicrosoft_com/Documents/Pics",
      "ProviderType": "OneDriveBusiness",
      "ThumbnailUrl": null,
      "PreviewUrl": null,
      "Permission": "edit",
      "IsFolder": true
    },
    {
      "@odata.type": "#Microsoft.OutlookServices.ReferenceAttachment",
      "Id": "AAMkAGE1Mbs88AADUv0uFAAABEgAQAPSg72tgf7hJp0PICVGCc0g=",
      "LastModifiedDateTime": "2016-03-12T06:04:38Z",
      "Name": "Koala picture",
      "ContentType": null,
      "Size": 382,
      "IsInline": false,
      "SourceUrl": "https://contoso-my.spoppe.com/personal/danas_contoso_onmicrosoft_com/Documents/Pics/koala.jpg",
      "ProviderType": "OneDriveBusiness",
      "ThumbnailUrl": null,
      "PreviewUrl": null,
      "Permission": "edit",
      "IsFolder": false
    },
    {
      "@odata.type": "#Microsoft.OutlookServices.ReferenceAttachment",
      "Id": "AAMkAGE1Mbs88AADUv0uFAAABEgAQAO3wkFiM3KlCpn81m8qS1W0=",
      "LastModifiedDateTime": "2016-03-12T06:18:54Z",
      "Name": "Hydrangea picture",
      "ContentType": null,
      "Size": 412,
      "IsInline": false,
      "SourceUrl": "https://contoso-my.spoppe.com/personal/danas_contoso_onmicrosoft_com/Documents/Pics/hydrangea.jpg",
      "ProviderType": "OneDriveBusiness",
      "ThumbnailUrl": null,
      "PreviewUrl": null,
      "Permission": "edit",
      "IsFolder": false
    }
  ]
}

Exemple de requête ($expand sur des éléments joints imbriqués)

L’exemple suivant obtient un élément de pièce jointe imbriqué.

GET https://outlook-sdf.office.com/api/v2.0/me/messages/AAMkAGE1Mbs88AADUv0uFAAA=/attachments/AAMkAGE1Mbs88AADUv0uFAAABEgAQAL53d0u3BKBJmCxKVxZKBZ8=$expand=Microsoft.OutlookServices.ItemAttachment/Item

Exemple de réponse

Status code: 200

{
    "Id": "AAMkAGE1Mbs88AADUv0uFAAABEgAQAL53d0u3BKBJmCxKVxZKBZ8=",
    "LastModifiedDateTime": "2017-04-25T20:05:55Z",
    "Name": "RE: Changes to GetConditionMetadata handler",
    "ContentType": null,
    "Size": 78927,
    "IsInline": false,
    "Item": {
        "Id": "", 
        "Name": "How to retrieve item attachment using Outlook REST API",
        "ContentType": message/rfc822,
        "Size": 71094,
        "IsInline": false,
        "LastModifiedDateTime": "2015-09-24T05:57:59Z",
    }
}
GET https://outlook.office.com/api/v1.0/me/messages/{message_id}/attachments/{attachment_id}

Remarque Voir Paramètres de requête OData pour les paramètres de filtrage, de tri et de pagination.

Paramètre requisTypeDescription
Paramètres URL
message_idchaîneL’ID du message.
attachment_idchaîneID de la pièce jointe.

Remarque Par défaut, la réponse inclut toutes les propriétés de la pièce jointe. Utilisez $select pour spécifier uniquement les propriétés dont vous avez besoin pour de meilleurs niveaux de performance. Consultez Obtenir une collection de pièces jointes pour voir un exemple.
La propriété Id est toujours renvoyée. Voir Paramètres de requête OData pour les paramètres de filtrage, de tri et de pagination.

Type de réponse

Le fichier joint ou l’élément joint demandés.

Exemple de requête


GET https://outlook.office.com/api/v1.0/me/messages/AAMkAGI2NGVhZTVlLTI1OGMtNDI4My1iZmE5LTA5OGJiZGEzMTc0YQBGAAAAAADUuTJK1K9aTpCdqXop_4NaBwCd9nJ-tVysQos2hTfspaWRAAAAAAEMAACd9nJ-tVysQos2hTfspaWRAAADTHVSAAA=/attachments/AAMkAGI2NGVhZTVlLTI1OGMtNDI4My1iZmE5LTA5OGJiZGEzMTc0YQBGAAAAAADUuTJK1K9aTpCdqXop_4NaBwCd9nJ-tVysQos2hTfspaWRAAAAAAEMAACd9nJ-tVysQos2hTfspaWRAAADTHVSAAABEgAQANQEWV4bM8FIlPwxj4kShdM=

Exemple de réponse

{
  "@odata.context": "https://outlook.office.com/api/v1.0/$metadata#Me/Messages('AAMkAGI2NGVhZTVlLTI1OGMtNDI4My1iZmE5LTA5OGJiZGEzMTc0YQBGAAAAAADUuTJK1K9aTpCdqXop_4NaBwCd9nJ-tVysQos2hTfspaWRAAAAAAEMAACd9nJ-tVysQos2hTfspaWRAAADTHVSAAA%3D')/Attachments/$entity",
  "@odata.type": "#Microsoft.OutlookServices.FileAttachment",
  "@odata.id": "https://outlook.office.com/api/v1.0/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/Events('AAMkAGE4v1RAAA=')",
  "Id": "AAMkAGI2j4kShdM=",
  "Name": "minutes.docx",
  "ContentType": "application/vnd.openxmlformats-officedocument.wordprocessingml.document",
  "Size": 11585,
  "IsInline": false,
  "DateTimeLastModified": "2014-10-20T00:41:52Z",
  "ContentId": null,
  "ContentLocation": null,
  "IsContactPhoto": false,
  "ContentBytes": "UEsDBBQABgAIAAAAIQDCAAA4KQAAAAA=",
}

Créer des pièces jointes

Vous pouvez créer un fichier joint ou créer une pièce jointe pour un message.

Créer un fichier joint | Créer un élément joint | Créer une référence jointe

Créer un fichier joint

Étendue minimale requise : l’une des suivantes :

Ajouter un fichier joint à un message.

POST https://outlook.office.com/api/beta/me/messages/{message_id}/attachments
POST https://outlook.office.com/api/v2.0/me/messages/{message_id}/attachments
POST https://outlook.office.com/api/v1.0/me/messages/{message_id}/attachments
Paramètre requisTypeDescription
Paramètres URL
message_idchaîneL’ID du message.
Paramètres de corps
@odata.typechaîne#Microsoft.OutlookServices.FileAttachment
NamechaîneNom de la pièce jointe.
ContentBytesbinaireLe fichier à joindre.

Spécifie les paramètres Nameet ContentBytes et toute propriété modifiable de fichier joint dans le corps de la requête.

Type de réponse

Le nouveau fichier joint.


Créer un élément joint

Étendue minimale requise : l’une des suivantes :

Ajouter un élément joint à un message.

POST https://outlook.office.com/api/beta/me/messages/{message_id}/attachments
POST https://outlook.office.com/api/v2.0/me/messages/{message_id}/attachments
POST https://outlook.office.com/api/v1.0/me/messages/{message_id}/attachments
Paramètre requisTypeDescription
Paramètres URL
message_idchaîneL’ID du message.
Paramètres de corps
@odata.typechaîne#Microsoft.OutlookServices.ItemAttachment
NamechaîneNom de la pièce jointe.
ÉlémentUne entité Message ou Event.L’élément à joindre.

Spécifie les paramètres Nameet Item et toute propriété modifiable d’élément joint dans le corps de la requête.

Type de réponse

Le nouvel élément joint.


Créer une référence jointe

Étendue minimale requise : l’une des suivantes :

Ajouter une référence jointe à un message.

POST https://outlook.office.com/api/beta/me/messages/{message_id}/attachments
Paramètre requisTypeDescription
Paramètres URL
message_idChaîneL’ID du message.
Paramètres de corps
@odata.typeChaîne#Microsoft.OutlookServices.ReferenceAttachment
NameChaîneNom d’affichage de la pièce jointe. Obligatoire.
SourceUrlChaîneURL permettant d’obtenir le contenu de la pièce jointe. S’il s’agit d’une URL vers un dossier, vous devez définir la valeurIsFoldersur true pour que le dossier puisse s’afficher correctement dans Outlook ou Outlook sur le web. Obligatoire.

Spécifie les paramètres Nameet SourceUrl et toute propriété modifiable de référence jointe dans le corps de la requête.

Type de réponse

La référence jointe.

Exemple de requête

L’exemple suivant ajoute une référence jointe à un message existant. La pièce jointe est un lien vers un fichier de OneDrive Entreprise.

POST https://outlook.office.com/api/beta/me/messages/AAMkAGE1Mbs88AADUv0uFAAA=/attachments
Content-Type: application/json

{ 
    "@odata.type": "#Microsoft.OutlookServices.ReferenceAttachment", 
    "Name": "Koala picture", 
    "SourceUrl": "https://contoso-my.spoppe.com/personal/danas_contoso_onmicrosoft_com/Documents/Pics/koala.jpg", 
    "ProviderType": "oneDriveBusiness", 
    "Permission": "Edit", 
    "IsFolder": "False" 
} 

Exemple de réponse

Status code: 201 Created

{
  "@odata.context": "https://outlook.office.com/api/beta/$metadata#users('ddfcd489-628b-40d7-b48b-57002df800e5')/messages('AAMkAGE1Mbs88AADUv0uFAAA%3D')/attachments/$entity",
  "@odata.type": "#Microsoft.OutlookServices.ReferenceAttachment",
  "Id": "AAMkAGE1Mbs88AADUv0uFAAABEgAQAPSg72tgf7hJp0PICVGCc0g=",
  "LastModifiedDateTime": "2016-03-12T06:04:38Z",
  "Name": "Koala picture",
  "ContentType": null,
  "Size": 382,
  "IsInline": false,
  "SourceUrl": "https://contoso-my.spoppe.com/personal/danas_contoso_onmicrosoft_com/Documents/Pics/koala.jpg",
  "ProviderType": "oneDriveBusiness",
  "ThumbnailUrl": null,
  "PreviewUrl": null,
  "Permission": "edit",
  "IsFolder": false
}

Exemple de requête

L’exemple suivant ajoute une référence jointe dans le même appel que la création d’un brouillon de message. La pièce jointe est un lien vers un fichier de OneDrive Entreprise.

POST https://outlook.office.com/api/beta/me/messages
Content-Type: application/json

{
    "Subject": "Plan for dinner",
    "Body": {
      "ContentType": "HTML",
      "Content": "Office anniversary is coming soon!"
    },
    "ToRecipients": [
      {
        "EmailAddress": {
          "Address": "randiw@contoso.onmicrosoft.com"
        }
      }
    ],
    "Attachments": [
      {
        "@odata.type": "#Microsoft.OutlookServices.ReferenceAttachment", 
        "Name": "Hydrangea picture", 
        "SourceUrl": "https://contoso-my.spoppe.com/personal/danas_contoso_onmicrosoft_com/Documents/Pics/hydrangea.jpg", 
        "ProviderType": "oneDriveBusiness", 
        "Permission": "Edit", 
        "IsFolder": "False" 
      }
    ]
}

Exemple de réponse

Status code: 201 Created

{
  "@odata.context": "https://outlook.office.com/api/beta/$metadata#users('ddfcd489-628b-40d7-b48b-57002df800e5')/messages/$entity",
  "@odata.etag": "W/\"CQAAABYAAACY4MQpaFz9SbqUDe4+bs88AADZ8qi1\"",
  "Id": "AAMkAGE1Mbs88AADZ0CU9AAA=",
  "CreatedDateTime": "2016-03-12T09:04:54Z",
  "LastModifiedDateTime": "2016-03-12T09:04:54Z",
  "ChangeKey": "CQAAABYAAACY4MQpaFz9SbqUDe4+bs88AADZ8qi1",
  "Categories": [ ],
  "ReceivedDateTime": "2016-03-12T09:04:54Z",
  "SentDateTime": "2016-03-12T09:04:54Z",
  "HasAttachments": true,
  "InternetMessageId": "<BL2SR0101MB00188944566BDECE6EDE57F384B60@BL2SR0101MB0018.namsdf01.sdf.exchangelabs.com>",
  "Subject": "Plan for dinner",
  "Body": {
    "ContentType": "html",
    "Content": "<html>\r\n<body>\r\nOffice anniversary is coming soon!\r\n</body>\r\n</html>\r\n"
  },
  "BodyPreview": "Office anniversary is coming soon!",
  "Importance": "normal",
  "ParentFolderId": "AQMkAGE1MQN7j5uzzwAAAIBDwAAAA==",
  "Sender": null,
  "From": null,
  "ToRecipients": [
    {
      "EmailAddress": {
      "Name": "Randi Welch",
      "address": "randiw@contoso.onmicrosoft.com"
      }
    }
  ],
  "CcRecipients": [ ],
  "BccRecipients": [ ],
  "ReplyTo": [ ],
  "ConversationId": "AAQkAGE1MMAAQAJk0cqqggzpKtIHErqyDkcU=",
  "ConversationIndex": "AQHRfD4+mTRyqqCDOkq0gcSurIORxQ==",
  "IsDeliveryReceiptRequested": false,
  "IsReadReceiptRequested": false,
  "IsRead": true,
  "IsDraft": true,
  "WebLink": "https://outlook.office.com/owa/?ItemID=AAMkAGE1Mbs88AADZ0CU9AAA%3D&exvsurl=1&viewmodel=ReadMessageItem",
  "InferenceClassification": "focused",
  "UnsubscribeData": [ ],
  "UnsubscribeEnabled": false,
  "Flag": { "flagStatus": "notFlagged" },
  "Attachments@odata.context": "https://outlook.office.com/api/beta/$metadata#users('ddfcd489-628b-40d7-b48b-57002df800e5')/messages('AAMkAGE1Mbs88AADZ0CU9AAA%3D')/attachments",
  "Attachments": [
    {
      "@odata.type": "#Microsoft.OutlookServices.ReferenceAttachment",
      "Id": "AAMkAGE1Mbs88AADZ0CU9AAABEgAQAGe4H1iqXwtLsrCCLLkDxqo=",
      "LastModifiedDateTime": null,
      "Name": "Hydrangea picture",
      "ContentType": null,
      "Size": 0,
      "IsInline": false,
      "SourceUrl": "https://contoso-my.spoppe.com/personal/danas_contoso_onmicrosoft_com/Documents/Pics/hydrangea.jpg",
      "ProviderType": "oneDriveBusiness",
      "ThumbnailUrl": null,
      "PreviewUrl": null,
      "Permission": "edit",
      "IsFolder": false
    }
  ]
}
POST https://outlook.office.com/api/v2.0/me/messages/{message_id}/attachments
Paramètre requisTypeDescription
Paramètres URL
message_idChaîneL’ID du message.
Paramètres de corps
@odata.typeChaîne#Microsoft.OutlookServices.ReferenceAttachment
NameChaîneNom d’affichage de la pièce jointe. Obligatoire.
SourceUrlChaîneURL permettant d’obtenir le contenu de la pièce jointe. S’il s’agit d’une URL vers un dossier, vous devez définir la valeurIsFoldersur true pour que le dossier puisse s’afficher correctement dans Outlook ou Outlook sur le web. Obligatoire.

Spécifie les paramètres Nameet SourceUrl et toute propriété modifiable de référence jointe dans le corps de la requête.

Type de réponse

La référence jointe.

Exemple de requête

L’exemple suivant ajoute une référence jointe à un message existant. La pièce jointe est un lien vers un fichier de OneDrive Entreprise.

POST https://outlook.office.com/api/v2.0/me/messages/AAMkAGE1Mbs88AADUv0uFAAA=/attachments
Content-Type: application/json

{ 
    "@odata.type": "#Microsoft.OutlookServices.ReferenceAttachment", 
    "Name": "Koala picture", 
    "SourceUrl": "https://contoso-my.spoppe.com/personal/danas_contoso_onmicrosoft_com/Documents/Pics/koala.jpg", 
    "ProviderType": "oneDriveBusiness", 
    "Permission": "Edit", 
    "IsFolder": "False" 
} 

Exemple de réponse

Status code: 201 Created

{
  "@odata.context": "https://outlook.office.com/api/v2.0/$metadata#users('ddfcd489-628b-40d7-b48b-57002df800e5')/messages('AAMkAGE1Mbs88AADUv0uFAAA%3D')/attachments/$entity",
  "@odata.type": "#Microsoft.OutlookServices.ReferenceAttachment",
  "Id": "AAMkAGE1Mbs88AADUv0uFAAABEgAQAPSg72tgf7hJp0PICVGCc0g=",
  "LastModifiedDateTime": "2016-03-12T06:04:38Z",
  "Name": "Koala picture",
  "ContentType": null,
  "Size": 382,
  "IsInline": false,
  "SourceUrl": "https://contoso-my.spoppe.com/personal/danas_contoso_onmicrosoft_com/Documents/Pics/koala.jpg",
  "ProviderType": "oneDriveBusiness",
  "ThumbnailUrl": null,
  "PreviewUrl": null,
  "Permission": "edit",
  "IsFolder": false
}

Exemple de requête

L’exemple suivant ajoute une référence jointe dans le même appel que la création d’un brouillon de message. La pièce jointe est un lien vers un fichier de OneDrive Entreprise.

POST https://outlook.office.com/api/v2.0/me/messages
Content-Type: application/json

{
    "Subject": "Plan for dinner",
    "Body": {
      "ContentType": "HTML",
      "Content": "Office anniversary is coming soon!"
    },
    "ToRecipients": [
      {
        "EmailAddress": {
          "Address": "randiw@contoso.onmicrosoft.com"
        }
      }
    ],
    "Attachments": [
      {
        "@odata.type": "#Microsoft.OutlookServices.ReferenceAttachment", 
        "Name": "Hydrangea picture", 
        "SourceUrl": "https://contoso-my.spoppe.com/personal/danas_contoso_onmicrosoft_com/Documents/Pics/hydrangea.jpg", 
        "ProviderType": "oneDriveBusiness", 
        "Permission": "Edit", 
        "IsFolder": "False" 
      }
    ]
}

Exemple de réponse

Status code: 201 Created

{
  "@odata.context": "https://outlook.office.com/api/v2.0/$metadata#users('ddfcd489-628b-40d7-b48b-57002df800e5')/messages/$entity",
  "@odata.etag": "W/\"CQAAABYAAACY4MQpaFz9SbqUDe4+bs88AADZ8qi1\"",
  "Id": "AAMkAGE1Mbs88AADZ0CU9AAA=",
  "CreatedDateTime": "2016-03-12T09:04:54Z",
  "LastModifiedDateTime": "2016-03-12T09:04:54Z",
  "ChangeKey": "CQAAABYAAACY4MQpaFz9SbqUDe4+bs88AADZ8qi1",
  "Categories": [ ],
  "ReceivedDateTime": "2016-03-12T09:04:54Z",
  "SentDateTime": "2016-03-12T09:04:54Z",
  "HasAttachments": true,
  "InternetMessageId": "<BL2SR0101MB00188944566BDECE6EDE57F384B60@BL2SR0101MB0018.namsdf01.sdf.exchangelabs.com>",
  "Subject": "Plan for dinner",
  "Body": {
    "ContentType": "html",
    "Content": "<html>\r\n<body>\r\nOffice anniversary is coming soon!\r\n</body>\r\n</html>\r\n"
  },
  "BodyPreview": "Office anniversary is coming soon!",
  "Importance": "normal",
  "ParentFolderId": "AQMkAGE1MQN7j5uzzwAAAIBDwAAAA==",
  "Sender": null,
  "From": null,
  "ToRecipients": [
    {
      "EmailAddress": {
      "Name": "Randi Welch",
      "address": "randiw@contoso.onmicrosoft.com"
      }
    }
  ],
  "CcRecipients": [ ],
  "BccRecipients": [ ],
  "ReplyTo": [ ],
  "ConversationId": "AAQkAGE1MMAAQAJk0cqqggzpKtIHErqyDkcU=",
  "ConversationIndex": "AQHRfD4+mTRyqqCDOkq0gcSurIORxQ==",
  "IsDeliveryReceiptRequested": false,
  "IsReadReceiptRequested": false,
  "IsRead": true,
  "IsDraft": true,
  "WebLink": "https://outlook.office.com/owa/?ItemID=AAMkAGE1Mbs88AADZ0CU9AAA%3D&exvsurl=1&viewmodel=ReadMessageItem",
  "InferenceClassification": "focused",
  "UnsubscribeData": [ ],
  "UnsubscribeEnabled": false,
  "Flag": { "flagStatus": "notFlagged" },
  "Attachments@odata.context": "https://outlook.office.com/api/v2.0/$metadata#users('ddfcd489-628b-40d7-b48b-57002df800e5')/messages('AAMkAGE1Mbs88AADZ0CU9AAA%3D')/attachments",
  "Attachments": [
    {
      "@odata.type": "#Microsoft.OutlookServices.ReferenceAttachment",
      "Id": "AAMkAGE1Mbs88AADZ0CU9AAABEgAQAGe4H1iqXwtLsrCCLLkDxqo=",
      "LastModifiedDateTime": null,
      "Name": "Hydrangea picture",
      "ContentType": null,
      "Size": 0,
      "IsInline": false,
      "SourceUrl": "https://contoso-my.spoppe.com/personal/danas_contoso_onmicrosoft_com/Documents/Pics/hydrangea.jpg",
      "ProviderType": "oneDriveBusiness",
      "ThumbnailUrl": null,
      "PreviewUrl": null,
      "Permission": "edit",
      "IsFolder": false
    }
  ]
}

Cette fonctionnalité est actuellement disponible uniquement en version bêta. Pour en savoir plus, utilisez le contrôle dans le coin supérieur droit de l’article et sélectionnez bêta.


Supprimer des pièces jointes

Étendue minimale requise : l’une des suivantes :

Supprimer la pièce jointe spécifiée d’un message. La pièce jointe peut être un fichier joint, un élément joint, ou une référence jointe.

DELETE https://outlook.office.com/api/beta/me/messages/{message_id}/attachments/{attachment_id}
Paramètre requisTypeDescription
Paramètres URL
message_idchaîneL’ID du message.
attachment_idchaîneID de la pièce jointe.

Exemple de requête

DELETE https://outlook.office.com/api/beta/me/messages/AAMkAGE0Mz8S-AAA=/attachments/AAMkAGE0Mg67gL7o=

Exemple de réponse

Status code: 204

Supprimer la pièce jointe spécifiée d’un message. La pièce jointe peut être un fichier joint ou un élément joint.

DELETE https://outlook.office.com/api/v2.0/me/messages/{message_id}/attachments/{attachment_id}
Paramètre requisTypeDescription
Paramètres URL
message_idchaîneL’ID du message.
attachment_idchaîneID de la pièce jointe.

Exemple de requête

DELETE https://outlook.office.com/api/v2.0/me/messages/AAMkAGE0Mz8S-AAA=/attachments/AAMkAGE0Mg67gL7o=

Exemple de réponse

Status code: 204

Supprimer la pièce jointe spécifiée d’un message. La pièce jointe peut être un fichier joint ou un élément joint.

DELETE https://outlook.office.com/api/v1.0/me/messages/{message_id}/attachments/{attachment_id}
Paramètre requisTypeDescription
Paramètres URL
message_idchaîneL’ID du message.
attachment_idchaîneID de la pièce jointe.

Exemple de requête

DELETE https://outlook.office.com/api/v1.0/me/messages/AAMkAGE0Mz8S-AAA=/attachments/AAMkAGE0Mg67gL7o=

Exemple de réponse

Status code: 204

Obtenir des dossiers

Vous pouvez obtenir une collection de dossiers ou un dossier dans la boîte aux lettres de l’utilisateur.

Obtenir une collection de dossiers | Obtenir un dossier

Obtenir une collection de dossiers

Étendue minimale requise : l’une des suivantes :

Récupérez tous les dossiers de courrier dans la boîte aux lettres de l’utilisateur connecté (.../me/MailFolders) ou récupérez la collection de dossiers dans le dossier spécifié.

GET https://outlook.office.com/api/beta/me/MailFolders
GET https://outlook.office.com/api/beta/me/MailFolders/{folder_id}/childfolders

Remarque Voir Paramètres de requête OData pour les paramètres de filtrage, de tri et de pagination.

Paramètre requisTypeDescription
Paramètres URL
folder_idchaîneL’ID de dossier ou les noms de dossier connus Inbox, Drafts, SentItems ou DeletedItems, si vous recevez des messages depuis dossier spécifique.

Exemple de requête

GET https://outlook.office.com/api/beta/me/MailFolders

Exemple de réponse

Status code: 200

{
    "@odata.context": "https://outlook.office.com/api/beta/$metadata#Me/MailFolders",
    "value": [
        {
            "@odata.id": "https://outlook.office.com/api/beta/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/MailFolders('AAMkAGI2AAEKAAA=')",
            "Id": "AAMkAGI2AAEKAAA=",
            "DisplayName": "Deleted Items",
            "ParentFolderId": "AAMkAGI2AAEIAAA=",
            "ChildFolderCount": 0,
            "UnreadItemCount": 0,
            "TotalItemCount": 1,
            "WellKnownName": "deleteditems"
        },
        {
            "@odata.id": "https://outlook.office.com/api/beta/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/MailFolders('AAMkAGI2AAEPAAA=')",
            "Id": "AAMkAGI2AAEPAAA=",
            "DisplayName": "Drafts",
            "ParentFolderId": "AAMkAGI2AAEIAAA=",
            "ChildFolderCount": 0,
            "UnreadItemCount": 0,
            "TotalItemCount": 0,
            "WellKnownName": "drafts"
        },
        {
            "@odata.id": "https://outlook.office.com/api/beta/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/MailFolders('AAMkAGI2AAEMAAA=')",
            "Id": "AAMkAGI2AAEMAAA=",
            "DisplayName": "Inbox",
            "ParentFolderId": "AAMkAGI2AAEIAAA=",
            "ChildFolderCount": 0,
            "UnreadItemCount": 6,
            "TotalItemCount": 6,
            "WellKnownName": "inbox"
        },
        {
            "@odata.id": "https://outlook.office.com/api/beta/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/MailFolders('AAMkAGI2AAEeAAA=')",
            "Id": "AAMkAGI2AAEeAAA=",
            "DisplayName": "Junk Email",
            "ParentFolderId": "AAMkAGI2AAEIAAA=",
            "ChildFolderCount": 0,
            "UnreadItemCount": 0,
            "TotalItemCount": 0,
            "WellKnownName": "junkemail"
        },
        {
            "@odata.id": "https://outlook.office.com/api/beta/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/MailFolders('AAMkAGI2AAELAAA=')",
            "Id": "AAMkAGI2AAELAAA=",
            "DisplayName": "Outbox",
            "ParentFolderId": "AAMkAGI2AAEIAAA=",
            "ChildFolderCount": 0,
            "UnreadItemCount": 0,
            "TotalItemCount": 0,
            "WellKnownName": "outbox"
        },
        {
            "@odata.id": "https://outlook.office.com/api/beta/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/MailFolders('AAMkAGI2AAEJAAA=')",
            "Id": "AAMkAGI2AAEJAAA=",
            "DisplayName": "Sent Items",
            "ParentFolderId": "AAMkAGI2AAEIAAA=",
            "ChildFolderCount": 0,
            "UnreadItemCount": 0,
            "TotalItemCount": 3,
            "WellKnownName": "sentitems"
        }
    ]
}

Obtenez la collection de dossiers sous le dossier racine de l’utilisateur connecté (.../me/MailFolders), ou sous le dossier spécifié. Vous pouvez utiliser le raccourci .../me/MailFolders pour obtenir la collection de dossiers de niveau supérieur et naviguer vers un autre dossier.

GET https://outlook.office.com/api/v2.0/me/MailFolders
GET https://outlook.office.com/api/v2.0/me/MailFolders/{folder_id}/childfolders

Remarque Voir Paramètres de requête OData pour les paramètres de filtrage, de tri et de pagination.

Paramètre requisTypeDescription
Paramètres URL
folder_idchaîneL’ID de dossier ou les noms de dossier connus Inbox, Drafts, SentItems ou DeletedItems, si vous recevez des messages depuis dossier spécifique.

Exemple de requête

GET https://outlook.office.com/api/v2.0/me/MailFolders

Exemple de réponse

Status code: 200

{
    "@odata.context": "https://outlook.office.com/api/v2.0/$metadata#Me/MailFolders",
    "value": [
        {
            "@odata.id": "https://outlook.office.com/api/v2.0/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/MailFolders('AAMkAGI2AAEKAAA=')",
            "Id": "AAMkAGI2AAEKAAA=",
            "DisplayName": "Deleted Items",
            "ParentFolderId": "AAMkAGI2AAEIAAA=",
            "ChildFolderCount": 0,
            "UnreadItemCount": 0,
            "TotalItemCount": 1
        },
        {
            "@odata.id": "https://outlook.office.com/api/v2.0/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/MailFolders('AAMkAGI2AAEPAAA=')",
            "Id": "AAMkAGI2AAEPAAA=",
            "DisplayName": "Drafts",
            "ParentFolderId": "AAMkAGI2AAEIAAA=",
            "ChildFolderCount": 0,
            "UnreadItemCount": 0,
            "TotalItemCount": 0
        },
        {
            "@odata.id": "https://outlook.office.com/api/v2.0/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/MailFolders('AAMkAGI2AAEMAAA=')",
            "Id": "AAMkAGI2AAEMAAA=",
            "DisplayName": "Inbox",
            "ParentFolderId": "AAMkAGI2AAEIAAA=",
            "ChildFolderCount": 0,
            "UnreadItemCount": 6,
            "TotalItemCount": 6
        },
        {
            "@odata.id": "https://outlook.office.com/api/v2.0/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/MailFolders('AAMkAGI2AAEeAAA=')",
            "Id": "AAMkAGI2AAEeAAA=",
            "DisplayName": "Junk Email",
            "ParentFolderId": "AAMkAGI2AAEIAAA=",
            "ChildFolderCount": 0,
            "UnreadItemCount": 0,
            "TotalItemCount": 0
        },
        {
            "@odata.id": "https://outlook.office.com/api/v2.0/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/MailFolders('AAMkAGI2AAELAAA=')",
            "Id": "AAMkAGI2AAELAAA=",
            "DisplayName": "Outbox",
            "ParentFolderId": "AAMkAGI2AAEIAAA=",
            "ChildFolderCount": 0,
            "UnreadItemCount": 0,
            "TotalItemCount": 0
        },
        {
            "@odata.id": "https://outlook.office.com/api/v2.0/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/MailFolders('AAMkAGI2AAEJAAA=')",
            "Id": "AAMkAGI2AAEJAAA=",
            "DisplayName": "Sent Items",
            "ParentFolderId": "AAMkAGI2AAEIAAA=",
            "ChildFolderCount": 0,
            "UnreadItemCount": 0,
            "TotalItemCount": 3
        }
    ]
}

Obtenez la collection de dossiers sous le dossier racine de l’utilisateur connecté (.../me/folders), ou sous le dossier spécifié. Vous pouvez utiliser le raccourci .../me/folders pour obtenir la collection de dossiers de niveau supérieur et naviguer vers un autre dossier.

GET https://outlook.office.com/api/v1.0/me/folders
GET https://outlook.office.com/api/v1.0/me/folders/{folder_id}/childfolders

Remarque Voir Paramètres de requête OData pour les paramètres de filtrage, de tri et de pagination.

Paramètre requisTypeDescription
Paramètres URL
folder_idchaîneL’ID de dossier ou les noms de dossier connus Inbox, Drafts, SentItems ou DeletedItems, si vous recevez des messages depuis dossier spécifique.

Exemple de requête

GET https://outlook.office.com/api/v1.0/me/folders

Exemple de réponse

{
  "@odata.context": "https://outlook.office.com/api/v1.0/$metadata#Me/Folders",
  "value": [
    {
      "@odata.id": "https://outlook.office.com/api/v1.0/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/Events('AAMkAGE4v1RAAA=')",
      "Id": "AAMkAGI2NGVhZTVlLTI1OGMtNDI4My1iZmE5LTA5OGJiZGEzMTc0YQAuAAAAAADUuTJK1K9aTpCdqXop_4NaAQCd9nJ-tVysQos2hTfspaWRAAAAAAEfAAA=",
      "ParentFolderId": "AAMkAGI2NGVhZTVlLTI1OGMtNDI4My1iZmE5LTA5OGJiZGEzMTc0YQAuAAAAAADUuTJK1K9aTpCdqXop_4NaAQCd9nJ-tVysQos2hTfspaWRAAAAAAEIAAA=",
      "DisplayName": "Conversation Action Settings",
      "ChildFolderCount": 0
    },
    {
      "@odata.id": "https://outlook.office.com/api/v1.0/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/Events('AAMkAGE4v1RAAA=')",
      "Id": "AAMkAGI2NGVhZTVlLTI1OGMtNDI4My1iZmE5LTA5OGJiZGEzMTc0YQAuAAAAAADUuTJK1K9aTpCdqXop_4NaAQCd9nJ-tVysQos2hTfspaWRAAAAAAEKAAA=",
      "ParentFolderId": "AAMkAGI2NGVhZTVlLTI1OGMtNDI4My1iZmE5LTA5OGJiZGEzMTc0YQAuAAAAAADUuTJK1K9aTpCdqXop_4NaAQCd9nJ-tVysQos2hTfspaWRAAAAAAEIAAA=",
      "DisplayName": "Deleted Items",
      "ChildFolderCount": 0
    },
    {
      "@odata.id": "https://outlook.office.com/api/v1.0/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/Events('AAMkAGE4v1RAAA=')",
      "Id": "AAMkAGI2NGVhZTVlLTI1OGMtNDI4My1iZmE5LTA5OGJiZGEzMTc0YQAuAAAAAADUuTJK1K9aTpCdqXop_4NaAQCd9nJ-tVysQos2hTfspaWRAAAAAAEPAAA=",
      "ParentFolderId": "AAMkAGI2NGVhZTVlLTI1OGMtNDI4My1iZmE5LTA5OGJiZGEzMTc0YQAuAAAAAADUuTJK1K9aTpCdqXop_4NaAQCd9nJ-tVysQos2hTfspaWRAAAAAAEIAAA=",
      "DisplayName": "Drafts",
      "ChildFolderCount": 0
    },
    {
      "@odata.id": "https://outlook.office.com/api/v1.0/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/Events('AAMkAGE4v1RAAA=')",
      "Id": "AAMkAGI2NGVhZTVlLTI1OGMtNDI4My1iZmE5LTA5OGJiZGEzMTc0YQAuAAAAAADUuTJK1K9aTpCdqXop_4NaAQCd9nJ-tVysQos2hTfspaWRAAAAAAEMAAA=",
      "ParentFolderId": "AAMkAGI2NGVhZTVlLTI1OGMtNDI4My1iZmE5LTA5OGJiZGEzMTc0YQAuAAAAAADUuTJK1K9aTpCdqXop_4NaAQCd9nJ-tVysQos2hTfspaWRAAAAAAEIAAA=",
      "DisplayName": "Inbox",
      "ChildFolderCount": 0
    },
    {
      "@odata.id": "https://outlook.office.com/api/v1.0/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/Events('AAMkAGE4v1RAAA=')",
      "Id": "AAMkAGI2NGVhZTVlLTI1OGMtNDI4My1iZmE5LTA5OGJiZGEzMTc0YQAuAAAAAADUuTJK1K9aTpCdqXop_4NaAQCd9nJ-tVysQos2hTfspaWRAAAAAAEQAAA=",
      "ParentFolderId": "AAMkAGI2NGVhZTVlLTI1OGMtNDI4My1iZmE5LTA5OGJiZGEzMTc0YQAuAAAAAADUuTJK1K9aTpCdqXop_4NaAQCd9nJ-tVysQos2hTfspaWRAAAAAAEIAAA=",
      "DisplayName": "Journal",
      "ChildFolderCount": 0
    },
    {
      "@odata.id": "https://outlook.office.com/api/v1.0/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/Events('AAMkAGE4v1RAAA=')",
      "Id": "AAMkAGI2NGVhZTVlLTI1OGMtNDI4My1iZmE5LTA5OGJiZGEzMTc0YQAuAAAAAADUuTJK1K9aTpCdqXop_4NaAQCd9nJ-tVysQos2hTfspaWRAAAAAAEeAAA=",
      "ParentFolderId": "AAMkAGI2NGVhZTVlLTI1OGMtNDI4My1iZmE5LTA5OGJiZGEzMTc0YQAuAAAAAADUuTJK1K9aTpCdqXop_4NaAQCd9nJ-tVysQos2hTfspaWRAAAAAAEIAAA=",
      "DisplayName": "Junk Email",
      "ChildFolderCount": 0
    },
    {
      "@odata.id": "https://outlook.office.com/api/v1.0/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/Events('AAMkAGE4v1RAAA=')",
      "Id": "AAMkAGI2NGVhZTVlLTI1OGMtNDI4My1iZmE5LTA5OGJiZGEzMTc0YQAuAAAAAADUuTJK1K9aTpCdqXop_4NaAQCd9nJ-tVysQos2hTfspaWRAAAAAAERAAA=",
      "ParentFolderId": "AAMkAGI2NGVhZTVlLTI1OGMtNDI4My1iZmE5LTA5OGJiZGEzMTc0YQAuAAAAAADUuTJK1K9aTpCdqXop_4NaAQCd9nJ-tVysQos2hTfspaWRAAAAAAEIAAA=",
      "DisplayName": "Notes",
      "ChildFolderCount": 0
    },
    {
      "@odata.id": "https://outlook.office.com/api/v1.0/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/Events('AAMkAGE4v1RAAA=')",
      "Id": "AAMkAGI2NGVhZTVlLTI1OGMtNDI4My1iZmE5LTA5OGJiZGEzMTc0YQAuAAAAAADUuTJK1K9aTpCdqXop_4NaAQCd9nJ-tVysQos2hTfspaWRAAAAAAELAAA=",
      "ParentFolderId": "AAMkAGI2NGVhZTVlLTI1OGMtNDI4My1iZmE5LTA5OGJiZGEzMTc0YQAuAAAAAADUuTJK1K9aTpCdqXop_4NaAQCd9nJ-tVysQos2hTfspaWRAAAAAAEIAAA=",
      "DisplayName": "Outbox",
      "ChildFolderCount": 0
    }
  ]
}

Type de réponse

La collection de dossiers demandée.


Obtenir un dossier

Étendue minimale requise : l’une des suivantes :

Obtenez un dossier par ID.

Obtenez le dossier de l’utilisateur connecté :

GET https://outlook.office.com/api/beta/me/MailFolders/{folder_id}

Obtenez un dossier de boîte aux lettres partagé par un utilisateur :

GET https://outlook.office.com/api/beta/users/{user_id}/mailFolders/{folder_id}

Remarque Voir Paramètres de requête OData pour les paramètres de filtrage, de tri et de pagination.

Paramètre requisTypeDescription
Paramètres URL
folder_idchaîneL’ID du dossier, ou les noms de dossier connus Inbox, Drafts, SentItems ou DeletedItems.

Exemple de requête

Obtenir la boîte de réception de l’utilisateur connecté

GET https://outlook.office.com/api/beta/me/MailFolders/inbox

Exemple de réponse

Status code: 200

{
    "@odata.context": "https://outlook.office.com/api/beta/$metadata#Me/MailFolders/$entity",
    "@odata.id": "https://outlook.office.com/api/beta/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/MailFolders('AAMkAGI2AAEMAAA=')",
    "Id": "AAMkAGI2AAEMAAA=",
    "DisplayName": "Inbox",
    "ParentFolderId": "AAMkAGI2AAEIAAA=",
    "ChildFolderCount": 0,
    "UnreadItemCount": 6,
    "TotalItemCount": 6,
    "WellKnownName": "inbox"
}

Exemple de requête Obtenir un dossier partagé par un autre utilisateur

GET https://outlook.office.com/api/beta/users/8c14ebe1-e4ba-4232cd011db47/mailFolders/AAMkADk0MGFkODE3LWE4MmYtNDRhOS04OGQxLTM

Exemple de réponse

HTTP/1.1 200 OK

{
    "@odata.context": "https://outlook.office.com/api/beta/$metadata#Me/MailFolders/$entity",
    "@odata.id": "https://outlook.office.com/api/beta/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/MailFolders('AAMkADk0MGFkODE3LWE4MmYtNDRhOS04OGQxLTM')",
    "Id": "AAMkADk0MGFkODE3LWE4MmYtNDRhOS04OGQxLTM",
    "DisplayName": "Inbox",
    "ParentFolderId": "AAMkADk0MGFkODE3LWE4MmYtNDRhOS04OGQxLTM4QCHGmLqkYhISaO_lSymODLQABa6L5YpAAA=",
    "ChildFolderCount": 4,
    "UnreadItemCount": 27962,
    "TotalItemCount": 64420
}
GET https://outlook.office.com/api/v2.0/me/MailFolders/{folder_id}

Obtenez un dossier de boîte aux lettres partagé par un utilisateur :

GET https://outlook.office.com/api/v2.0/users/{user_id}/mailFolders/{folder_id}

Remarque Voir Paramètres de requête OData pour les paramètres de filtrage, de tri et de pagination.

Paramètre requisTypeDescription
Paramètres URL
folder_idchaîneL’ID du dossier, ou les noms de dossier connus Inbox, Drafts, SentItems ou DeletedItems.

Exemple de requête

GET https://outlook.office.com/api/v2.0/me/MailFolders/inbox

Exemple de réponse

Status code: 200

{
    "@odata.context": "https://outlook.office.com/api/v2.0/$metadata#Me/MailFolders/$entity",
    "@odata.id": "https://outlook.office.com/api/v2.0/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/MailFolders('AAMkAGI2AAEMAAA=')",
    "Id": "AAMkAGI2AAEMAAA=",
    "DisplayName": "Inbox",
    "ParentFolderId": "AAMkAGI2AAEIAAA=",
    "ChildFolderCount": 0,
    "UnreadItemCount": 6,
    "TotalItemCount": 6
}

Exemple de requête Obtenir un dossier partagé par un autre utilisateur

GET https://outlook.office.com/api/v2.0/users/8c14ebe1-e4ba-4232cd011db47/mailFolders/AAMkADk0MGFkODE3LWE4MmYtNDRhOS04OGQxLTM

Exemple de réponse

HTTP/1.1 200 OK

{
    "@odata.context": "https://outlook.office.com/api/v2.0/$metadata#Me/MailFolders/$entity",
    "@odata.id": "https://outlook.office.com/api/beta/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/MailFolders('AAMkADk0MGFkODE3LWE4MmYtNDRhOS04OGQxLTM')",
    "Id": "AAMkADk0MGFkODE3LWE4MmYtNDRhOS04OGQxLTM",
    "DisplayName": "Inbox",
    "ParentFolderId": "AAMkADk0MGFkODE3LWE4MmYtNDRhOS04OGQxLTM4QCHGmLqkYhISaO_lSymODLQABa6L5YpAAA=",
    "ChildFolderCount": 4,
    "UnreadItemCount": 27962,
    "TotalItemCount": 64420
}
GET https://outlook.office.com/api/v1.0/me/folders/{folder_id}

Remarque Voir Paramètres de requête OData pour les paramètres de filtrage, de tri et de pagination.

Paramètre requisTypeDescription
Paramètres URL
folder_idchaîneL’ID du dossier, ou les noms de dossier connus Inbox, Drafts, SentItems ou DeletedItems.

Exemple de requête

GET https://outlook.office.com/api/v1.0/me/folders/inbox

Exemple de réponse

Code d’état : 200

{
  "@odata.context": "https://outlook.office.com/api/v1.0/$metadata#Me/Folders/$entity",
  "@odata.id": "https://outlook.office.com/api/v1.0/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/Events('AAMkAGE4v1RAAA=')",
  "Id": "AAMkAGI2NGVhZTVlLTI1OGMtNDI4My1iZmE5LTA5OGJiZGEzMTc0YQAuAAAAAADUuTJK1K9aTpCdqXop_4NaAQCd9nJ-tVysQos2hTfspaWRAAAAAAEJAAA=",
  "ParentFolderId": "AAMkAGI2NGVhZTVlLTI1OGMtNDI4My1iZmE5LTA5OGJiZGEzMTc0YQAuAAAAAADUuTJK1K9aTpCdqXop_4NaAQCd9nJ-tVysQos2hTfspaWRAAAAAAEIAAA=",
  "DisplayName": "Inbox",
  "ChildFolderCount": 0,
  "UnreadItemCount": 2,
  "TotalItemCount": 2
}

Type de réponse

Le dossier demandé.


Synchroniser la hiérarchie des dossiers

Vous pouvez obtenir une table à plat de tous les dossiers dans une boîte aux lettres. Lorsque vous synchronisez une hiérarchie de dossiers de courrier, demandez cette catégorie.

Point de terminaisonCatégorie de dossier
Me/MailFoldersDossiers des courriers électroniques

Vous pouvez uniquement synchroniser le niveau supérieur de chaque catégorie de dossier. Par exemple, vous pouvez demander Me/MailFolders mais non Me/MailFolders('inbox').

La synchronisation prend en charge à la fois la synchronisation complète qui récupère tous les dossiers d’une hiérarchie et la synchronisation incrémentielle qui récupère tous les dossiers qui ont été modifiés depuis la dernière synchronisation complète.

Étendue minimale requise : l’une des suivantes :

GET https://outlook.office.com/api/beta/me/MailFolders
Paramètre requisTypeDescription
Paramètre d’en-tête
Preferodata.trackchangesIndique que la requête est une requête de synchronisation.
Paramètres de corps
odata.deltaLinkchaîneLe jeton qui indique la dernière fois que la hiérarchie de dossiers a été synchronisée.

Si l’un des paramètres de requête suivants - $filter, $orderby, $search, $top - sont inclus dans la requête, ils sont ignorés.

Type de réponse

Une liste à plat des dossiers dans la catégorie demandée.

Vous pouvez obtenir une table à plat de tous les dossiers dans une boîte aux lettres. Lorsque vous synchronisez une hiérarchie de dossiers de courrier, demandez cette catégorie.

Point de terminaisonCatégorie de dossier
Me/MailFoldersDossiers des courriers électroniques

Vous pouvez uniquement synchroniser le niveau supérieur de chaque catégorie de dossier. Par exemple, vous pouvez demander Me/MailFolders mais non Me/MailFolders('inbox').

La synchronisation prend en charge à la fois la synchronisation complète qui récupère tous les dossiers d’une hiérarchie et la synchronisation incrémentielle qui récupère tous les dossiers qui ont été modifiés depuis la dernière synchronisation complète.

Étendue minimale requise : l’une des suivantes :

GET https://outlook.office.com/api/v2.0/me/MailFolders
Paramètre requisTypeDescription
Paramètre d’en-tête
Preferodata.trackchangesIndique que la requête est une requête de synchronisation.
Paramètres de corps
odata.deltaLinkchaîneLe jeton qui indique la dernière fois que la hiérarchie de dossiers a été synchronisée.

Si l’un des paramètres de requête suivants - $filter, $orderby, $search, $top - sont inclus dans la requête, ils sont ignorés.

Type de réponse

Une liste à plat des dossiers dans la catégorie demandée.

Cette fonctionnalité est actuellement disponible pour les versions v2.0 et bêta. Pour en savoir plus, utilisez le contrôle dans le coin supérieur droit de l’article et sélectionnez l’une de ces versions.


Créer des dossiers

Ajouter un nouveau dossier à une collection de dossiers.

Créer un dossier

Créer un dossier

Étendue minimale requise : l’une des suivantes :

Créez un dossier enfant avec le nom spécifié dans DisplayName. DisplayName est la seule propriété modifiable pour un dossier.

POST https://outlook.office.com/api/beta/me/MailFolders/{folder_id}/childfolders
Paramètre requisTypeDescription
Paramètres URL
folder_idchaîneL’ID du dossier, ou les noms de dossier connus Inbox, Drafts, SentItems ou DeletedItems.
Paramètres de corps
DisplayNamechaîneNom d’affichage du dossier.

Exemple de requête

POST https://outlook.office.com/api/beta/me/MailFolders/inbox/childfolders
Content-Type: application/json

{
  "DisplayName": "Company"
}

Exemple de réponse

Status code: 201

{
  "@odata.context": "https://outlook.office.com/api/beta/$metadata#Me/MailFolders('inbox')/ChildFolders/$entity",
  "@odata.id": "https://outlook.office.com/api/beta/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/MailFolders('AAMkAGE0Mz-l_AAA=')",
  "Id": "AAMkAGE0Mz-l_AAA=",
  "ParentFolderId": "AAMkAGE0MAAEMAAA=",
  "DisplayName": "Company",
  "ChildFolderCount": 0,
  "UnreadItemCount": 2,
  "TotalItemCount": 27,
  "WellKnownName": ""
}
POST https://outlook.office.com/api/v2.0/me/MailFolders/{folder_id}/childfolders
Paramètre requisTypeDescription
Paramètres URL
folder_idchaîneL’ID du dossier, ou les noms de dossier connus Inbox, Drafts, SentItems ou DeletedItems.
Paramètres de corps
DisplayNamechaîneNom d’affichage du dossier.

Exemple de requête

POST https://outlook.office.com/api/v2.0/me/MailFolders/inbox/childfolders
Content-Type: application/json

{
  "DisplayName": "Company"
}

Exemple de réponse

Status code: 201

{
  "@odata.context": "https://outlook.office.com/api/v2.0/$metadata#Me/MailFolders('inbox')/ChildFolders/$entity",
  "@odata.id": "https://outlook.office.com/api/v2.0/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/MailFolders('AAMkAGE0Mz-l_AAA=')",
  "Id": "AAMkAGE0Mz-l_AAA=",
  "ParentFolderId": "AAMkAGE0MAAEMAAA=",
  "DisplayName": "Company",
  "ChildFolderCount": 0,
  "UnreadItemCount": 2,
  "TotalItemCount": 27
}
POST https://outlook.office.com/api/v1.0/me/folders/{folder_id}/childfolders
Paramètre requisTypeDescription
Paramètres URL
folder_idchaîneL’ID du dossier, ou les noms de dossier connus Inbox, Drafts, SentItems ou DeletedItems.
Paramètres de corps
DisplayNamechaîneNom d’affichage du dossier.

Exemple de requête

POST https://outlook.office.com/api/v1.0/me/folders/inbox/childfolders
Content-Type: application/json
{
  "DisplayName": "Company"
}

Exemple de réponse

Code d’état : 201

{
  "@odata.context": "https://outlook.office.com/api/v1.0/$metadata#Me/Folders('inbox')/ChildFolders/$entity",
  "@odata.id": "https://outlook.office.com/api/v1.0/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/Events('AAMkAGE4v1RAAA=')",
  "Id": "AAMkAGE0MGM1Y2M5LWEzMmUtNGVlNy05MjRlLTk0YmJjYzVkN2I5MAAuAAAAAAC_0WfqSjt_SqLtNkuO-bj1AQAmP1Ln1wcHRariNdTMGAO9AAASz-l_AAA=",
  "ParentFolderId": "AAMkAGE0MGM1Y2M5LWEzMmUtNGVlNy05MjRlLTk0YmJjYzVkN2I5MAAuAAAAAAC_0WfqSjt_SqLtNkuO-bj1AQAmP1Ln1wcHRariNdTMGAO9AAAAAAEMAAA=",
  "DisplayName": "Company",
  "ChildFolderCount": 0,
  "UnreadItemCount": 2,
  "TotalItemCount": 27
}

Type de réponse

Le nouveau dossier.

Notes

Vous ne pouvez pas créer un dossier de niveau supérieur. Vous ne pouvez ajouter un dossier qu’à un point de terminaison childfolders.


Mettre à jour des dossiers

Changez un nom de dossier.

Mettre à jour un dossier

Mettre à jour un dossier

Étendue minimale requise : l’une des suivantes :

Changez le nom du dossier en celui spécifié dans DisplayName. Le nom est la seule propriété modifiable pour un dossier.

PATCH https://outlook.office.com/api/beta/me/MailFolders/{folder_id}
Paramètre requisTypeDescription
Paramètres URL
folder_idchaîneL’ID du dossier, ou les noms de dossier connus Inbox, Drafts, SentItems ou DeletedItems.
Paramètres de corps
DisplayNamechaîneLe nouveau nom d’affichage du dossier.

Exemple de requête

PATCH https://outlook.office.com/api/beta/me/MailFolders/AAMkAGE0Mz-l_AAA=
Content-Type: application/json
{
  "DisplayName": "Business"
}

Exemple de réponse

Status code: 200

{
  "@odata.context": "https://outlook.office.com/api/beta/$metadata#Me/MailFolders/$entity",
  "@odata.id": "https://outlook.office.com/api/beta/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/MailFolders('AAMkAGE0Mz-l_AAA=')",
  "Id": "AAMkAGE0Mz-l_AAA=",
  "ParentFolderId": "AAMkAGE0MAAEMAAA=",
  "DisplayName": "Business",
  "ChildFolderCount": 0,
  "UnreadItemCount": 4,
  "TotalItemCount": 38,
  "WellKnownName": ""
}
PATCH https://outlook.office.com/api/v2.0/me/MailFolders/{folder_id}
Paramètre requisTypeDescription
Paramètres URL
folder_idchaîneL’ID du dossier, ou les noms de dossier connus Inbox, Drafts, SentItems ou DeletedItems.
Paramètres de corps
DisplayNamechaîneLe nouveau nom d’affichage du dossier.

Exemple de requête

PATCH https://outlook.office.com/api/v2.0/me/MailFolders/AAMkAGE0Mz-l_AAA=
Content-Type: application/json

{
  "DisplayName": "Business"
}

Exemple de réponse

Status code: 200

{
  "@odata.context": "https://outlook.office.com/api/v2.0/$metadata#Me/MailFolders/$entity",
  "@odata.id": "https://outlook.office.com/api/v2.0/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/MailFolders('AAMkAGE0Mz-l_AAA=')",
  "Id": "AAMkAGE0Mz-l_AAA=",
  "ParentFolderId": "AAMkAGE0MAAEMAAA=",
  "DisplayName": "Business",
  "ChildFolderCount": 0,
  "UnreadItemCount": 4,
  "TotalItemCount": 38
}
PATCH https://outlook.office.com/api/v1.0/me/folders/{folder_id}
Paramètre requisTypeDescription
Paramètres URL
folder_idchaîneL’ID du dossier, ou les noms de dossier connus Inbox, Drafts, SentItems ou DeletedItems.
Paramètres de corps
DisplayNamechaîneLe nouveau nom d’affichage du dossier.

Exemple de requête

PATCH https://outlook.office.com/api/v1.0/me/folders/AAMkAGE0MGM1Y2M5LWEzMmUtNGVlNy05MjRlLTk0YmJjYzVkN2I5MAAuAAAAAAC_0WfqSjt_SqLtNkuO-bj1AQAmP1Ln1wcHRariNdTMGAO9AAASz-l_AAA=
Content-Type: application/json
{
  "DisplayName": "Business"
}

Exemple de réponse

Code d’état : 200

}
  "@odata.context": "https://outlook.office.com/api/v1.0/$metadata#Me/Folders/$entity",
  "@odata.id": "https://outlook.office.com/api/v1.0/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/Events('AAMkAGE4v1RAAA=')",
  "Id": "AAMkAGE0MGM1Y2M5LWEzMmUtNGVlNy05MjRlLTk0YmJjYzVkN2I5MAAuAAAAAAC_0WfqSjt_SqLtNkuO-bj1AQAmP1Ln1wcHRariNdTMGAO9AAASz-l_AAA=",
  "ParentFolderId": "AAMkAGE0MGM1Y2M5LWEzMmUtNGVlNy05MjRlLTk0YmJjYzVkN2I5MAAuAAAAAAC_0WfqSjt_SqLtNkuO-bj1AQAmP1Ln1wcHRariNdTMGAO9AAAAAAEMAAA=",
  "DisplayName": "Business",
  "ChildFolderCount": 0,
  "UnreadItemCount": 4,
  "TotalItemCount": 38
}

Type de réponse

Ledossier mis à jour.


Supprimer des dossiers

Supprimer un dossier et tout son contenu.

Remarque Soyez prudent lorsque vous supprimez des dossiers. La récupération des contenus supprimés peut être impossible. Pour en savoir plus, voir Suppression d’éléments.

Supprimer un dossier

Supprimer un dossier

Étendue minimale requise : l’une des suivantes :

Supprimer le dossier spécifié dans folder_id.

DELETE https://outlook.office.com/api/beta/me/MailFolders/{folder_id}
Paramètre requisTypeDescription
Paramètres URL
folder_idchaîneL’ID du dossier, ou les noms de dossier connus Inbox, Drafts, SentItems ou DeletedItems.

Exemple de requête

DELETE https://outlook.office.com/api/BETA/me/MailFolders/AAMkAGE0Mz-l_AAA=

Exemple de réponse

Status code: 204
DELETE https://outlook.office.com/api/v2.0/me/MailFolders/{folder_id}
Paramètre requisTypeDescription
Paramètres URL
folder_idchaîneL’ID du dossier, ou les noms de dossier connus Inbox, Drafts, SentItems ou DeletedItems.

Exemple de requête

DELETE https://outlook.office.com/api/v2.0/me/MailFolders/AAMkAGE0Mz-l_AAA=

Exemple de réponse

Status code: 204
DELETE https://outlook.office.com/api/v1.0/me/folders/{folder_id}
Paramètre requisTypeDescription
Paramètres URL
folder_idchaîneL’ID du dossier, ou les noms de dossier connus Inbox, Drafts, SentItems ou DeletedItems.

Exemple de requête

DELETE https://outlook.office.com/api/v1.0/me/MailFolders/AAMkAGE0Mz-l_AAA=

Exemple de réponse

Status code: 204

Déplacer ou copier des dossiers

Vous pouvez déplacer ou copier un dossier dans un autre dossier.

Déplacer un dossier | Copier un dossier

Déplacer un dossier

Étendue minimale requise : l’une des suivantes :

Déplacez un dossier et son contenu vers un autre dossier en utilisant la méthode Move.

POST https://outlook.office.com/api/beta/me/MailFolders/{folder_id}/move
Paramètre requisTypeDescription
Paramètres URL
folder_idchaîneL’ID du dossier, ou les noms de dossier connus Inbox, Drafts, SentItems ou DeletedItems.
Paramètres de corps
DestinationIdchaîneID de dossier de destination, ou nom de dossier connu Inbox, Drafts, SentItems ou DeletedItems.

Exemple de requête

POST https://outlook.office.com/api/beta/me/MailFolders/AAMkAGE0Mz-l_AAA=/move
Content-Type: application/json

{
  "DestinationId": "AAMkAGE0MyxQ9AAA="
}

Exemple de réponse

Status code: 201

{
  "@odata.context": "https://outlook.office.com/api/beta/$metadata#Me/MailFolders/$entity",
  "@odata.id": "https://outlook.office.com/api/beta/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/MailFolders('AAMkAGE0Mz-l_AAA=')",
  "Id": "AAMkAGE0Mz-l_AAA=",
  "ParentFolderId": "AAMkAGE0MyxQ9AAA=",
  "DisplayName": "Business",
  "ChildFolderCount": 0,
  "UnreadItemCount": 4,
  "TotalItemCount": 38,
  "WellKnownName": ""
}
POST https://outlook.office.com/api/v2.0/me/MailFolders/{folder_id}/move
Paramètre requisTypeDescription
Paramètres URL
folder_idchaîneL’ID du dossier, ou les noms de dossier connus Inbox, Drafts, SentItems ou DeletedItems.
Paramètres de corps
DestinationIdchaîneID de dossier de destination, ou nom de dossier connu Inbox, Drafts, SentItems ou DeletedItems.

Exemple de requête

POST https://outlook.office.com/api/v2.0/me/MailFolders/AAMkAGE0Mz-l_AAA=/move
Content-Type: application/json

{
  "DestinationId": "AAMkAGE0MyxQ9AAA="
}

Exemple de réponse

Status code: 201

{
  "@odata.context": "https://outlook.office.com/api/v2.0/$metadata#Me/MailFolders/$entity",
  "@odata.id": "https://outlook.office.com/api/v2.0/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/MailFolders('AAMkAGE0Mz-l_AAA=')",
  "Id": "AAMkAGE0Mz-l_AAA=",
  "ParentFolderId": "AAMkAGE0MyxQ9AAA=",
  "DisplayName": "Business",
  "ChildFolderCount": 0,
  "UnreadItemCount": 4,
  "TotalItemCount": 38
}
POST https://outlook.office.com/api/v1.0/me/folders/{folder_id}/move
Paramètre requisTypeDescription
Paramètres URL
folder_idchaîneL’ID du dossier, ou les noms de dossier connus Inbox, Drafts, SentItems ou DeletedItems.
Paramètres de corps
DestinationIdchaîneID de dossier de destination, ou nom de dossier connu Inbox, Drafts, SentItems ou DeletedItems.

Exemple de requête

POST https://outlook.office.com/api/v1.0/me/folders/AAMkAGE0MGM1Y2M5LWEzMmUtNGVlNy05MjRlLTk0YmJjYzVkN2I5MAAuAAAAAAC_0WfqSjt_SqLtNkuO-bj1AQAmP1Ln1wcHRariNdTMGAO9AAASz-l_AAA=/move
Content-Type: application/json
{
  "DestinationId": "AAMkAGE0MGM1Y2M5LWEzMmUtNGVlNy05MjRlLTk0YmJjYzVkN2I5MAAuAAAAAAC_0WfqSjt_SqLtNkuO-bj1AQAmP1Ln1wcHRariNdTMGAO9AAAOyxQ9AAA="
}

Exemple de réponse

Code d’état : 201

{
  "@odata.context": "https://outlook.office.com/api/v1.0/$metadata#Me/Folders/$entity",
  "@odata.id": "https://outlook.office.com/api/v1.0/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/Events('AAMkAGE4v1RAAA=')",
  "Id": "AAMkAGE0MGM1Y2M5LWEzMmUtNGVlNy05MjRlLTk0YmJjYzVkN2I5MAAuAAAAAAC_0WfqSjt_SqLtNkuO-bj1AQAmP1Ln1wcHRariNdTMGAO9AAASz-l_AAA=",
  "ParentFolderId": "AAMkAGE0MGM1Y2M5LWEzMmUtNGVlNy05MjRlLTk0YmJjYzVkN2I5MAAuAAAAAAC_0WfqSjt_SqLtNkuO-bj1AQAmP1Ln1wcHRariNdTMGAO9AAAOyxQ9AAA=",
  "DisplayName": "Business",
  "ChildFolderCount": 0,
  "UnreadItemCount": 4,
  "TotalItemCount": 38
}

Type de réponse

le dossier qui a été déplacé.


Copier un dossier

Étendue minimale requise : l’une des suivantes :

Copiez un dossier et son contenu vers un autre dossier en utilisant la méthode Move.

POST https://outlook.office.com/api/beta/me/MailFolders/{folder_id}/copy
Paramètre requisTypeDescription
Paramètres URL
folder_idchaîneL’ID du dossier, ou les noms de dossier connus Inbox, Drafts, SentItems ou DeletedItems.
Paramètres de corps
DestinationIdchaîneID de dossier de destination, ou nom de dossier connu Inbox, Drafts, SentItems ou DeletedItems.

Exemple de requête

POST https://outlook.office.com/api/beta/me/MailFolders/AAMkAGE0Mz-l_AAA=/copy
Content-Type: application/json

{
  "DestinationId": "inbox"
}

Exemple de réponse

Status code: 201

{
  "@odata.context": "https://outlook.office.com/api/beta/$metadata#Me/MailFolders/$entity",
  "@odata.id": "https://outlook.office.com/api/beta/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/MailFolders('AAMkAGE0Mz-mAAAA=')",
  "Id": "AAMkAGE0Mz-mAAAA=",
  "ParentFolderId": "AAMkAGE0MAAEMAAA=",
  "DisplayName": "Business",
  "ChildFolderCount": 0,
  "UnreadItemCount": 4,
  "TotalItemCount": 38,
  "WellKnownName": ""
}

Exemple de requête

POST https://outlook.office.com/api/v2.0/me/MailFolders/{folder_id}/copy
Paramètre requisTypeDescription
Paramètres URL
folder_idchaîneL’ID du dossier, ou les noms de dossier connus Inbox, Drafts, SentItems ou DeletedItems.
Paramètres de corps
DestinationIdchaîneID de dossier de destination, ou nom de dossier connu Inbox, Drafts, SentItems ou DeletedItems.
POST https://outlook.office.com/api/v2.0/me/MailFolders/AAMkAGE0Mz-l_AAA=/copy
Content-Type: application/json

{
  "DestinationId": "inbox"
}

Exemple de réponse

Status code: 201

{
  "@odata.context": "https://outlook.office.com/api/v2.0/$metadata#Me/MailFolders/$entity",
  "@odata.id": "https://outlook.office.com/api/v2.0/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/MailFolders('AAMkAGE0Mz-mAAAA=')",
  "Id": "AAMkAGE0Mz-mAAAA=",
  "ParentFolderId": "AAMkAGE0MAAEMAAA=",
  "DisplayName": "Business",
  "ChildFolderCount": 0,
  "UnreadItemCount": 4,
  "TotalItemCount": 38
}
POST https://outlook.office.com/api/v1.0/me/folders/{folder_id}/copy
Paramètre requisTypeDescription
Paramètres URL
folder_idchaîneL’ID du dossier, ou les noms de dossier connus Inbox, Drafts, SentItems ou DeletedItems.
Paramètres de corps
DestinationIdchaîneID de dossier de destination, ou nom de dossier connu Inbox, Drafts, SentItems ou DeletedItems.

Exemple de requête

POST https://outlook.office.com/api/v1.0/me/folders/AAMkAGE0MGM1Y2M5LWEzMmUtNGVlNy05MjRlLTk0YmJjYzVkN2I5MAAuAAAAAAC_0WfqSjt_SqLtNkuO-bj1AQAmP1Ln1wcHRariNdTMGAO9AAASz-l_AAA=/copy
Content-Type: application/json
{
  "DestinationId": "inbox"
}

Exemple de réponse

Code d’état : 201

{
  "@odata.context": "https://outlook.office.com/api/v1.0/$metadata#Me/Folders/$entity",
  "@odata.id": "https://outlook.office.com/api/v1.0/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/Events('AAMkAGE4v1RAAA=')",
  "Id": "AAMkAGE0MGM1Y2M5LWEzMmUtNGVlNy05MjRlLTk0YmJjYzVkN2I5MAAuAAAAAAC_0WfqSjt_SqLtNkuO-bj1AQAmP1Ln1wcHRariNdTMGAO9AAASz-mAAAA=",
  "ParentFolderId": "AAMkAGE0MGM1Y2M5LWEzMmUtNGVlNy05MjRlLTk0YmJjYzVkN2I5MAAuAAAAAAC_0WfqSjt_SqLtNkuO-bj1AQAmP1Ln1wcHRariNdTMGAO9AAAAAAEMAAA=",
  "DisplayName": "Business",
  "ChildFolderCount": 0,
  "UnreadItemCount": 4,
  "TotalItemCount": 38
}

Type de réponse

La nouvelle copie du dossier.


Étapes suivantes

Que vous soyez prêt à commencer à créer une application ou que vous souhaitiez simplement en apprendre plus, nous avons ce qu’il vous faut.

Ou, découvrez-en plus sur l’utilisation de la plateforme Office 365 :

© 2018 Microsoft