Um recurso de responsável representa um usuário, como um pai ou responsável, que recebe informações sobre os cursos e o trabalho de um estudante. O responsável, que normalmente não é membro do domínio do Google Sala de Aula do estudante, precisa ser convidado usando o endereço de e-mail dele para se tornar responsável.
Este convite cria um
recurso GuardianInvitation
com um estado PENDING
. O usuário recebe um e-mail solicitando que aceite o convite. Se o endereço de e-mail não estiver associado a uma Conta do Google, o usuário será solicitado a criar uma antes de aceitar o convite.
Enquanto o convite tem um estado de PENDING
, o usuário pode aceitar o
convite, que cria um recurso de guardião e marca o GuardianInvitation
com um estado de COMPLETED
. Um convite também pode se tornar COMPLETED
se
expirar ou se um usuário autorizado cancelar o convite (por exemplo, usando o
método PatchGuardianInvitation
). Uma relação de responsável também pode ser interrompida por
um responsável, um professor do Google Sala de Aula ou um administrador usando a interface do usuário
do Google Sala de Aula ou o método DeleteGuardian
.
Quem pode gerenciar os responsáveis
A tabela a seguir descreve as ações que podem ser realizadas em relação aos responsáveis, de acordo com o tipo de usuário autenticado no momento:
Escopos
Existem três escopos que permitem gerenciar os responsáveis:
- https://www.googleapis.com/auth/classroom.guardianlinks.me.readonly permite que você acesse os próprios tutores de um usuário.
- https://www.googleapis.com/auth/classroom.guardianlinks.students.readonly permite que você acesse os responsáveis e os convites para os estudantes que o usuário ensina ou administra.
- https://www.googleapis.com/auth/classroom.guardianlinks.students permite que você visualize e modifique os responsáveis e os convites de responsáveis para estudantes que o usuário leciona ou administra.
Ações comuns
Esta seção descreve algumas ações comuns para os responsáveis que você pode realizar usando a API Google Classroom.
Criar um convite para o responsável
O exemplo a seguir mostra como criar um convite de responsável usando o
método userProfiles.guardianInvitations.create()
:
Java
Python
guardianInvitation = {
'invitedEmailAddress': 'guardian@gmail.com',
}
guardianInvitation = service.userProfiles().guardianInvitations().create(
studentId='student@mydomain.edu',
body=guardianInvitation).execute()
print("Invitation created with id: {0}".format(guardianInvitation.get('invitationId')))
O resultado inclui um identificador atribuído pelo servidor que pode ser usado para se referir ao GuardianInvitation.
Cancelar um convite para responsáveis
Para cancelar um convite, modifique o estado dele de PENDING
para COMPLETE
chamando o método userProfiles.guardianInvitations.patch()
.
No momento, essa é a única maneira de remover um convite.
Java
Python
guardian_invite = {
'state': 'COMPLETE'
}
guardianInvitation = service.userProfiles().guardianInvitations().patch(
studentId='student@mydomain.edu',
invitationId=1234, # Replace with the invitation ID of the invitation you want to cancel
updateMask='state',
body=guardianInvitation).execute()
Listar convites para um estudante específico
Você pode ver uma lista de todos os convites enviados para um aluno específico usando o método userProfiles.guardianInvitations.list()
:
Java
Python
guardian_invites = []
page_token = None
while True:
response = service.userProfiles().guardianInvitations().list(
studentId='student@mydomain.edu').execute()
guardian_invites.extend(response.get('guardian_invites', []))
page_token = response.get('nextPageToken', None)
if not page_token:
break
if not courses:
print('No guardians invited for this {0}.'.format(response.get('studentId')))
else:
print('Guardian Invite:')
for guardian in guardian_invites:
print('An invite was sent to '.format(guardian.get('id'),
guardian.get('guardianId')))
Por padrão, somente os convites PENDING
são retornados. Como administrador de domínio, você também pode recuperar convites no estado COMPLETED
fornecendo um parâmetro de estados.
Listar responsáveis ativos
Se você quiser determinar quais usuários são responsáveis legais ativos de um estudante
específico, use o método userProfiles.guardians.list()
. Os responsáveis
ativos são aqueles que aceitaram o convite por e-mail.
Java
Python
guardian_invites = []
page_token = None
while True:
response = service.userProfiles().guardians().list(studentId='student@mydomain.edu').execute()
guardian_invites.extend(response.get('guardian_invites', []))
page_token = response.get('nextPageToken', None)
if not page_token:
break
if not courses:
print('No guardians invited for this {0}.'.format(response.get('studentId')))
else:
print('Guardian Invite:')
for guardian in guardian_invites:
print('An invite was sent to '.format(guardian.get('id'),
guardian.get('guardianId')))
Remover responsáveis
Também é possível remover um responsável de um estudante usando o
método userProfiles.guardians.delete()
:
Java
Python
service.userProfiles().guardians().delete(studentId='student@mydomain.edu',
guardianId='guardian@gmail.com').execute()