CalendarList: list

사용자의 캘린더 목록에 있는 캘린더를 반환합니다. 지금 사용해 보거나 예를 참조하세요.

요청

HTTP 요청

GET https://www.googleapis.com/calendar/v3/users/me/calendarList

매개변수

매개변수 이름 설명
선택적 쿼리 매개변수
maxResults integer 결과 페이지 1개에서 반환되는 최대 항목 수입니다. 기본적으로 값은 100개 항목입니다. 페이지 크기는 250개 항목을 초과할 수 없습니다. 선택사항입니다.
minAccessRole string 표시된 항목에서 사용자의 최소 액세스 역할입니다. 선택사항입니다. 기본값은 '제한 없음'입니다.

사용 가능한 값은 다음과 같습니다. <ph type="x-smartling-placeholder">
    </ph>
  • "freeBusyReader": 사용자는 한가함/바쁨 정보를 읽을 수 있습니다.
  • 'owner': 사용자는 이벤트 및 액세스 제어 목록(ACL)을 읽고 수정할 수 있습니다.
  • 'reader': 사용자가 비공개가 아닌 이벤트를 읽을 수 있습니다.
  • 'writer': 사용자가 이벤트를 읽고 수정할 수 있습니다.
pageToken string 반환할 결과 페이지를 지정하는 토큰입니다. 선택사항입니다.
showDeleted boolean 결과에 삭제된 캘린더 목록 항목을 포함할지 여부입니다. 선택사항입니다. 기본값은 False입니다.
showHidden boolean 숨겨진 항목의 표시 여부입니다. 선택사항입니다. 기본값은 False입니다.
syncToken string 이전 목록 요청의 결과 마지막 페이지에서 반환된 nextSyncToken 필드에서 가져온 토큰입니다. 이 목록 요청의 결과에는 그 이후에 변경된 항목만 포함됩니다. 캘린더 속성이나 ACL과 같은 읽기 전용 입력란만 변경된 경우에는 항목이 반환되지 않습니다. 이전 목록 요청이 항상 결과 집합에 포함되고 showDeleted 또는 showHidden를 False로 설정할 수 없으므로 모든 항목이 삭제되고 숨겨집니다.
클라이언트 상태의 일관성을 보장하기 위해 minAccessRole 쿼리 매개변수는 nextSyncToken와 함께 지정할 수 없습니다.
syncToken가 만료되면 서버는 410 GONE 응답 코드로 응답하며 클라이언트는 스토리지를 지우고 syncToken 없이 전체 동기화를 실행해야 합니다.
증분 동기화에 대해 자세히 알아보세요.
선택사항. 기본값은 모든 항목을 반환하는 것입니다.

승인

이 요청을 처리하려면 다음 범위 중 하나 이상의 승인이 필요합니다.

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

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

요청 본문

이 메소드를 사용할 때는 요청 본문을 제공하지 마세요.

응답

요청에 성공할 경우 이 메소드는 다음과 같은 구조의 응답 본문을 반환합니다.

{
  "kind": "calendar#calendarList",
  "etag": etag,
  "nextPageToken": string,
  "nextSyncToken": string,
  "items": [
    calendarList Resource
  ]
}
속성 이름 설명 참고
kind string 컬렉션의 유형('calendar#calendarList')입니다.
etag etag 컬렉션의 ETag입니다.
nextPageToken string 이 결과의 다음 페이지에 액세스하는 데 사용되는 토큰입니다. 추가 결과가 없으면 생략되며, 이 경우 nextSyncToken가 제공됩니다.
items[] list 사용자의 캘린더 목록에 있는 캘린더입니다.
nextSyncToken string 결과가 반환된 이후 변경된 항목만 검색하기 위해 이후 시점에 사용되는 토큰입니다. 추가 결과가 있으면 생략되며, 이 경우 nextPageToken가 제공됩니다.

참고: 이 메서드에 제공되는 코드 예시가 지원되는 모든 프로그래밍 언어를 나타내는 것은 아닙니다. 지원되는 언어 목록은 클라이언트 라이브러리 페이지를 참조하세요.

자바

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

import com.google.api.services.calendar.Calendar;
import com.google.api.services.calendar.model.CalendarList;
import com.google.api.services.calendar.model.CalendarListEntry;

// ...

// Initialize Calendar service with valid OAuth credentials
Calendar service = new Calendar.Builder(httpTransport, jsonFactory, credentials)
    .setApplicationName("applicationName").build();

// Iterate through entries in calendar list
String pageToken = null;
do {
  CalendarList calendarList = service.calendarList().list().setPageToken(pageToken).execute();
  List<CalendarListEntry> items = calendarList.getItems();

  for (CalendarListEntry calendarListEntry : items) {
    System.out.println(calendarListEntry.getSummary());
  }
  pageToken = calendarList.getNextPageToken();
} while (pageToken != null);

Python

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

page_token = None
while True:
  calendar_list = service.calendarList().list(pageToken=page_token).execute()
  for calendar_list_entry in calendar_list['items']:
    print calendar_list_entry['summary']
  page_token = calendar_list.get('nextPageToken')
  if not page_token:
    break

PHP

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

$calendarList = $service->calendarList->listCalendarList();

while(true) {
  foreach ($calendarList->getItems() as $calendarListEntry) {
    echo $calendarListEntry->getSummary();
  }
  $pageToken = $calendarList->getNextPageToken();
  if ($pageToken) {
    $optParams = array('pageToken' => $pageToken);
    $calendarList = $service->calendarList->listCalendarList($optParams);
  } else {
    break;
  }
}

Ruby

Ruby 클라이언트 라이브러리 사용

page_token = nil
begin
  result = client.list_calendar_lists(page_token: page_token)
  result.items.each do |e|
    print e.summary + "\n"
  end
  if result.next_page_token != page_token
    page_token = result.next_page_token
  else
    page_token = nil
  end
end while !page_token.nil?

사용해 보기

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