Un recurso de tutor representa a un usuario, como un padre o una madre, que recibe información sobre los cursos y el trabajo de un estudiante. El tutor, que generalmente no es miembro del dominio de Classroom del estudiante, debe recibir una invitación con su dirección de correo electrónico para convertirse en tutor.
Esta invitación crea un recurso GuardianInvitation con un estado de PENDING
. Luego, el usuario recibe un correo electrónico en el que se le solicita que acepte la invitación. Si la dirección de correo electrónico no está asociada con una Cuenta de Google, se le pedirá al usuario que cree una antes de aceptar la invitación.
Mientras la invitación tenga el estado PENDING
, el usuario podrá aceptarla, lo que creará un recurso para tutores y marcará GuardianInvitation con el estado COMPLETED
. Una invitación también puede convertirse en COMPLETED
si vence o si un usuario autorizado la cancela (por ejemplo, con el método PatchGuardianInvitation
). Un tutor, un profesor de Classroom o un administrador también puede finalizar una relación con un tutor mediante la interfaz de usuario de Classroom o el método DeleteGuardian
.
Quién puede administrar a los tutores
En la siguiente tabla, se describen las acciones que se pueden realizar con respecto a los tutores, según el tipo de usuario autenticado actualmente:
Permisos
Existen tres permisos que te permiten administrar a los tutores:
- https://www.googleapis.com/auth/classroom.guardianlinks.me.readonly te permite ver los tutores de un usuario.
- https://www.googleapis.com/auth/classroom.guardianlinks.students.readonly te permite ver a los tutores y las invitaciones para tutores de los estudiantes a los que el usuario enseña o administra.
- https://www.googleapis.com/auth/classroom.guardianlinks.students te permite ver y modificar los tutores y GuardianInvitations para los estudiantes a los que el usuario enseña o administra.
Acciones comunes
En esta sección, se describen algunas de las acciones comunes de los tutores que podrías querer realizar con la API de Google Classroom.
Crea una invitación para ser tutor
En el siguiente ejemplo, se muestra cómo puedes crear una invitación para el tutor con el 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')))
El resultado incluye un identificador asignado por el servidor que se puede usar para hacer referencia a GuardianInvitation.
Cómo cancelar la invitación a un tutor
Para cancelar una invitación, llama al método userProfiles.guardianInvitations.patch()
para modificar el estado de PENDING
a COMPLETE
.
Ten en cuenta que, por el momento, esta es la única forma de quitar una invitación.
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()
Cómo ver la lista de invitaciones de un estudiante específico
Puedes obtener una lista de todas las invitaciones que se enviaron a un estudiante
específico con el 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')))
De forma predeterminada, solo se devolverán PENDING
invitaciones. Como administrador
del dominio, también puedes recuperar invitaciones en el estado COMPLETED
si
proporcionas un parámetro de estado.
Cómo ver la lista de tutores activos
Si deseas determinar qué usuarios son tutores activos de un estudiante específico, puedes usar el método userProfiles.guardians.list()
. Los tutores activos son aquellos que aceptaron la invitación por correo electrónico.
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')))
Cómo quitar tutores
También puedes quitar a un tutor de un estudiante con el método userProfiles.guardians.delete()
:
Java
Python
service.userProfiles().guardians().delete(studentId='student@mydomain.edu',
guardianId='guardian@gmail.com').execute()