Une ressource Guardian représente un utilisateur, tel qu'un parent, qui reçoit des informations sur les cours et le travail d'un élève. Le représentant légal, qui n'est généralement pas membre du domaine Classroom de l'élève, doit être invité à l'aide de son adresse e-mail pour devenir responsable.
Cette invitation crée une ressource GuardianInvitation avec l'état PENDING
. L'utilisateur reçoit ensuite un e-mail lui demandant d'accepter l'invitation. Si l'adresse e-mail n'est pas associée à un compte Google, l'utilisateur est invité à en créer un avant d'accepter l'invitation.
Tant que l'invitation est à l'état PENDING
, l'utilisateur peut l'accepter, ce qui crée une ressource Guardian et marque l'état COMPLETED
sur GuardianInvitation. Une invitation peut également devenir COMPLETED
si elle expire ou si un utilisateur autorisé l'annule (par exemple, à l'aide de la méthode PatchGuardianInvitation
). Cette relation peut également être rompue par un responsable, un enseignant ou un administrateur, via l'interface utilisateur Classroom ou la méthode DeleteGuardian
.
Qui peut gérer les représentants légaux
Le tableau suivant décrit les actions pouvant être effectuées pour les représentants légaux, en fonction du type d'utilisateur actuellement authentifié:
Niveaux d'accès
Trois niveaux d'accès vous permettent de gérer les représentants légaux:
- https://www.googleapis.com/auth/classroom.guardianlinks.me.readonly vous permet d'afficher les représentants légaux d'un utilisateur.
- https://www.googleapis.com/auth/classroom.guardianlinks.students.readonly vous permet d'afficher les représentants légaux et les invitations destinées aux représentants légaux des élèves que l'utilisateur enseigne ou gère.
- https://www.googleapis.com/auth/classroom.guardianlinks.students vous permet d'afficher et de modifier les "Guardians" et les "GuardianInvitations" pour les élèves que l'utilisateur enseigne ou gère.
Actions courantes
Cette section décrit certaines des actions courantes des représentants légaux que vous pouvez effectuer à l'aide de l'API Google Classroom.
Créer une invitation de responsable
L'exemple suivant montre comment créer une invitation de représentant légal à l'aide de la méthode 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')))
Le résultat inclut un identifiant attribué par le serveur, qui peut être utilisé pour faire référence à GuardianInvitation.
Annuler l'invitation d'un représentant légal
Pour annuler une invitation, remplacez l'état de l'invitation PENDING
par COMPLETE
en appelant la méthode userProfiles.guardianInvitations.patch()
.
Notez qu'il s'agit actuellement du seul moyen de supprimer une invitation.
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()
Répertorier les invitations pour un élève spécifique
Vous pouvez obtenir la liste de toutes les invitations envoyées à un élève spécifique à l'aide de la méthode 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')))
Par défaut, seules PENDING
invitations sont renvoyées. En tant qu'administrateur de domaine, vous pouvez également récupérer les invitations à l'état COMPLETED
en fournissant un paramètre d'état.
Répertorier les représentants légaux actifs
Si vous souhaitez identifier les utilisateurs qui sont les représentants légaux actifs d'un élève spécifique, vous pouvez utiliser la méthode userProfiles.guardians.list()
. Les gardes actifs sont les représentants légaux qui ont accepté l'invitation par 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')))
Supprimer les représentants légaux
Vous pouvez également supprimer un représentant légal d'un élève à l'aide de la méthode userProfiles.guardians.delete()
:
Java
Python
service.userProfiles().guardians().delete(studentId='student@mydomain.edu',
guardianId='guardian@gmail.com').execute()