Список событий
Пространство имен: microsoft.graph
Важно!
API версии /beta
в Microsoft Graph могут быть изменены. Использование этих API в производственных приложениях не поддерживается. Чтобы определить, доступен ли API в версии 1.0, используйте селектор версий.
Получение списка событий в календаре. Это может быть календарь для пользователя или стандартный календарь для группы Microsoft 365. В этом списке указаны единичные собрания и главные собрания в соответствующих рядах.
Чтобы получить расширенные экземпляры события, вы можете получить представление календаря или экземпляры события.
Примечание.
Если календарь целевого почтового ящика содержит какие-либо частные элементы, вызывающий должен:
- Предоставление разрешений почтового ящика
FullAccess
для целевого почтового ящика (с помощью командлета Add-MailboxPermission ). - Будут предоставлены
Delegate
+CanViewPrivateItems
флаги (аналогично предыдущему параметру, но с помощью командлета Add-MailboxFolderPermission ). Этот параметр направляет все приглашения на собрания в почтовый ящик делегата. Обходной путь см. в разделе SharingPermissionFlags.
Несоблюдение этих условий приведет к ответу The specified object was not found in the store
.
Этот API доступен в следующих национальных облачных развертываниях.
Глобальная служба | Правительство США L4 | Правительство США L5 (DOD) | Китай управляется 21Vianet |
---|---|---|---|
✅ | ✅ | ✅ | ✅ |
Разрешения
В зависимости от типа календаря, к которому относится событие, а также от требуемого типа разрешений (делегированные или разрешения приложений), для вызова этого API необходимо одно из указанных ниже разрешений. Дополнительные сведения, включая сведения о том, как выбрать разрешения, см. в статье Разрешения.
Календарь | Делегированные (рабочая или учебная учетная запись) | Делегированное (личная учетная запись Майкрософт) | Приложение |
---|---|---|---|
календарь пользователя | Calendars.ReadBasic, Calendars.Read, Calendars.ReadWrite | Calendars.ReadBasic, Calendars.Read, Calendars.ReadWrite | Calendars.ReadBasic, Calendars.Read, Calendars.ReadWrite |
календарь группы | Group.Read.All, Group.ReadWrite.All | Не поддерживается. | Не поддерживается. |
HTTP-запрос
Календарь пользователя или группы по умолчанию.
GET /me/calendar/events
GET /users/{id | userPrincipalName}/calendar/events
GET /groups/{id}/calendar/events
Экземпляр calendar пользователя в экземпляре по умолчанию calendarGroup.
GET /me/calendars/{id}/events
GET /users/{id | userPrincipalName}/calendars/{id}/events
Календарь пользователя в определенной группе calendarGroup.
GET /me/calendarGroups/{id}/calendars/{id}/events
GET /users/{id | userPrincipalName}/calendarGroups/{id}/calendars/{id}/events
Необязательные параметры запросов
Этот метод поддерживает параметры запросов OData для настройки ответа.
Заголовки запросов
Имя | Тип | Описание |
---|---|---|
Authorization | string | Bearer {token}. Обязательно. Дополнительные сведения о проверке подлинности и авторизации. |
Prefer: outlook.timezone | string | С помощью этого заголовка вы можете задать часовой пояс для времени начала и окончания в ответе. Если он не задан, эти значения времени возвращаются в формате UTC. Необязательный параметр. |
Текст запроса
Не указывайте текст запроса для этого метода.
Отклик
В случае успеха этот метод возвращает код отклика 200 OK
и коллекцию объектов Event в теле отклика.
Пример
Пример 1. Перечисление событий календаря
Запрос
Ниже показан пример запроса.
GET https://graph.microsoft.com/beta/me/calendar/events
Отклик
Ниже показан пример отклика. Примечание. Объект отклика, показанный здесь, может быть сокращен для удобочитаемости.
HTTP/1.1 200 OK
Content-type: application/json
{
"value": [
{
"originalStartTimeZone": "originalStartTimeZone-value",
"originalEndTimeZone": "originalEndTimeZone-value",
"responseStatus": {
"response": "",
"time": "2016-10-19T10:37:00Z"
},
"uid": "iCalUId-value",
"reminderMinutesBeforeStart": 99,
"isReminderOn": true
}
]
}
Отклик
Ниже показан пример отклика. Примечание. Объект отклика, показанный здесь, может быть сокращен для удобочитаемости.
HTTP/1.1 200 OK
Content-type: application/json
{
"value": [
{
"originalStartTimeZone": "originalStartTimeZone-value",
"originalEndTimeZone": "originalEndTimeZone-value",
"responseStatus": {
"response": "",
"time": "datetime-value"
},
"iCalUId": "iCalUId-value",
"reminderMinutesBeforeStart": 99,
"isReminderOn": true
}
]
}
Пример 2. Получение событий путем фильтрации по свойству темы
Этот пример получает события из основного календаря пользователя путем фильтрации по их теме, начиная с варианта "Все".
Запрос
Ниже показан пример запроса.
GET https://graph.microsoft.com/beta/me/calendar/events?$filter=startsWith(subject,'All')
Отклик
Ниже показан пример отклика. Примечание. Объект отклика, показанный здесь, может быть сокращен для удобочитаемости.
HTTP/1.1 200 OK
Content-type: application/json
{
"@odata.context": "https://graph.microsoft.com/beta/$metadata#users('458d4c95-124e-49da-ba9d-1dd0387e682e')/calendar/events",
"value": [
{
"@odata.etag": "W/\"73p1z1T9xUKc8HVNwAwcvgAAR5r+mw==\"",
"id": "AAMkADBmYTFkMzUyLTgxODQtNDA0YS05YzdlLWRkYjJlY2U4NTljZgBGAAAAAACdCqnIfBTiS7nPzH--j6RvBwDvenXPVP3FQpzwdU3ADBy_AAAAAAENAADvenXPVP3FQpzwdU3ADBy_AABH5Vj3AAA=",
"createdDateTime": "2021-09-13T13:08:27.8871578Z",
"lastModifiedDateTime": "2021-09-14T15:14:24.624932Z",
"changeKey": "73p1z1T9xUKc8HVNwAwcvgAAR5r+mw==",
"categories": [],
"transactionId": "f9a93e83-2e8f-a9aa-29af-17b4fe87e221",
"originalStartTimeZone": "India Standard Time",
"originalEndTimeZone": "India Standard Time",
"uid": "040000008200E00074C5B7101A82E008000000001EC43E71A0A8D7010000000000000000100000003FE75E1BE3F09B43BCF2C0EF408DD567",
"reminderMinutesBeforeStart": 15,
"isReminderOn": true,
"hasAttachments": false,
"subject": "All APIs Testing",
"bodyPreview": "Microsoft Teams meeting",
"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=AAMkADBmYTFkMzUyLTgxODQtNDA0YS05YzdlLWRkYjJlY2U4NTljZgBGAAAAAACdCqnIfBTiS7nPzH%2F%2Fj6RvBwDvenXPVP3FQpzwdU3ADBy%2BAAAAAAENAADvenXPVP3FQpzwdU3ADBy%2BAABH5Vj3AAA%3D&exvsurl=1&path=/calendar/item",
"onlineMeetingUrl": null,
"isOnlineMeeting": true,
"onlineMeetingProvider": "teamsForBusiness",
"allowNewTimeProposals": true,
"occurrenceId": null,
"isDraft": false,
"hideAttendees": false,
"recurrence": null,
"responseStatus": {
"response": "organizer",
"time": "0001-01-01T00:00:00Z"
},
"body": {
"contentType": "html",
"content": "<html><head><meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\"><meta content=\"text/html; charset=us-ascii\"></head><body><br>Microsoft Teams meeting</body></html>"
},
"start": {
"dateTime": "2021-09-14T08:00:00.0000000",
"timeZone": "UTC"
},
"end": {
"dateTime": "2021-09-14T08:30:00.0000000",
"timeZone": "UTC"
},
"location": {
"displayName": "Singapore",
"locationType": "default",
"uniqueId": "79e60b5c-bf7e-4811-b314-6eb7f270ec21",
"uniqueIdType": "locationStore"
},
"locations": [
{
"displayName": "Singapore",
"locationType": "default",
"uniqueId": "79e60b5c-bf7e-4811-b314-6eb7f270ec21",
"uniqueIdType": "locationStore"
}
],
"attendees": [
{
"type": "required",
"status": {
"response": "none",
"time": "0001-01-01T00:00:00Z"
},
"emailAddress": {
"name": "admin@contoso.com",
"address": "admin@contoso.com"
}
}
],
"organizer": {
"emailAddress": {
"name": "Samantha Booth",
"address": "samanthab@contoso.com"
}
},
"onlineMeeting": {
"joinUrl": "https://teams.microsoft.com/l/meetup-join/19%3ameeting_YTU5OGEwOTctMjE5NC00ZDQ3LTk5MGMtNWFjNjRmODNhNmVk%40thread.v2/0?context=%7b%22Tid%22%3a%2272f988bf-86f1-41af-91ab-2d7cd011db47%22%2c%22Oid%22%3a%22458d4c95-124e-49da-ba9d-1dd0387e682e%22%7d"
}
}
]
}