Как добавить учащегося (@gmail.com) в класс Classroom, созданный внутри моей организации с помощью Apps Script?

У меня есть права администратора в организации Google Workspace, и я хочу пригласить внешнего пользователя (@gmail.com) в качестве учащегося на уроке в Классе, используя Classroom API внутри скрипта Google Apps.

В настоящее время я использую этот код, чтобы пригласить любого пользователя:

Classroom.Invitations.create({
    "userId": email,
    "courseId": courseId,
    "role": "STUDENT"
  });

Это работает нормально, если электронная почта принадлежит домену моей организации, но если я попробую тот же код с учетной записью @gmail.com, скрипт вернет:

GoogleJsonResponseException: вызов API class.invitations.create завершился с ошибкой: у вызывающего абонента нет разрешения

Я могу добавить его вручную в Google Classroom, но через Apps Script это не работает. Возможно, стоит упомянуть, что учетная запись владельца Класса — это не моя учетная запись, а другая в моем домене, а сценарий, который я использую, находится на общем диске.

РЕШЕНО (спасибо Saddles): Чтобы это работало, учетная запись администратора, пытающаяся пригласить студентов, должна быть зарегистрирована в качестве преподавателя на курсе.

🤔 А знаете ли вы, что...
JavaScript позволяет создавать расширения для веб-браузеров, улучшая их функциональность.


58
1

Ответ:

Решено

После некоторого тестирования в учетной записи Google Workspace, чтобы добавить пользователя @gmail.com в класс с помощью скрипта Google Apps, убедитесь, что для параметра Who can join classes in your domain? в консоли администратора установлено значение Any user.

Затем добавьте Super Admin в качестве co-teacher в Google Classroom, так как в противном случае появится ошибка GoogleJsonResponseException: API call to classroom.invitations.create failed with error: The caller does not have permission.

ССЫЛКА


Интересные вопросы для изучения