Response 400 в Microsoft Graph - Создать событие календаря: свойство emailAddress в полезной нагрузке имеет значение, которое не соответствует схеме
Я создаю новое событие календаря через Microsoft Graph. Я пытаюсь вставить информацию об органайзере в график событий календаря.
if organizer.get('email'):
log('email: ')
log(organizer.get('email', ''))
eventJson["organizer"] = {
"emailAddress": {
"address":str(organizer.get('email', ''))
}
}
журнал:
2019-05-17T17:05:45.421475+00:00 app[web.1]: ERROR
2019-05-17T17:05:45.421493+00:00 app[web.1]: <Response [400]>
2019-05-17T17:05:45.421501+00:00 app[web.1]:
{
"error": {
"code": "BadRequest",
"message": "Property emailAddress in payload has a value that does not match schema.",
"innerError": {
"request-id": "xxxxxxxxxxxx",
"date": "2019-05-17T17:05:45"
}
}
}
Я уже проверил organizer.get('email')
содержание. Кроме того, в некоторых других случаях та же самая структура работала хорошо. Я не знаю, что ожидает схема.
Это пример, который я нашел в документации
"organizer": {
"emailAddress": {
"name": "Megan Bowen",
"address": "MeganB@contoso.OnMicrosoft.com"
}
}
2 ответа
organizer
Свойство автоматически устанавливается владельцем календаря, в котором было создано событие. Это не свойство, которое вы можете установить. Если вы посмотрите на примеры, вы увидите, что organizer
отображается только в ответе, а не в запросе.
Вы не можете установить органайзер в теле POST.
Если вы используете /me/calendars/{id}/events
пользователь, вошедший в систему, является организатором (me
).
Если вы используете /users/{id | userPrincipalName}/calendars/{id}/events
Вы устанавливаете органайзер с {id | userPrincipalName}
(например, с приложением permisions app)
Пример: /users/Guilherme@mail.com/calendars/{id}/events
, Организатор:Guilherme@mail.com
В ссылке, которую вы предоставили Graph Docs для создания события, у вас есть пример запроса (не ответ)