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.
Esse convite cria um
recurso GuardianInvitation
com um estado de 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 vai precisar 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 desfeita 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 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 responsáveis de um usuário.
- https://www.googleapis.com/auth/classroom.guardianlinks.students.readonly permite que você acesse os responsáveis e os GuardianInvitations dos 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 das ações comuns de responsáveis que você pode realizar usando a API Google Sala de Aula.
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 de responsável
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 conferir uma lista de todos os convites enviados para um estudante
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, apenas os convites PENDING
são retornados. Como administrador
do 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()