Acl: update

Met à jour une règle de contrôle des accès. Essayez dès maintenant ou consultez un exemple.

Requête

Requête HTTP

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

Paramètres

Nom du paramètre Valeur Description
Paramètres de chemin d'accès
calendarId string Identifiant de l'agenda. Pour récupérer les ID d'agenda, appelez la méthode calendarList.list. Si vous souhaitez accéder à l'agenda principal de l'utilisateur actuellement connecté, utilisez le bouton "primary" mot clé.
ruleId string Identifiant de règle LCA.
Paramètres de requête facultatifs
sendNotifications boolean Permet d'envoyer ou non des notifications sur la modification du partage de l'agenda. Notez qu'aucune notification ne vous concerne la suppression de l'accès. Facultatif. La valeur par défaut est "True".

Autorisation

Cette requête nécessite une autorisation ayant le champ d'application suivant:

Champ d'application
https://www.googleapis.com/auth/calendar

Pour en savoir plus, consultez la page Authentification et autorisation.

Corps de la requête

Dans le corps de la requête, indiquez une ressource LCA avec les propriétés suivantes:

Nom de propriété Valeur Description Remarques
Propriétés obligatoires
scope object Niveau d'accès à l'agenda accordé par cette règle de LCA.
scope.type string Type de champ d'application. Les valeurs possibles sont:
  • "default" : champ d'application public. Il s'agit de la valeur par défaut.
  • "user" - Limite la portée à un seul utilisateur.
  • "group" - Limite le champ d'application à un groupe.
  • "domain" - Limite le champ d'application à un domaine.
Remarque: Les autorisations accordées au niveau d'accès "default", ou "public", s'appliquent à tous les utilisateurs, authentifiés ou non.
Propriétés facultatives
role string Rôle attribué au niveau d'accès. Les valeurs possibles sont:
  • "none" - Ne fournit aucun accès.
  • "freeBusyReader" - Fournit un accès en lecture aux informations de disponibilité.
  • "reader" - Fournit un accès en lecture à l'agenda. Les événements privés seront visibles par les utilisateurs disposant d'un accès en lecture, mais les détails des événements seront masqués.
  • "writer" - Fournit un accès en lecture et en écriture à l'agenda. Les utilisateurs ayant un accès en écriture pourront voir les événements privés, et les détails des événements seront visibles.
  • "owner" - Fournit la propriété de l'agenda. Il dispose de toutes les autorisations du rôle de rédacteur, ainsi que de la possibilité supplémentaire de voir et de manipuler les LCA.
accessible en écriture
scope.value string Adresse e-mail d'un utilisateur ou d'un groupe, ou nom d'un domaine, selon le type de champ d'application. Omis pour le type "default". accessible en écriture

Réponse

Lorsque cette méthode fonctionne, elle renvoie une ressource LCA dans le corps de réponse.

Exemples

Remarque : Les langages de programmation compatibles ne figurent pas tous dans les exemples de code présentés pour cette méthode (consultez la page Bibliothèques clientes pour obtenir la liste des langages compatibles).

Java

Elle utilise la bibliothèque cliente 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

Elle utilise la bibliothèque cliente 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

Elle utilise la bibliothèque cliente PHP.

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

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

Ruby

Elle utilise la bibliothèque cliente Ruby.

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

Essayer

Utilisez l'explorateur d'API ci-dessous pour appeler cette méthode sur des données en direct, puis observez la réponse.