Acl: update

Cập nhật một quy tắc kiểm soát quyền truy cập. Thử ngay hoặc xem ví dụ.

Yêu cầu

Yêu cầu HTTP

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

Tham số

Tên thông số Giá trị Mô tả
Tham số đường dẫn
calendarId string Giá trị nhận dạng lịch. Để truy xuất mã lịch, hãy gọi phương thức calendarList.list. Nếu bạn muốn truy cập lịch chính của người dùng hiện đang đăng nhập, hãy sử dụng "primary" từ khoá.
ruleId string Mã nhận dạng quy tắc ACL.
Tham số truy vấn không bắt buộc
sendNotifications boolean Liệu có gửi thông báo về thay đổi đối với việc chia sẻ lịch hay không. Xin lưu ý rằng sẽ không có thông báo về việc xoá quyền truy cập. Không bắt buộc. Giá trị mặc định là "True".

Ủy quyền

Yêu cầu này cần được cho phép có phạm vi sau:

Phạm vi
https://www.googleapis.com/auth/calendar

Để biết thêm thông tin, hãy xem trang xác thực và uỷ quyền.

Nội dung yêu cầu

Trong nội dung yêu cầu, hãy cung cấp tài nguyên Acl với các thuộc tính sau:

Tên tài sản Giá trị Mô tả Ghi chú
Thuộc tính bắt buộc
scope object Mức độ quyền truy cập vào lịch được cấp bởi quy tắc ACL này.
scope.type string Loại phạm vi. Các giá trị có thể có là:
  • "default" – Phạm vi công khai. Đây là giá trị mặc định.
  • "user" – Giới hạn phạm vi ở một người dùng duy nhất.
  • "group" – Giới hạn phạm vi ở một nhóm.
  • "domain" – Giới hạn phạm vi trong một miền.
Lưu ý: Các quyền được cấp cho "default" (hoặc phạm vi công khai) áp dụng cho mọi người dùng, đã được xác thực hay chưa.
Thuộc tính không bắt buộc
role string Vai trò được chỉ định cho phạm vi. Các giá trị có thể có là:
  • "none" – Không cấp quyền truy cập.
  • "freeBusyReader" - Cung cấp quyền đọc thông tin rảnh/bận.
  • "reader" – Cấp quyền đọc lịch. Các sự kiện riêng tư sẽ hiển thị với người dùng có quyền truy cập của độc giả, nhưng thông tin chi tiết về sự kiện sẽ bị ẩn.
  • "writer" – Cấp quyền đọc và ghi đối với lịch. Người dùng có quyền truy cập của người ghi sẽ thấy các sự kiện riêng tư và thông tin chi tiết về sự kiện sẽ hiển thị.
  • "owner" - Cung cấp quyền sở hữu lịch. Vai trò này có tất cả các quyền của vai trò người viết với khả năng bổ sung để xem và thao tác các ACL.
có thể ghi
scope.value string Địa chỉ email của một người dùng hoặc nhóm hoặc tên của một miền, tuỳ thuộc vào loại phạm vi. Bị bỏ qua cho loại "default". có thể ghi

Phản hồi

Nếu thành công, phương thức này sẽ trả về một tài nguyên Acl trong nội dung phản hồi.

Ví dụ

Lưu ý: Các đoạn mã mẫu của phương thức này không phải là ví dụ cho mọi ngôn ngữ lập trình được hỗ trợ (xem trang thông tin về các thư viện dùng cho ứng dụng để biết danh sách các ngôn ngữ được hỗ trợ).

Java

Dùng thư viện ứng dụng 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

Dùng thư viện ứng dụng 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

Dùng thư viện ứng dụng PHP.

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

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

Ruby

Dùng thư viện ứng dụng Ruby.

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

Hãy dùng thử!

Hãy sử dụng APIs Explorer (Trình khám phá API) bên dưới để gọi phương thức này trên dữ liệu trực tiếp và xem phản hồi.