Вся сторона приложения, обращенная к Google, написана на .NET.
Я пытаюсь использовать служебную учетную запись, созданную учетной записью администратора, для создания событий на ресурсе. Я могу создавать события и указывать любые параметры, кроме участников.
Пара замечаний:
- У нас есть лицензия ag suite, и она находится в пределах нашей квоты.
- У учетной записи службы есть доступ на запись в календарь.
- Я пытался добавлять участников только в своем домене, и это не решает проблему.
- Я пытался не отправлять уведомления по электронной почте и не получатьтот же ответ.
- Все события добавляются в один и тот же календарь.
- Запросы без посетителей работают совершенно нормально.
- Я видел эту страницу: https://support.google.com/a/answer/2905486?hl=en и предположил, что мне просто нужно, чтобы мои запросы обновлялись. Однако после ожидания выходных я вернулся и все еще получил сообщение об ошибке.
- Когда сообщение не исчезло, я создал новый проект в консоли разработчика Google с новой учетной записью службы. Этот проект также был выполнен с использованием другого электронного адреса (этот адрес принадлежал администратору) в том же доменеПервый запрос на проект привел к той же ошибке.
- Первоначальный проект сделал ~ 500 запросов в течение 3 дней во время тестированияБольшинство из этих запросов были сделаны в приложении JavaScript. Я был в состоянии добавить посетителей в этих событиях. В конце концов я переключил запросы на сервер с учетной записью службы и с тех пор не смог добавить участников.
Этот код я использую для генерации события. ,Get Attendees просто возвращает список EventAttendees для каждого электронного письма в списке.
var attendees = GetAttendees(request.Emails);
var googleEvent = new Event()
{
Summary = request.Title,
Location = request.Location,
Description = request.Description,
Start = new EventDateTime()
{
DateTime = request.MeetingDate,
TimeZone = "America/Chicago"
},
End = new EventDateTime()
{
DateTime = request.EndTime,
TimeZone = "America/Chicago"
},
Attendees = attendees
};
Выполнение любого запроса с участниками приводит к следующему ответу:
{
"error": "Google.Apis.Requests.RequestError\r\nCalendar usage limits exceeded. [403]\r\nErrors [\r\n\tMessage[Calendar usage limits exceeded.] Location[ - ] Reason[quotaExceeded] Domain[usageLimits]\r\n]\r\n",
"exception": {
"ServiceName": "calendar",
"Error": {
"Errors": [
{
"Domain": "usageLimits",
"Reason": "quotaExceeded",
"Message": "Calendar usage limits exceeded.",
"LocationType": null,
"Location": null
}
],
"Code": 403,
"Message": "Calendar usage limits exceeded."
},
"HttpStatusCode": 403,
"Message": "Google.Apis.Requests.RequestError\r\nCalendar usage limits exceeded. [403]\r\nErrors [\r\n\tMessage[Calendar usage limits exceeded.] Location[ - ] Reason[quotaExceeded] Domain[usageLimits]\r\n]\r\n",
"Data": {},
"InnerException": null,
"StackTrace": " ..."
},
"type": "Google.GoogleApiException"
}