Я пытаюсь сделать простую заявку на бронирование номера в моем офисе.Пользователи могут выбрать временные рамки, просмотреть доступные комнаты и забронировать комнату (создать событие в своем календаре на этот промежуток времени в этой комнате).
Чтобы узнать, какие комнаты доступны, я пытаюсьиспользовать Microsoft Graph REST API и, в частности, метод POST - getSchedule .
Пример запроса getSchedule выглядит следующим образом:
{
"schedules": ["adelev@contoso.onmicrosoft.com", "meganb@contoso.onmicrosoft.com"],
"startTime": {
"dateTime": "2019-03-15T09:00:00",
"timeZone": "Pacific Standard Time"
},
"endTime": {
"dateTime": "2019-03-15T18:00:00",
"timeZone": "Pacific Standard Time"
},
"availabilityViewInterval": "60"
}
Я размещаю всекомнаты в офисе в списке расписаний, а затем можно увидеть их доступность в ответе на основе представления доступности.
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#Collection(microsoft.graph.scheduleInformation)",
"value": [
{
"scheduleId": "adelev@contoso.onmicrosoft.com",
"availabilityView": "000220000",
"scheduleItems": [
{
"isPrivate": false,
"status": "busy",
"subject": "Let's go for lunch",
"location": "Harry's Bar",
"start": {
"dateTime": "2019-03-15T12:00:00.0000000",
"timeZone": "Pacific Standard Time"
},
"end": {
"dateTime": "2019-03-15T14:00:00.0000000",
"timeZone": "Pacific Standard Time"
}
}
],
"workingHours": {
"daysOfWeek": [
"monday",
"tuesday",
"wednesday",
"thursday",
"friday"
],
"startTime": "08:00:00.0000000",
"endTime": "17:00:00.0000000",
"timeZone": {
"name": "Pacific Standard Time"
}
}
},
Однако мне не нужна никакая другая информация, предоставленная в ответе.Я хочу видеть только scheduleId и AvailabilityView, потому что ответ загружается многими комнатами в запросе расписаний вечно.
Я искал доступные способы фильтрации ответа по параметрам в POST.запрос по адресу: https://docs.microsoft.com/en-us/graph/query-parameters. Однако любой из фильтров, которые я, кажется, применяю к моему адресу, похоже, не влияет на ответ.
Я пробовал
https://graph.microsoft.com/v1.0/me/calendar/getschedule?$select=availabilityView
за запрос и другие подобные варианты безуспешно.Все они возвращают полный ответ JSON.