Créer des événements Outlook dans un calendrier partagé ou délégué

Dans Outlook, les clients peuvent partager un calendrier avec d’autres utilisateurs, en permettant à ceux-ci d’y afficher, créer ou modifier des événements. Les clients peuvent également autoriser un délégué à agir en leur nom, à recevoir des demandes de réunion ou à y répondre, ainsi qu’à créer ou modifier des éléments dans le calendrier.

Microsoft Graph prend en charge par programme la lecture ou l’écriture des événements dans les calendriers qui ont été partagés par d’autres utilisateurs, ainsi que la lecture des calendriers partagés et la mise à jour du nom des calendriers pour les destinataires du partage. La prise en charge s’applique également aux calendriers délégués. Le reste de cet article explique comment créer un événement de réunion dans un calendrier partagé ou délégué. Pour obtenir des événements, reportez-vous à Obtenir des événements Outlook dans un calendrier partagé ou délégué.

La procédure pas à pas ci-dessous repose sur un exemple de scénario dans lequel Alex a délégué son calendrier principal à Adele dans Outlook, et a conservé la configuration par défaut de la boîte aux lettres Outlook afin que les demandes et réponses de réunion soient uniquement dirigées vers les délégués. (Dans cette configuration, la propriété delegateMeetingMessageDeliveryOptions du paramètre mailboxSettings d’Alex est définie sur la valeur par défaut sendToDelegateOnly.)

La procédure pas à pas décrit quelques étapes ultérieures :

  1. Adele obtient le calendrier qu’Alex lui a délégué.
  2. Adele envoie une invitation à Christie et Megan au nom d’Alex.
  3. Christie reçoit la demande de réunion et examine l’événement associé dans son calendrier.
  4. Christie répond provisoirement à l’invitation.
  5. Adele reçoit le message de réponse de Christie.
  6. Alex examine les réponses des participants dans le cadre de l’événement.

Si Alex a partagé (et non délégué) son calendrier avec Adele :

  • Dans le cadre d’une connexion sous le nom d’Adele, une application peut obtenir le calendrier qu’Alex a partagé avec Adele.
  • L’application peut utiliser les demandes et réponses des étapes 2 à 4 pour solliciter l’accès au calendrier partagé de la même façon que pour le calendrier délégué.
  • À l’étape 5, l’application peut se connecter sous le nom d’Alex, au lieu d’Adele, pour recevoir le message de réponse de Christie.

Étape 1 : Adele obtient le calendrier délégué

Connectez-vous sous le nom d’Adèle, obtenez les calendriers auxquels elle a accès et identifiez celui qu’Alex lui a été délégué afin de l’utiliser à l’étape suivante pour y créer un événement.

Autorisations Microsoft Graph

Utilisez l’autorisation déléguée la moins privilégiée, Calendars.Read.Shared. Pour plus d’informations, consultez autorisations de calendrier.

GET https://graph.microsoft.com/v1.0/me/calendars

Notez qu’une réponse réussie inclut le code de réponse HTTP 200, le calendrier principal d’Adele et une copie du calendrier délégué par Alex dans la boîte aux lettres d’Adele, avec les propriétés suivantes :

  • canShare (peutPartager) est faux car Adele n’est qu’une déléguée et non la propriétaire du calendrier.
  • canEdit (peutModifier) est vrai car en tant que déléguée, Adele dispose d’un accès en écriture aux événements non privés du calendrier délégué.
  • owner (propriétaire) correspond à Alex Wilber, ce qui indique qu’il s’agit du calendrier d’Alex.
HTTP/1.1 200 OK
Content-type: application/json

