Acl: insert

Crée une règle de contrôle des accès. Essayez maintenant ou voir un exemple

Requête

Requête HTTP

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

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 mot clé "primary".
Paramètres de requête facultatifs
sendNotifications boolean Indique si des notifications doivent être envoyées concernant le changement de partage de l'agenda. Facultatif. La valeur par défaut est "True".

Autorisation

Cette requête nécessite une autorisation avec au moins l'un des champs d'application suivants:

Portée
https://www.googleapis.com/auth/calendar
https://www.googleapis.com/auth/calendar.acls

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 Acl avec les propriétés suivantes:

Nom de propriété Valeur Description Remarques
Propriétés requises
role string Rôle attribué au champ d'application. Les valeurs possibles sont les suivantes:
  • "none" : n'accorde aucun accès.
  • "freeBusyReader" : permet d'accéder en lecture aux informations de disponibilité.
  • "reader" : permet d'accéder en lecture à l'agenda. Les événements privés s'affichent pour les utilisateurs disposant d'un accès lecteur, mais les détails de l'événement sont masqués.
  • "writer" : permet d'accéder en lecture et en écriture à l'agenda. Les événements privés s'affichent pour les utilisateurs disposant d'un accès en tant qu'auteur, et leurs détails sont visibles.
  • "owner" : indique le propriétaire de l'agenda. Ce rôle dispose de toutes les autorisations du rôle "Rédacteur", avec la possibilité supplémentaire de consulter et de manipuler les ACL.
accessible en écriture
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 les suivantes:
  • "default" : portée publique. Il s'agit de la valeur par défaut.
  • "user" : limite le champ d'application à 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 champ d'application "default", ou public, s'appliquent à tous les utilisateurs, qu'ils soient authentifiés ou non.
Propriétés facultatives
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

Si la requête aboutit, cette méthode renvoie une ressource Acl dans le corps de la 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

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();

// Create access rule with associated scope
AclRule rule = new AclRule();
Scope scope = new Scope();
scope.setType("scopeType").setValue("scopeValue");
rule.setScope(scope).setRole("role");

// Insert new access rule
AclRule createdRule = service.acl().insert('primary', rule).execute();
System.out.println(createdRule.getId());

Python

Utilise la bibliothèque cliente Python.

rule = {
    'scope': {
        'type': 'scopeType',
        'value': 'scopeEmail',
    },
    'role': 'role'
}

created_rule = service.acl().insert(calendarId='primary', body=rule).execute()

print created_rule['id']

PHP

Utilise la bibliothèque cliente PHP.

$rule = new Google_Service_Calendar_AclRule();
$scope = new Google_Service_Calendar_AclRuleScope();

$scope->setType("scopeType");
$scope->setValue("scopeValue");
$rule->setScope($scope);
$rule->setRole("role");

$createdRule = $service->acl->insert('primary', $rule);
echo $createdRule->getId();

Ruby

Utilise la bibliothèque cliente Ruby.

rule = Google::Apis::CalendarV3::AclRule.new(
  scope: {
    type: 'scopeType',
    value: 'scopeEmail',
  },
  role: 'role'
)
result = client.insert_acl('primary', rule)
print result.id

Essayer

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