У меня есть права администратора в организации 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 позволяет создавать расширения для веб-браузеров, улучшая их функциональность.
После некоторого тестирования в учетной записи 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
.