อัปเดตกฎควบคุมการเข้าถึง ลองเลยหรือดูตัวอย่าง
ส่งคำขอ
คำขอ HTTP
PUT https://www.googleapis.com/calendar/v3/calendars/calendarId/acl/ruleId
พารามิเตอร์
ชื่อพารามิเตอร์ | ค่า | คำอธิบาย |
---|---|---|
พารามิเตอร์เส้นทาง | ||
calendarId |
string |
ตัวระบุปฏิทิน หากต้องการเรียกข้อมูลรหัสปฏิทิน ให้เรียกเมธอด calendarList.list หากคุณต้องการเข้าถึงปฏิทินหลักของผู้ใช้ที่เข้าสู่ระบบในปัจจุบัน ให้ใช้ "primary " คีย์เวิร์ด
|
ruleId |
string |
ตัวระบุกฎ ACL |
พารามิเตอร์การค้นหาที่ไม่บังคับ | ||
sendNotifications |
boolean |
เลือกว่าจะส่งการแจ้งเตือนเกี่ยวกับการเปลี่ยนแปลงการแชร์ปฏิทินหรือไม่ โปรดทราบว่าจะไม่มีการแจ้งเตือนเกี่ยวกับการนำสิทธิ์เข้าถึงออก ไม่บังคับ ค่าเริ่มต้นคือ True |
การให้สิทธิ์
คำขอนี้ต้องได้รับการให้สิทธิ์ตามขอบเขตต่อไปนี้
ขอบเขต |
---|
https://www.googleapis.com/auth/calendar |
สำหรับข้อมูลเพิ่มเติม โปรดดูที่หน้าการตรวจสอบสิทธิ์และการให้สิทธิ์
เนื้อหาของคำขอ
ในเนื้อหาคำขอ ให้ระบุทรัพยากร Acl ที่มีพร็อพเพอร์ตี้ต่อไปนี้
ชื่อพร็อพเพอร์ตี้ | ค่า | คำอธิบาย | หมายเหตุ |
---|---|---|---|
พร็อพเพอร์ตี้ที่จำเป็น | |||
scope |
object |
ขอบเขตที่กฎ ACL นี้ให้สิทธิ์การเข้าถึงปฏิทิน | |
scope.type |
string |
ประเภทของขอบเขต ค่าที่เป็นไปได้คือ
default " หรือขอบเขตสาธารณะจะมีผลกับผู้ใช้รายใดก็ตามไม่ว่าจะผ่านการตรวจสอบสิทธิ์แล้วหรือไม่ก็ตาม |
|
พร็อพเพอร์ตี้ที่ไม่บังคับ | |||
role |
string |
บทบาทที่มอบหมายให้กับขอบเขต ค่าที่เป็นไปได้คือ
|
เขียนได้ |
scope.value |
string |
อีเมลของผู้ใช้หรือกลุ่ม หรือชื่อโดเมนโดยขึ้นอยู่กับประเภทขอบเขต ละเว้นสำหรับประเภท "default " |
เขียนได้ |
คำตอบ
หากสำเร็จ เมธอดนี้จะแสดงทรัพยากร Acl ในเนื้อหาการตอบกลับ
ตัวอย่าง
หมายเหตุ: ตัวอย่างโค้ดที่มีสำหรับวิธีการนี้ไม่ได้แสดงถึงภาษาโปรแกรมที่รองรับทั้งหมด (ดูรายการภาษาที่รองรับได้ในหน้าไลบรารีของไคลเอ็นต์)
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
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
$rule = $service->acl->get('primary', 'ruleId'); $rule->setRole('newRole'); $updatedRule = $service->acl->update('primary', $rule->getId(), $rule); echo $updatedRule->getEtag();
Ruby
rule = client.get_acl('primary', 'ruleId') rule.role = 'newRole' result = client.update_acl('primary', rule.id, rule) print result.etag
ลองใช้งาน
ใช้ API Explorer ด้านล่างเพื่อเรียกใช้เมธอดนี้กับข้อมูลแบบสดและดูการตอบกลับ