{
    "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#users('d3b9214b-dd8b-441d-b7dc-c446c9fa0e69')/calendars",
    "value": [
        {
            "id": "AQMkADGkAAAJMjAAAAA==",
            "name": "Calendar",
            "color": "auto",
            "changeKey": "NDznl+Uh50WkanaCOKHkaQAAAAACXQ==",
            "canShare": true,
            "canViewPrivateItems": true,
            "canEdit": true,
            "owner": {
                "name": "Adele Vance",
                "address": "AdeleV@contoso.OnMicrosoft.com"
            }
        },
        {
            "id": "AAMkADRpAABf0JlzAAA=",
            "name": "Alex Wilber",
            "color": "auto",
            "changeKey": "NDznl+Uh50WkanaCOKHkaQAAX8m4eQ==",
            "canShare": false,
            "canViewPrivateItems": false,
            "canEdit": true,
            "owner": {
                "name": "Alex Wilber",
                "address": "AlexW@contoso.OnMicrosoft.com"
            }
        }
    ]
}

NOTE Connecté en tant qu’Adele, vous pouvez également obtenir le calendrier délégué directement à partir de la boîte aux lettres d’Alex, en spécifiant l’identité d’Alex et le raccourci calendar, comme dansGET https://graph.microsoft.com/v1.0/users/AlexW@contoso.OnMicrosoft.com/calendar. L’ID de calendrier retourné correspond uniquement à la boîte aux lettres d’Alex.

Étape 2 : Adele crée et envoie une invitation au nom d’Alex

Connectez-vous sous le nom d’Adele, utilisez l’ID de calendrier obtenu à l’étape 1 pour créer un événement dans le calendrier délégué et envoyez-le à Christie et Megan, au nom d’Alex.

Autorisations Microsoft Graph

Utilisez l’autorisation déléguée la moins privilégiée, Calendars.ReadWrite.Shared. Pour plus d’informations, consultez autorisations de calendrier.

POST https://graph.microsoft.com/v1.0/me/calendars/AAMkADRpAABf0JlzAAA=/events

Prefer: outlook.timezone="Pacific Standard Time"
Content-type: application/json

{
  "subject": "Christmas dinner",
  "body": {
    "contentType": "HTML",
    "content": "Happy holidays!"
  },
  "start": {
      "dateTime": "2019-12-25T18:00:00",
      "timeZone": "Pacific Standard Time"
  },
  "end": {
      "dateTime": "2019-12-25T22:00:00",
      "timeZone": "Pacific Standard Time"
  },
  "location":{
      "displayName":"Alex' home"
  },
  "attendees": [
    {
      "emailAddress": {
        "address":"meganb@contoso.onmicrosoft.com",
        "name": "Megan Bowen"
      },
      "type": "required"
    },
    {
      "emailAddress": {
        "address":"ChristieC@contoso.onmicrosoft.com",
        "name": "Christie Cline"
      },
      "type": "required"
    }
  ]
}

Notez qu’une réponse réussie inclut HTTP 201 et les propriétés d’événement suivantes :

  • La propriété isOrganizer (estOrganisateur) est vraie. En général, cette propriété est vraie si le propriétaire du calendrier (Alex) est l’organisateur de la réunion. Cela s’applique également si un délégué (ici Adele) a organisé la réunion au nom du propriétaire.
  • La collection attendees (participants) répertorie Megan et Christie.
  • La propriété organizer (organisateur) est définie sur Alex, car l’invitation a été envoyée par le délégué d’Alex (Adele) dans le calendrier principal d’Alex.
  • Les propriétés attendees et organizer ne spécifient ni l’une ni l’autre la déléguée (Adele).
HTTP/1.1 201 Created
Content-type: application/json

