Acl: update

Memperbarui aturan kontrol akses. Coba sekarang atau lihat contohnya.

Permintaan

Permintaan HTTP

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

Parameter

Nama parameter Nilai Deskripsi
Parameter jalur
calendarId string ID kalender. Untuk mengambil ID kalender, panggil metode calendarList.list. Jika Anda ingin mengakses kalender utama dari pengguna yang saat ini login, gunakan kata kunci "primary".
ruleId string ID aturan ACL.
Parameter kueri opsional
sendNotifications boolean Apakah akan mengirim notifikasi tentang perubahan berbagi kalender. Perhatikan bahwa tidak ada notifikasi terkait penghapusan akses. Opsional. Nilai defaultnya adalah True (Benar).

Otorisasi

Permintaan ini memerlukan otorisasi dengan cakupan berikut:

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

Untuk informasi selengkapnya, lihat halaman autentikasi dan otorisasi.

Isi permintaan

Dalam isi permintaan, berikan resource Acl dengan properti berikut:

Nama properti Nilai Deskripsi Catatan
Properti yang Diperlukan
scope object Sejauh mana akses kalender diberikan oleh aturan ACL ini.
scope.type string Jenis ruang lingkup. Kemungkinan nilainya adalah:
  • "default" - Cakupan publik. Nilai ini merupakan default.
  • "user" - Membatasi cakupan ke satu pengguna.
  • "group" - Membatasi cakupan ke grup.
  • "domain" - Membatasi cakupan ke domain.
Catatan: Izin yang diberikan ke cakupan "default", atau publik, berlaku untuk semua pengguna, baik yang diautentikasi atau tidak.
Properti Opsional
role string Peran yang ditetapkan ke cakupan. Kemungkinan nilainya adalah:
  • "none" - Tidak menyediakan akses.
  • "freeBusyReader" - Menyediakan akses baca ke informasi senggang/sibuk.
  • "reader" - Menyediakan akses baca ke kalender. Acara pribadi akan ditampilkan kepada pengguna yang memiliki akses pembaca, tetapi detail acara akan disembunyikan.
  • "writer" - Menyediakan akses baca dan tulis ke kalender. Acara pribadi akan terlihat oleh pengguna yang memiliki akses penulis, dan detail acara akan terlihat.
  • "owner" - Memberikan kepemilikan kalender. Peran ini memiliki semua izin peran penulis dengan kemampuan tambahan untuk melihat dan memanipulasi ACL.
dapat ditulis
scope.value string Alamat email pengguna atau grup, atau nama domain, bergantung pada jenis cakupan. Dihilangkan untuk jenis "default". dapat ditulis

Respons

Jika berhasil, metode ini akan menampilkan resource Acl dalam isi respons.

Contoh

Catatan: Contoh kode yang tersedia untuk metode ini tidak merepresentasikan semua bahasa pemrograman yang didukung (lihat halaman library klien untuk mengetahui daftar bahasa yang didukung).

Java

Menggunakan library klien 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

Menggunakan library klien 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

Menggunakan library klien PHP.

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

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

Ruby

Menggunakan library klien Ruby.

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

Cobalah!

Gunakan APIs Explorer di bawah untuk memanggil metode ini pada data live dan melihat respons.