Um recurso Guardian
representa um usuário, como um responsável, que recebe informações sobre os cursos e as atividades
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.
Os convites são representados pelo recurso GuardianInvitation
. O usuário convidado
recebe um e-mail pedindo 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.
Quando o usuário é convidado e antes de aceitar o convite, o
GuardianInvitation
tem um estado de PENDING
. Depois que o usuário aceita o
convite, o GuardianInvitation
é marcado como COMPLETED
, e um
recurso Guardian
é criado.
Um estado GuardianInvitation
também pode ser alterado para 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 o aplicativo da Web do Google Sala de Aula
ou o método DeleteGuardian
.
Quem pode gerenciar familiares
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:
Escopos
Existem três escopos que permitem gerenciar os responsáveis:
https://www.googleapis.com/auth/classroom.guardianlinks.me.readonly
: visualizar os responsáveis do usuário.https://www.googleapis.com/auth/classroom.guardianlinks.students.readonly
: acessar responsáveis e convites de responsáveis para estudantes que o usuário ministra ou administra.https://www.googleapis.com/auth/classroom.guardianlinks.students
: acessar e gerenciar responsáveis e convites para responsáveis de estudantes que o usuário ministra 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')))
A resposta inclui um identificador atribuído pelo servidor que pode ser usado para se referir a
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()
.
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
É possível receber uma lista de todos os convites enviados para um estudante
específico usando o método userProfiles.guardianInvitations.list()
. Por
padrão, apenas os convites PENDING
serão retornados. Um administrador
de domínio também pode recuperar convites no estado COMPLETED
fornecendo
um parâmetro states
.
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')))
Listar responsáveis ativos
Para 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.
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()