Роли ученика и преподавателя в Google Classroom представляют собой роль пользователя в курсе. Пользователь может быть назначен преподавателем одного курса и студентом другого. Обозначения «ученик» или «преподаватель» представляют собой набор разрешений для конкретного пользователя в конкретном курсе.
- Студенты
 -  Ресурс 
Studentпредставляет пользователя, который зачислен в качестве студента на определенный курс. Студентам разрешено просматривать подробную информацию о курсе и преподавателях этого курса. - Учителя
 -  Ресурс 
Teacherпредставляет пользователя, который преподает определенный курс. Преподавателям разрешено просматривать и изменять сведения о курсе, просматривать преподавателей и учащихся, а также управлять дополнительными преподавателями и учащимися. У каждого курса есть основной преподаватель или владелец курса, который может управлять такими настройками, как передача права собственности на курс. 
 Студенты и преподаватели идентифицируются по уникальному идентификатору или адресу электронной почты пользователя, возвращаемому API каталога . Текущий пользователь также может ссылаться на свой собственный идентификатор, используя сокращение "me" .
Разрешения на прямое управление с помощью API Класса.
Администраторы, учащиеся и преподаватели имеют разные разрешения при непосредственном добавлении или удалении пользователей из курсов с помощью API Класса.
Администраторы
Администраторам домена разрешено обходить поток приглашений и напрямую добавлять студентов и преподавателей в курс, если выполняются следующие условия:
- Добавляемый пользователь является частью домена администратора.
 - Основной преподаватель курса или владелец курса входит в домен администратора.
 
 Для пользователей или курсов, находящихся за пределами домена администратора, приложения должны получить согласие пользователя, отправив приглашение с помощью метода invitations.create() .
Студенты
 Студенты могут добавить себя в курс, вызвав students.create() и указав enrollmentCode курса. enrollmentCode — это уникальный идентификатор курса, включенный в ресурс Course . В веб-приложении Classroom enrollmentCode доступен на вкладке потока и на странице сведений о курсе.
Учителя
 Преподаватели не могут напрямую добавлять пользователей в курс и должны использовать метод invitations.create() чтобы пригласить учащихся и других преподавателей на курс.
 В следующей таблице описано, какому пользователю разрешено отправлять запросы к методам create и delete ресурсов Teacher и Student .
| Администратор | Учитель | Студент | |
|---|---|---|---|
 CreateTeacher | ✔️ | ✖️ | ✖️ | 
 DeleteTeacher | ✔️ | ✔️ | ✖️ | 
 CreateStudent | ✔️ | ✖️ | ✔️ 1 | 
 DeleteStudent | ✔️ | ✔️ | ✔️ 2 | 
1 Студент может добавить в курс только себя.
2 Студент может удалить только себя из курса.
Управление учителями
 Администраторы домена могут напрямую добавлять преподавателей в своем домене в курсы с помощью teachers.create() , как показано в следующем примере: 
.СЕТЬ
Ява
PHP
Питон
 Сопреподаватели могут удалять других преподавателей из курса с помощью метода teachers.delete() . Это удаляет только указанного преподавателя из курса и не влияет на его назначение на другие курсы или на его профиль пользователя.
Управление владельцами курсов
Администраторы домена могут передавать права владения курсами между преподавателями. Важную информацию см. в разделе « Обновление владельца курса» .
Управление студентами
 Администраторы домена могут напрямую добавлять студентов в свой домен с помощью метода students.create() . Если учащийся напрямую добавляет себя в курс, требуется enrollmentCode . 
.СЕТЬ
Ява
PHP
Питон
 Удаление студента из курса с помощью метода students.delete() удаляет его только из указанного курса и не влияет на его зачисление на другие курсы или на его профиль пользователя.
Получить курсы пользователя
 Чтобы получить список курсов для студента или преподавателя, courses.list() и укажите studentId или teacherId соответствующего пользователя.
Получить профиль пользователя
 Чтобы получить профиль пользователя, включая идентификатор и имя, вызовите userProfiles.get() указав идентификатор пользователя, адрес электронной почты или «я» для запрашивающего пользователя. Чтобы получить поле emailAddress , необходимо включить область classroom.profile.emails .
 Возвращаемый id соответствует ресурсу Directory API Users, содержащему соответствующий studentId или teacherId .