{
    "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#users('d3b9214b-dd8b-441d-b7dc-c446c9fa0e69')/calendars('AAMkADRpAABf0JlzAAA%3D')/events/$entity",
    "@odata.etag": "W/\"NDznl+Uh50WkanaCOKHkaQAAX8m47Q==\"",
    "id": "AAMkADI4oeRpAABf0LrcAAA=",
    "createdDateTime": "2019-12-21T04:59:01.9766929Z",
    "lastModifiedDateTime": "2019-12-21T04:59:02.0214967Z",
    "changeKey": "NDznl+Uh50WkanaCOKHkaQAAX8m47Q==",
    "categories": [],
    "originalStartTimeZone": "Pacific Standard Time",
    "originalEndTimeZone": "Pacific Standard Time",
    "iCalUId": "040000008200FEFE0BA532444B5FD89BDE22BA103",
    "reminderMinutesBeforeStart": 15,
    "isReminderOn": false,
    "hasAttachments": false,
    "subject": "Christmas dinner",
    "bodyPreview": "Happy holidays!",
    "importance": "normal",
    "sensitivity": "normal",
    "isAllDay": false,
    "isCancelled": false,
    "isOrganizer": true,
    "responseRequested": true,
    "seriesMasterId": null,
    "showAs": "busy",
    "type": "singleInstance",
    "webLink": "https://outlook.office365.com/owa/?itemid=AAMkADI4oeRpAABf0LrcAAA%3D&exvsurl=1&path=/calendar/item",
    "onlineMeetingUrl": null,
    "recurrence": null,
    "responseStatus": {
        "response": "organizer",
        "time": "0001-01-01T00:00:00Z"
    },
    "body": {
        "contentType": "html",
        "content": "<html>\r\n<head>\r\n<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\">\r\n<meta content=\"text/html; charset=us-ascii\">\r\n</head>\r\n<body>\r\nHappy holidays!\r\n</body>\r\n</html>\r\n"
    },
    "start": {
        "dateTime": "2019-12-25T18:00:00.0000000",
        "timeZone": "Pacific Standard Time"
    },
    "end": {
        "dateTime": "2019-12-25T22:00:00.0000000",
        "timeZone": "Pacific Standard Time"
    },
    "location": {
        "displayName": "Alex' home",
        "locationType": "default",
        "uniqueId": "Alex' home",
        "uniqueIdType": "private"
    },
    "locations": [
        {
            "displayName": "Alex' home",
            "locationType": "default",
            "uniqueId": "Alex' home",
            "uniqueIdType": "private"
        }
    ],
    "attendees": [
        {
            "type": "required",
            "status": {
                "response": "none",
                "time": "0001-01-01T00:00:00Z"
            },
            "emailAddress": {
                "name": "Megan Bowen",
                "address": "MeganB@contoso.OnMicrosoft.com"
            }
        },
        {
            "type": "required",
            "status": {
                "response": "none",
                "time": "0001-01-01T00:00:00Z"
            },
            "emailAddress": {
                "name": "Christie Cline",
                "address": "ChristieC@contoso.OnMicrosoft.com"
            }
        }
    ],
    "organizer": {
        "emailAddress": {
            "name": "Alex Wilber",
            "address": "AlexW@contoso.OnMicrosoft.com"
        }
    }
}

Étape 3 : Christie reçoit la demande de réunion et examine l’événement associé dans son calendrier

Lors de la remise de la demande de réunion, Outlook crée automatiquement un événement provisoire dans le calendrier de Christie.

Connectez-vous sous le nom de Christie, obtenez l’entité eventMessage et l’événement associés à la demande de réunion de l’étape 2.

Autorisations Microsoft Graph

Utilisez les autorisations déléguées les moins privilégiées, Mail.Read et Calendar.Read.Shared. Pour plus d'informations, voir autorisations de courrier et autorisations de calendrier.

GET https://graph.microsoft.com/v1.0/me/messages/AAMkADADVj3fyAABZ5hYdAAA=?$expand=microsoft.graph.eventMessage/event

Notez qu’une réponse réussie inclut le code de réponse HTTP 200 et les propriétés eventMessage (messageÉvénement) suivantes :

  • meetingMessageType (typeMessageRéunion) indique que ce message est meetingRequest.
  • sender (expéditeur) correspond à Adele.
  • from (de) correspond à Alex.
  • toRecipients (auxDestinataires) inclut Megan et Christie.

Et les propriétés d’événement suivantes :

  • attendees (participants) inclut Alex, Megan et Christie.
  • organizer (organisateur) correspond à Alex.

L’identité d’Adele apparaît uniquement dans la propriété sender (expéditeur) de l’entité eventMessage (messageÉvénement) et non dans l’événement associé.

