Превышена квота Google Calendar Api v3 - PullRequest
0 голосов
/ 07 марта 2020

У меня проблема с созданием событий календаря (с учетной записью службы Google), у меня включено делегирование для всего домена.

Я получаю сообщение об ошибке: "Сообщение [Ограничения использования календаря Превышено.] Местоположение [-] Причина [quotaExceeded] Домен [useLimits] "

Я проверил использование и его менее 10 запросов (Квота установлена ​​на 1 000 000)

Это мой code:

string[] Scopes = { CalendarService.Scope.Calendar, CalendarService.Scope.CalendarEvents };

using (var stream = new FileStream("cred.json", FileMode.Open, FileAccess.Read))
{
    GoogleCredential credential = GoogleCredential.FromStream(stream)
                                 .CreateScoped(Scopes);
    var service = new CalendarService(new BaseClientService.Initializer()
    {
        HttpClientInitializer = credential,
        ApplicationName = "TEST",
    });

    var ev = new Event();
    EventDateTime start = new EventDateTime();
    start.DateTime = DateTime.Now.AddMinutes(30);

    EventDateTime end = new EventDateTime();
    end.DateTime = DateTime.Now.AddMinutes(60);
    ev.Start = start;
    ev.End = end;
    ev.Summary = "Test";
    ev.Description = "Please Work";
    ev.Attendees = new List<EventAttendee>
    {
        new EventAttendee() { Email = "TestMail@gmail.com" }
    };

    var calendarId = "primary";
    service.Events.Insert(ev, calendarId).Execute();

Если я пытаюсь выполнить код без посетителей, он работает без ошибок.

Кто-нибудь сталкивался с этой проблемой раньше?

1 Ответ

0 голосов
/ 10 марта 2020

Это известная ошибка

Сообщается о Система отслеживания ошибок . Вы можете нажать на звездочку рядом с номером проблемы, чтобы придать багу больший приоритет и получать обновления.


Тем не менее, в настоящее время существует обходной путь (за исключением того, что участники не включены):

Делегирование всего домена или выдавать себя за пользователя

Вы можете прочитать о том, как это сделать здесь , шаги:

  1. Найдите вновь созданную учетную запись службы в таблице. В разделе «Действия» нажмите «Показать больше», затем «Изменить».
  2. В сведениях об учетной записи службы нажмите «Показать делегирование по всему домену», а затем установите флажок «Включить делегирование по всему домену G Suite».
  3. Если Вы еще не настроили экран согласия OAuth в своем приложении, это необходимо сделать, прежде чем вы сможете включить делегирование по всему домену. Следуйте инструкциям на экране, чтобы настроить экран согласия OAuth, затем повторите описанные выше шаги и повторно установите флажок.
  4. Нажмите Сохранить, чтобы обновить учетную запись службы и вернуться к таблице учетных записей служб. Можно увидеть новый столбец, делегирование по всему домену. Нажмите Просмотр идентификатора клиента, чтобы получить и записать идентификатор клиента.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...