Acl: update

Aktualisiert eine Regel für die Zugriffssteuerung. Probieren Sie es aus oder sehen Sie sich ein Beispiel an.

Anfragen

HTTP-Anfrage

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

Parameter

Parametername Wert Beschreibung
Pfadparameter
calendarId string Kalender-ID. Rufen Sie die Methode calendarList.list auf, um Kalender-IDs abzurufen. Wenn Sie auf den Hauptkalender des aktuell angemeldeten Nutzers zugreifen möchten, verwenden Sie das Schlüsselwort „primary“.
ruleId string ACL-Regel-ID.
Optionale Abfrageparameter
sendNotifications boolean Gibt an, ob Benachrichtigungen über die Änderung der Kalenderfreigabe gesendet werden sollen. Es werden keine Benachrichtigungen über das Entfernen des Zugriffs angezeigt. Optional. Der Standardwert ist „True“.

Autorisierung

Für diese Anfrage ist eine Autorisierung in folgendem Bereich erforderlich:

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

Weitere Informationen finden Sie auf der Seite Authentifizierung und Autorisierung.

Anfragetext

Geben Sie im Anfragetext eine ACL-Ressource mit den folgenden Attributen an:

Property-Name Wert Beschreibung Hinweise
Erforderliche Eigenschaften
scope object Der Umfang, in dem der Kalenderzugriff durch diese ACL-Regel gewährt wird.
scope.type string Der Typ des Bereichs. Mögliche Werte sind:
  • "default": Der öffentliche Bereich. „Immer“ ist der Standardwert.
  • user“: Beschränkt den Bereich auf einen einzelnen Nutzer.
  • group“: Beschränkt den Geltungsbereich auf eine Gruppe.
  • domain“: Beschränkt den Bereich auf eine Domain.
Hinweis: Die für den öffentlichen Bereich „default“ gewährten Berechtigungen gelten für jeden Nutzer, ob authentifiziert oder nicht.
Optionale Attribute
role string Die Rolle, die dem Bereich zugewiesen ist. Mögliche Werte sind:
  • "none": Bietet keinen Zugriff.
  • "freeBusyReader": Bietet Lesezugriff auf Informationen zur Verfügbarkeit.
  • "reader": Bietet Lesezugriff auf den Kalender. Private Termine werden Nutzern mit Lesezugriff angezeigt, die Termindetails werden jedoch ausgeblendet.
  • writer“: bietet Lese- und Schreibzugriff auf den Kalender. Private Termine werden Nutzern mit Autorenzugriff angezeigt. Die Termindetails sind sichtbar.
  • "owner": Eigentümer des Kalenders. Diese Rolle verfügt über alle Berechtigungen der Rolle „Autor“ und bietet zusätzlich die Möglichkeit, ACLs aufzurufen und zu bearbeiten.
Bearbeitbar
scope.value string Die E-Mail-Adresse eines Nutzers oder einer Gruppe oder der Name einer Domain, je nach Bereichstyp. Ausgelassen für Typ „default“. Bearbeitbar

Antwort

Wenn der Vorgang erfolgreich ist, wird mit dieser Methode eine ACL-Ressource im Antworttext zurückgegeben.

Beispiele

Hinweis: Bei den für diese Methode verfügbaren Codebeispielen sind nicht alle unterstützten Programmiersprachen vertreten. Eine Liste der unterstützten Sprachen finden Sie auf der Seite für Clientbibliotheken.

Java

Verwendet die Java-Clientbibliothek.

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

Verwendet die Python-Clientbibliothek.

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

Verwendet die PHP-Clientbibliothek.

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

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

Ruby

Verwendet die Ruby-Clientbibliothek.

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

Jetzt testen

Verwenden Sie den unten angegebenen APIs Explorer, um diese Methode für Livedaten aufzurufen und die Antwort einzusehen.