HTTP/1.1 200 OK
Content-type: application/json

{
    "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#users('662b947c-d9a1-4064-926c-eba1316d4462')/messages(microsoft.graph.eventMessage/event())/$entity",
    "@odata.type": "#microsoft.graph.eventMessage",
    "@odata.etag": "W/\"CwAAABYAAADK82uJYVo4RrFV3ADVj3fyAABZ378h\"",
    "id": "AAMkADADVj3fyAABZ5hYdAAA=",
    "createdDateTime": "2019-12-21T04:59:03Z",
    "lastModifiedDateTime": "2019-12-21T04:59:04Z",
    "changeKey": "CwAAABYAAADK82uJYVo4RrFV3ADVj3fyAABZ378h",
    "categories": [],
    "receivedDateTime": "2019-12-21T04:59:03Z",
    "sentDateTime": "2019-12-21T04:59:01Z",
    "hasAttachments": false,
    "internetMessageId": "<DM6PR17MB3593711A1C0A098167F5A977A12C0@DM6PR17MB3593.namprd17.prod.outlook.com>",
    "subject": "Christmas dinner",
    "bodyPreview": "Happy holidays!",
    "importance": "normal",
    "parentFolderId": "AQMkADIAAAIBDAAAAA==",
    "conversationId": "AAQkADNqQlzYAM8jQM=",
    "conversationIndex": "AdW3u1xx5S7TYrbluE2pCXNgAzyNAw==",
    "isDeliveryReceiptRequested": null,
    "isReadReceiptRequested": false,
    "isRead": true,
    "isDraft": false,
    "webLink": "https://outlook.office365.com/owa/?ItemID=AAMkADADVj3fyAABZ5hYdAAA%3D&exvsurl=1&viewmodel=ReadMessageItem",
    "inferenceClassification": "focused",
    "meetingMessageType": "meetingRequest",
    "body": {
        "contentType": "html",
        "content": "<html>\r\n<head>\r\n<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\">\r\n<meta content=\"text/html; charset=us-ascii\">\r\n</head>\r\n<body>\r\nHappy holidays!\r\n</body>\r\n</html>\r\n"
    },
    "sender": {
        "emailAddress": {
            "name": "Adele Vance",
            "address": "AdeleV@contoso.OnMicrosoft.com"
        }
    },
    "from": {
        "emailAddress": {
            "name": "Alex Wilber",
            "address": "AlexW@contoso.OnMicrosoft.com"
        }
    },
    "toRecipients": [
        {
            "emailAddress": {
                "name": "Megan Bowen",
                "address": "MeganB@contoso.OnMicrosoft.com"
            }
        },
        {
            "emailAddress": {
                "name": "Christie Cline",
                "address": "ChristieC@contoso.OnMicrosoft.com"
            }
        }
    ],
    "ccRecipients": [],
    "bccRecipients": [],
    "replyTo": [],
    "flag": {
        "flagStatus": "notFlagged"
    },
    "event": {
        "@odata.etag": "W/\"yvNriWFaOEaxVdwA1Y938gAAX+T7Jg==\"",
        "id": "AAMkADADVj3fyAABZ5ieyAAA=",
        "createdDateTime": "2019-12-21T04:59:03.4336242Z",
        "lastModifiedDateTime": "2019-12-27T01:38:32.3766961Z",
        "changeKey": "yvNriWFaOEaxVdwA1Y938gAAX+T7Jg==",
        "categories": [],
        "originalStartTimeZone": "Pacific Standard Time",
        "originalEndTimeZone": "Pacific Standard Time",
        "iCalUId": "040000008200FEFE0BA532444B5FD89BDE22BA103",
        "reminderMinutesBeforeStart": 15,
        "isReminderOn": true,
        "hasAttachments": false,
        "subject": "Christmas dinner",
        "bodyPreview": "Happy holidays!",
        "importance": "normal",
        "sensitivity": "normal",
        "isAllDay": false,
        "isCancelled": false,
        "isOrganizer": false,
        "responseRequested": true,
        "seriesMasterId": null,
        "showAs": "tentative",
        "type": "singleInstance",
        "webLink": "https://outlook.office365.com/owa/?itemid=AAMkADADVj3fyAABZ5ieyAAA%3D&exvsurl=1&path=/calendar/item",
        "onlineMeetingUrl": null,
        "recurrence": null,
        "responseStatus": {
            "response": "none",
            "time": "2019-12-21T05:16:48.8931825Z"
        },
        "body": {
            "contentType": "html",
            "content": "<html>\r\n<head>\r\n<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\">\r\n<meta content=\"text/html; charset=us-ascii\">\r\n</head>\r\n<body>\r\nHappy holidays!\r\n</body>\r\n</html>\r\n"
        },
        "start": {
            "dateTime": "2019-12-26T02:00:00.0000000",
            "timeZone": "UTC"
        },
        "end": {
            "dateTime": "2019-12-26T06:00:00.0000000",
            "timeZone": "UTC"
        },
        "location": {
            "displayName": "Alex' home",
            "locationType": "default",
            "uniqueId": "Alex' home",
            "uniqueIdType": "private"
        },
        "locations": [
            {
                "displayName": "Alex' home",
                "locationType": "default",
                "uniqueId": "1396aaf3-e344-4567-a4e3-797557ec24c8",
                "uniqueIdType": "locationStore"
            }
        ],
        "attendees": [
            {
                "type": "required",
                "status": {
                    "response": "none",
                    "time": "0001-01-01T00:00:00Z"
                },
                "emailAddress": {
                    "name": "Alex Wilber",
                    "address": "AlexW@contoso.OnMicrosoft.com"
                }
            },
            {
                "type": "required",
                "status": {
                    "response": "none",
                    "time": "0001-01-01T00:00:00Z"
                },
                "emailAddress": {
                    "name": "Megan Bowen",
                    "address": "MeganB@contoso.OnMicrosoft.com"
                }
            },
            {
                "type": "required",
                "status": {
                    "response": "none",
                    "time": "0001-01-01T00:00:00Z"
                },
                "emailAddress": {
                    "name": "Christie Cline",
                    "address": "ChristieC@contoso.OnMicrosoft.com"
                }
            }
        ],
        "organizer": {
            "emailAddress": {
                "name": "Alex Wilber",
                "address": "AlexW@contoso.OnMicrosoft.com"
            }
        }
    }
}

