CalendarList: list

הפונקציה מחזירה את היומנים ברשימת היומנים של המשתמש. אפשר לנסות עכשיו או לראות דוגמה.

בקשה

בקשת HTTP

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

פרמטרים

שם הפרמטר ערך תיאור
פרמטרים אופציונליים של שאילתה
maxResults integer המספר המקסימלי של ערכים שהוחזרו בדף תוצאות אחד. כברירת מחדל, הערך הוא 100 רשומות. גודל הדף לא יכול להכיל יותר מ-250 רשומות. זה שינוי אופציונלי.
minAccessRole string תפקיד הגישה המינימלי של המשתמש ברשומות המוחזרות. זה שינוי אופציונלי. ברירת המחדל היא 'ללא הגבלה'.

הערכים הקבילים הם:
  • 'freeBusyReader': המשתמש יכול לקרוא מידע על מצב פנוי/עסוק.
  • 'owner': המשתמש יכול לקרוא ולשנות אירועים ורשימות של בקרת גישה.
  • '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

משתמש בספריית הלקוח של 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?

נסה בעצמך!

אפשר להשתמש ב-APIs Explorer שבהמשך כדי להפעיל את השיטה הזו בנתונים בזמן אמת ולראות את התגובה.