Acl: update

액세스 제어 규칙을 업데이트합니다. 지금 사용해 보기 또는 예시 보기

요청

HTTP 요청

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

매개변수

매개변수 이름 설명
경로 매개변수
calendarId string 캘린더 식별자입니다. 캘린더 ID를 가져오려면 calendarList.list 메서드를 호출합니다. 현재 로그인한 사용자의 기본 캘린더에 액세스하려면 'primary' 키워드를 사용하세요.
ruleId string ACL 규칙 식별자입니다.
선택적 쿼리 매개변수
sendNotifications boolean 캘린더 공유 변경사항에 관한 알림을 전송할지 여부입니다. 액세스 권한 삭제에 대한 알림은 없습니다. 선택사항입니다. 기본값은 true입니다.

승인

이 요청에는 다음 범위 중 하나 이상에 대한 승인이 필요합니다.

범위
https://www.googleapis.com/auth/calendar
https://www.googleapis.com/auth/calendar.acls

자세한 내용은 인증 및 승인 페이지를 참고하세요.

요청 본문

요청 본문에서는 다음과 같은 속성을 사용하여 Acl 리소스를 제공합니다.

속성 이름 설명 참고
필수 속성
scope object 이 ACL 규칙에서 부여되는 캘린더 액세스의 범위입니다.
scope.type string 범위 유형입니다. 가능한 값은 다음과 같습니다.
  • 'default' - 공개 범위입니다. 기본값입니다.
  • 'user': 범위를 단일 사용자로 제한합니다.
  • 'group': 범위를 그룹으로 제한합니다.
  • 'domain' - 범위를 도메인으로 제한합니다.
참고: 'default' 또는 공개 범위에 부여된 권한은 인증 여부와 관계없이 모든 사용자에게 적용됩니다.
선택 속성
role string 범위에 할당된 역할입니다. 가능한 값은 다음과 같습니다.
  • 'none': 액세스 권한을 제공하지 않습니다.
  • 'freeBusyReader': 비즈니스 일정 정보에 대한 읽기 액세스 권한을 제공합니다.
  • 'reader': 캘린더에 대한 읽기 액세스 권한을 제공합니다. 비공개 일정은 독자 액세스 권한이 있는 사용자에게 표시되지만 일정 세부정보는 숨겨집니다.
  • 'writer': 캘린더에 대한 읽기 및 쓰기 액세스 권한을 제공합니다. 비공개 일정은 작성자 액세스 권한이 있는 사용자에게 표시되며 일정 세부정보가 표시됩니다.
  • 'owner': 캘린더의 소유권을 제공합니다. 이 역할에는 ACL을 보고 조작하는 추가 기능이 있는 작성자 역할의 모든 권한이 있습니다.
쓰기 가능
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

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

PHP 클라이언트 라이브러리를 사용합니다.

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

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

Ruby

Ruby 클라이언트 라이브러리를 사용합니다.

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

사용해 보기

아래의 API 탐색기를 사용하여 실시간 데이터를 대상으로 이 메소드를 호출하고 응답을 확인해 보세요.