Étape 4 : Christie répond à la demande de réunion

Connectez-vous sous le nom de Christie, répondez à l’événement de façon provisoire et incluez un message de réponse dans la réponse :

Autorisations Microsoft Graph

Utilisez l’autorisation déléguée la moins privilégiée, Calendars.ReadWrite.Shared. Pour plus d’informations, consultez autorisations de calendrier.

POST https://graph.microsoft.com/v1.0/me/events/AAMkADADVj3fyAABZ5ieyAAA=/tentativelyAccept
Content-type: application/json

{
  "comment": "I will probably be able to make it.",
  "sendResponse": true
}

Une réponse réussie renvoie HTTP 202 Accepté.

HTTP/1.1 202 Accepted

Étape 5 : Adele reçoit le message de réponse

Étant donné qu’Adele est une déléguée du calendrier principal d’Alex, elle reçoit toutes les réponses de réunion associées à ce calendrier au nom d’Alex.

Connectez-vous sous le nom d’Adèle et obtenez eventMessage correspondant à la réponse de Christie de l’étape 4.

Autorisations Microsoft Graph

Utilisez l’autorisation déléguée la moins privilégiée, Mail.Read.Shared. Pour plus d’informations, consultez Autorisations de messagerie.

GET https://graph.microsoft.com/v1.0/me/messages/AAMkADI4oeRpAABf0HJUAAA=

