Acl: update

Actualiza una regla de control de acceso. Pruébalo ahora y ve un ejemplo.

Solicitud

Solicitud HTTP

PUT https://www.googleapis.com/calendar/v3/calendars/calendarId/acl/ruleId

Parámetros

Nombre del parámetro Valor Descripción
Parámetros de ruta de acceso
calendarId string Es el identificador del calendario. Para recuperar los ID de calendario, llama al método calendarList.list. Si quieres acceder al calendario principal del usuario actual, usa la palabra clave “primary”.
ruleId string Es el identificador de la regla de LCA.
Parámetros de consulta opcionales
sendNotifications boolean Indica si se deben enviar notificaciones sobre el cambio en el uso compartido del calendario. Tenga en cuenta que no hay notificaciones sobre la eliminación del acceso. Opcional. El valor predeterminado es True.

Autorización

Esta solicitud requiere una autorización con el siguiente alcance:

Permiso
https://www.googleapis.com/auth/calendar

Para obtener más información, consulta la página de autenticación y autorización.

Cuerpo de la solicitud

En el cuerpo de la solicitud, proporciona un recurso LCA con las siguientes propiedades:

Nombre de la propiedad Valor Descripción Notas
Propiedades obligatorias
scope object La medida en la que esta regla de LCA otorga acceso al calendario.
scope.type string El tipo de alcance. Los valores posibles son:
  • "default": Alcance público. Este es el valor predeterminado.
  • user”: Limita el alcance a un solo usuario.
  • group”: Limita el alcance a un grupo.
  • domain”: Limita el alcance de un dominio.
Nota: Los permisos otorgados al permiso “default”, o público, se aplican a cualquier usuario, autenticado o no.
Propiedades opcionales
role string El rol asignado al permiso. Los valores posibles son:
  • "none": No proporciona acceso.
  • "freeBusyReader": Proporciona acceso de lectura a la información de disponible/ocupado.
  • "reader": Proporciona acceso de lectura al calendario. Los eventos privados se mostrarán a los usuarios con acceso de lectura, pero se ocultarán los detalles de los eventos.
  • "writer": Proporciona acceso de lectura y escritura al calendario. Los eventos privados serán visibles para los usuarios con acceso de escritor y los detalles del evento serán visibles.
  • "owner": Proporciona la propiedad del calendario. Este rol cuenta con todos los permisos del rol de escritor, además de la capacidad adicional de ver y manipular las LCA.
admite escritura
scope.value string La dirección de correo electrónico de un usuario o grupo, o el nombre de un dominio, según el tipo de permiso. Se omite para el tipo "default". admite escritura

Respuesta

Si se ejecuta de forma correcta, este método muestra un recurso LCA en el cuerpo de la respuesta.

Ejemplos

Nota: Los ejemplos de código disponibles para este método no representan todos los lenguajes de programación admitidos (consulta la página de bibliotecas cliente para consultar una lista de lenguajes admitidos).

Java

Usa la biblioteca cliente de Java.

import com.google.api.services.calendar.Calendar;
import com.google.api.services.calendar.model.AclRule;

// ...

// Initialize Calendar service with valid OAuth credentials
Calendar service = new Calendar.Builder(httpTransport, jsonFactory, credentials)
    .setApplicationName("applicationName").build();

// Retrieve the access rule from the API
AclRule rule = service.acl().get('primary', "ruleId").execute();

// Make a change
rule.setRole("newRole");

// Update the access rule
AclRule updatedRule = service.acl().update('primary', rule.getId(), rule).execute();
System.out.println(updatedRule.getEtag());

Python

Usa la biblioteca cliente de Python.

rule = service.acl().get(calendarId='primary', ruleId='ruleId').execute()
rule['role'] = 'newRole'

updated_rule = service.acl().update(calendarId='primary', ruleId=rule['id'], body=rule).execute()
print updated_rule['etag']

PHP

Usa la biblioteca cliente de PHP.

$rule = $service->acl->get('primary', 'ruleId');
$rule->setRole('newRole');

$updatedRule = $service->acl->update('primary', $rule->getId(), $rule);
echo $updatedRule->getEtag();

Ruby

Usa la biblioteca cliente Ruby.

rule = client.get_acl('primary', 'ruleId')
rule.role = 'newRole'
result = client.update_acl('primary', rule.id, rule)
print result.etag

Pruébala

Usa el Explorador de APIs que aparece a continuación para llamar a este método con datos en tiempo real y ver la respuesta.