Administrar invitaciones a cursos

Un recurso de invitación en Classroom representa una invitación para que un usuario se una a un curso con un rol específico.

Cada recurso de invitación contiene los siguientes campos:

  • id de la invitación que asigna Classroom.
  • userId del usuario al que se envía la invitación.
  • courseId del curso al que se invita al usuario.
  • role el rol del curso que tendrá el usuario invitado en el curso.

Cómo crear una invitación

Llama al método invitations.create() para crear una invitación para que un usuario pueda unirse a un curso con el rol especificado. Incluye el recurso de invitación en el cuerpo de la solicitud y especifica courseId, userId y role.

Java

classroom/snippets/src/main/java/CreateInvitation.java
Invitation invitation = null;
try {
  /* Set the role the user is invited to have in the course. Possible values of CourseRole can be
  found here: https://developers.google.com/classroom/reference/rest/v1/invitations#courserole.*/
  Invitation content =
      new Invitation().setCourseId(courseId).setUserId(userId).setRole("TEACHER");

  invitation = service.invitations().create(content).execute();

  System.out.printf(
      "User (%s) has been invited to course (%s).\n",
      invitation.getUserId(), invitation.getCourseId());
} catch (GoogleJsonResponseException e) {
  // TODO (developer) - handle error appropriately
  GoogleJsonError error = e.getDetails();
  if (error.getCode() == 404) {
    System.out.printf("The course or user does not exist.\n");
  }
  throw e;
} catch (Exception e) {
  throw e;
}
return invitation;

Cómo recuperar una invitación

Para recuperar una invitación específica, llama al método invitations.get() y especifica el id de la invitación.

Java

classroom/snippets/src/main/java/GetInvitation.java
Invitation invitation = null;
try {
  invitation = service.invitations().get(id).execute();
  System.out.printf(
      "Invitation (%s) for user (%s) in course (%s) retrieved.\n",
      invitation.getId(), invitation.getUserId(), invitation.getCourseId());
} catch (GoogleJsonResponseException e) {
  GoogleJsonError error = e.getDetails();
  if (error.getCode() == 404) {
    System.out.printf("The invitation id (%s) does not exist.\n", id);
  }
  throw e;
} catch (Exception e) {
  throw e;
}
return invitation;

Aceptar una invitación

Si aceptas una invitación a un curso, esta se borrará y se agregará al usuario al curso con el rol especificado en la invitación. Para aceptar una invitación, llama al método invitations.accept() y especifica el id de la invitación.

Java

classroom/snippets/src/main/java/AcceptInvitation.java
try {
  service.invitations().accept(id).execute();
  System.out.printf("Invitation (%s) was accepted.\n", id);
} catch (GoogleJsonResponseException e) {
  GoogleJsonError error = e.getDetails();
  if (error.getCode() == 404) {
    System.out.printf("The invitation id (%s) does not exist.\n", id);
  }
  throw e;
} catch (Exception e) {
  throw e;
}

Cómo borrar una invitación

La única forma de actualizar una invitación es borrarla y crear una nueva. Para borrar la invitación, llama al método invitations.delete() y especifica el id.

Java

classroom/snippets/src/main/java/DeleteInvitation.java
try {
  service.invitations().delete(id).execute();
  System.out.printf("Invitation (%s) was deleted.\n", id);
} catch (GoogleJsonResponseException e) {
  GoogleJsonError error = e.getDetails();
  if (error.getCode() == 404) {
    System.out.printf("The invitation id (%s) does not exist.\n", id);
  }
  throw e;
} catch (Exception e) {
  throw e;
}