Notez qu’une réponse réussie inclut le code de réponse HTTP 200 et les propriétés eventMessage (messageÉvénement) suivantes :

  • meetingMessageType (typeMessageRéunion) correspond à meetingTenativelyAccepted.
  • from (de) correspond à Christie.
  • toRecipients (auxDestinataires) inclut uniquement Adele, mais pas le propriétaire du calendrier, Alex. Cela est dû au fait qu’Alex a conservé la configuration par défaut de façon à ce qu’Outlook dirige toutes les réponses de réunion vers les délégués uniquement.
HTTP/1.1 200 OK
Content-type: application/json

{
    "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#users('d3b9214b-dd8b-441d-b7dc-c446c9fa0e69')/messages/$entity",
    "@odata.type": "#microsoft.graph.eventMessage",
    "@odata.etag": "W/\"DAAAABYAAAA0POeX5SHnRaRqdoI4oeRpAABfybkT\"",
    "id": "AAMkADI4oeRpAABf0HJUAAA=",
    "createdDateTime": "2019-12-21T05:16:55Z",
    "lastModifiedDateTime": "2019-12-21T05:16:57Z",
    "changeKey": "DAAAABYAAAA0POeX5SHnRaRqdoI4oeRpAABfybkT",
    "categories": [],
    "receivedDateTime": "2019-12-21T05:16:56Z",
    "sentDateTime": "2019-12-21T05:16:49Z",
    "hasAttachments": false,
    "internetMessageId": "<86880ccb8ec64184996e46eaddaed279@DM6PR17MB3593.namprd17.prod.outlook.com>",
    "subject": "Tentative: Christmas dinner",
    "bodyPreview": "I will probably be able to make it.",
    "importance": "normal",
    "parentFolderId": "AQMkAD5GkAAAIBDAAAAA==",
    "conversationId": "AAQkADK25bhNqQlzYAM8jQM=",
    "conversationIndex": "AdW3u1xx5S7TYrbluE2pCXNgAzyNAwAAoBoZ",
    "isDeliveryReceiptRequested": null,
    "isReadReceiptRequested": false,
    "isRead": false,
    "isDraft": false,
    "webLink": "https://outlook.office365.com/owa/?ItemID=AAMkADI4oeRpAABf0HJUAAA%3D&exvsurl=1&viewmodel=ReadMessageItem",
    "inferenceClassification": "focused",
    "meetingMessageType": "meetingTenativelyAccepted",
    "body": {
        "contentType": "html",
        "content": "<html>\r\n<head>\r\n<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\">\r\n<meta content=\"text/html; charset=us-ascii\">\r\n</head>\r\n<body>\r\nI will probably be able to make it.\r\n</body>\r\n</html>\r\n"
    },
    "sender": {
        "emailAddress": {
            "name": "Christie Cline",
            "address": "ChristieC@contoso.OnMicrosoft.com"
        }
    },
    "from": {
        "emailAddress": {
            "name": "Christie Cline",
            "address": "ChristieC@contoso.OnMicrosoft.com"
        }
    },
    "toRecipients": [
        {
            "emailAddress": {
                "name": "Adele Vance",
                "address": "AdeleV@contoso.OnMicrosoft.com"
            }
        }
    ],
    "ccRecipients": [],
    "bccRecipients": [],
    "replyTo": [],
    "flag": {
        "flagStatus": "notFlagged"
    }
}

Étape 6 : Alex accède aux réponses dans le cadre de l’événement

Comme Alex a conservé la configuration par défaut de façon à ce qu’Outlook dirige toutes les demandes et réponses de réunion vers les délégués uniquement, il ne reçoit pas la réponse de Christie de l’étape 4. Il peut toutefois obtenir la réponse via l’événement de son calendrier principal.

Connectez-vous sous le nom d’Alex, obtenez l’événement qu’Adele créé à l’étape 2 et obtenez les réponses à partir de la propriété participants.

Autorisations Microsoft Graph

Utilisez l’autorisation déléguée la moins privilégiée, Calendars.Read. Pour plus d’informations, consultez autorisations de calendrier.

GET https://graph.microsoft.com/v1.0/me/calendar/events/AAMkADJXJGu0AABf02qwAAA=

