고급 Calendar 서비스를 사용하면 Apps Script에서 공개 Google Calendar API를 사용할 수 있습니다. Apps Script의 내장 Calendar 서비스와 마찬가지로 이 API를 사용하면 스크립트가 사용자가 구독한 추가 캘린더를 비롯한 사용자의 Google Calendar에 액세스하고 이를 수정할 수 있습니다. 대부분의 경우 내장 서비스를 사용하는 것이 더 쉽지만 이 고급 서비스는 개별 이벤트의 배경색 설정 등 몇 가지 추가 기능을 제공합니다.
참조
이 서비스에 관한 자세한 내용은 공개 Google Calendar API의 참조 문서를 참고하세요. Apps Script의 모든 고급 서비스와 마찬가지로 고급 Calendar 서비스는 공개 API와 동일한 객체, 메서드, 매개변수를 사용합니다. 자세한 내용은 메서드 서명이 결정되는 방식을 참고하세요.
문제를 신고하고 기타 지원을 받으려면 Calendar 지원 가이드를 참고하세요.
HTTP 요청 헤더
고급 캘린더 서비스는 HTTP 요청 헤더 If-Match
및 If-None-Match
를 수락할 수 있습니다. 자세한 내용은 참조 문서를 확인하세요.
샘플 코드
아래 샘플 코드에서는 API의 버전 3을 사용합니다.
이벤트 만들기
다음 예에서는 사용자의 기본 캘린더에 이벤트를 만드는 방법을 보여줍니다.
캘린더 나열
다음 예에서는 사용자의 캘린더 목록에 표시된 캘린더에 관한 세부정보를 가져오는 방법을 보여줍니다.
이벤트 나열
다음 예에서는 사용자의 기본 캘린더에서 다음 10개의 예정된 이벤트를 나열하는 방법을 보여줍니다.
이벤트를 조건부로 수정
다음 예시는 If-Match
헤더를 사용하여 캘린더 이벤트를 조건부로 업데이트하는 방법을 보여줍니다. 스크립트는 새 이벤트를 만들고 30초 동안 기다린 다음 이벤트가 생성된 이후 이벤트 세부정보가 변경되지 않은 경우에만 이벤트를 업데이트합니다.
조건부로 이벤트 가져오기
다음 예시에서는 If-None-Match
헤더를 사용하여 캘린더 이벤트를 조건부로 가져오는 방법을 보여줍니다. 스크립트는 새 이벤트를 만든 다음 30초 동안 이벤트의 변경사항을 폴링합니다. 이벤트가 변경될 때마다 새 버전이 가져옵니다.
이벤트 동기화
다음 예에서는 동기화 토큰을 사용하여 이벤트를 가져오는 방법을 보여줍니다. Calendar 고급 서비스 요청에 동기화 토큰을 포함하면 토큰이 생성된 이후 변경된 항목만 결과 응답에 포함되므로 더 효율적으로 처리할 수 있습니다. 동기화 프로세스에 관한 자세한 내용은 효율적으로 리소스 동기화를 참고하세요.
다음 예에서는 위의 예에 정의된 동일한 getRelativeDate(daysOffset, hour)
메서드를 사용합니다.