Notez qu’une réponse réussie inclut le code de réponse HTTP 200 et les propriétés d’événement suivantes :

  • isOrganizer (estOrganisateur) est vrai.
  • attendees (participants) inclut uniquement Megan et Christie.
  • La propriété status (état) de chaque instance de attendee (participant) indique la réponse du participant :
    • La réponse de Megan est none.
    • La réponse de Christie est tentativelyAccepted.
  • organizer (organisateur) correspond à Alex.
  • L’absence de propriété dans l’événement renvoyé indique le délégué, Adele.
HTTP/1.1 200 OK
Content-type: application/json

{
    "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#users('64339082-ed84-4b0b-b4ab-004ae54f3747')/calendars('AQMkADAw7QAAAJfygAAAA%3D%3D')/events/$entity",
    "@odata.etag": "W/\"NEXywgsVrkeNsFsyVyRrtAAAX8xuhA==\"",
    "id": "AAMkADJXJGu0AABf02qwAAA=",
    "createdDateTime": "2019-12-21T04:59:01.4435895Z",
    "lastModifiedDateTime": "2019-12-21T05:16:54.689345Z",
    "changeKey": "NEXywgsVrkeNsFsyVyRrtAAAX8xuhA==",
    "categories": [],
    "originalStartTimeZone": "Pacific Standard Time",
    "originalEndTimeZone": "Pacific Standard Time",
    "iCalUId": "040000008200FEFE0BA532444B5FD89BDE22BA103",
    "reminderMinutesBeforeStart": 15,
    "isReminderOn": true,
    "hasAttachments": false,
    "subject": "Christmas dinner",
    "bodyPreview": "Happy holidays!",
    "importance": "normal",
    "sensitivity": "normal",
    "isAllDay": false,
    "isCancelled": false,
    "isOrganizer": true,
    "responseRequested": true,
    "seriesMasterId": null,
    "showAs": "busy",
    "type": "singleInstance",
    "webLink": "https://outlook.office365.com/owa/?itemid=AAMkADJXJGu0AABf02qwAAA%3D&exvsurl=1&path=/calendar/item",
    "onlineMeetingUrl": null,
    "recurrence": null,
    "responseStatus": {
        "response": "organizer",
        "time": "0001-01-01T00:00:00Z"
    },
    "body": {
        "contentType": "html",
        "content": "<html>\r\n<head>\r\n<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\">\r\n<meta content=\"text/html; charset=us-ascii\">\r\n</head>\r\n<body>\r\nHappy holidays!\r\n</body>\r\n</html>\r\n"
    },
    "start": {
        "dateTime": "2019-12-26T02:00:00.0000000",
        "timeZone": "UTC"
    },
    "end": {
        "dateTime": "2019-12-26T06:00:00.0000000",
        "timeZone": "UTC"
    },
    "location": {
        "displayName": "Alex' home",
        "locationType": "default",
        "uniqueId": "Alex' home",
        "uniqueIdType": "private"
    },
    "locations": [
        {
            "displayName": "Alex' home",
            "locationType": "default",
            "uniqueId": "Alex' home",
            "uniqueIdType": "private"
        }
    ],
    "attendees": [
        {
            "type": "required",
            "status": {
                "response": "none",
                "time": "0001-01-01T00:00:00Z"
            },
            "emailAddress": {
                "name": "Megan Bowen",
                "address": "MeganB@contoso.OnMicrosoft.com"
            }
        },
        {
            "type": "required",
            "status": {
                "response": "tentativelyAccepted",
                "time": "2019-12-21T05:16:48.8931825Z"
            },
            "emailAddress": {
                "name": "Christie Cline",
                "address": "ChristieC@contoso.OnMicrosoft.com"
            }
        }
    ],
    "organizer": {
        "emailAddress": {
            "name": "Alex Wilber",
            "address": "AlexW@contoso.OnMicrosoft.com"
        }
    }
}

Étapes suivantes

Pour en savoir plus, voir :