Events: instances

نمونه هایی از رویداد تکرارشونده مشخص شده را برمی گرداند. اکنون آن را امتحان کنید یا نمونه ای را ببینید .

درخواست

درخواست HTTP

GET https://www.googleapis.com/calendar/v3/calendars/calendarId/events/eventId/instances

مولفه های

نام پارامتر ارزش شرح
پارامترهای مسیر
calendarId string شناسه تقویم برای بازیابی شناسه های تقویم با روش calendarList.list تماس بگیرید. اگر می‌خواهید به تقویم اصلی کاربر وارد شده در حال حاضر دسترسی داشته باشید، از کلمه کلیدی " primary " استفاده کنید.
eventId string شناسه رویداد تکراری
پارامترهای پرس و جو اختیاری
alwaysIncludeEmail boolean منسوخ و نادیده گرفته شده است. یک مقدار همیشه در فیلد email برای سازمان‌دهنده، سازنده و شرکت‌کنندگان بازگردانده می‌شود، حتی اگر آدرس ایمیل واقعی در دسترس نباشد (یعنی یک مقدار تولید شده و غیرفعال ارائه می‌شود).
maxAttendees integer حداکثر تعداد شرکت کنندگانی که باید در پاسخ درج شود. در صورتی که تعداد شرکت کنندگان بیشتر از تعداد مشخص شده باشد، فقط شرکت کننده برگردانده می شود. اختیاری.
maxResults integer حداکثر تعداد رویدادهای بازگشتی در یک صفحه نتیجه. به طور پیش فرض مقدار 250 رویداد است. اندازه صفحه هرگز نمی تواند بزرگتر از 2500 رویداد باشد. اختیاری.
originalStart string زمان شروع اصلی نمونه در نتیجه. اختیاری.
pageToken string نشانه ای که مشخص می کند کدام صفحه نتیجه را برگرداند. اختیاری.
showDeleted boolean آیا رویدادهای حذف شده (با status برابر با " cancelled ") در نتیجه گنجانده شود یا خیر. اگر singleEvents نادرست باشد، نمونه‌های لغو شده رویدادهای تکرارشونده همچنان شامل می‌شوند. اختیاری. حالت پیش فرض غلط است.
timeMax datetime کران بالا (انحصاری) برای زمان شروع یک رویداد برای فیلتر کردن. اختیاری. پیش‌فرض فیلتر بر اساس زمان شروع نیست. باید مهر زمانی RFC3339 با افست منطقه زمانی اجباری باشد.
timeMin datetime کران پایین (شامل) برای فیلتر کردن زمان پایان رویداد. اختیاری. پیش‌فرض این است که بر اساس زمان پایان فیلتر نشود. باید مهر زمانی RFC3339 با افست منطقه زمانی اجباری باشد.
timeZone string منطقه زمانی استفاده شده در پاسخ. اختیاری. پیش فرض منطقه زمانی تقویم است.

مجوز

این درخواست اجازه مجوز با حداقل یکی از حوزه های زیر را می دهد:

محدوده
https://www.googleapis.com/auth/calendar.readonly
https://www.googleapis.com/auth/calendar
https://www.googleapis.com/auth/calendar.events.readonly
https://www.googleapis.com/auth/calendar.events

برای اطلاعات بیشتر، به صفحه احراز هویت و مجوز مراجعه کنید.

درخواست بدن

با این روش بدنه درخواستی ارائه نکنید.

واکنش

در صورت موفقیت آمیز بودن، این روش یک بدنه پاسخ با ساختار زیر را برمی گرداند:

{
  "kind": "calendar#events",
  "etag": etag,
  "summary": string,
  "description": string,
  "updated": datetime,
  "timeZone": string,
  "accessRole": string,
  "defaultReminders": [
    {
      "method": string,
      "minutes": integer
    }
  ],
  "nextPageToken": string,
  "nextSyncToken": string,
  "items": [
    events Resource
  ]
}
نام ملک ارزش شرح یادداشت
kind string نوع مجموعه (" calendar#events ").
etag etag ETag مجموعه
summary string عنوان تقویم فقط خواندنی.
description string شرح تقویم فقط خواندنی.
updated datetime آخرین زمان تغییر تقویم (به عنوان مهر زمانی RFC3339 ). فقط خواندنی.
timeZone string منطقه زمانی تقویم فقط خواندنی.
accessRole string نقش دسترسی کاربر برای این تقویم. فقط خواندنی. مقادیر ممکن عبارتند از:
  • " none " - کاربر دسترسی ندارد.
  • " freeBusyReader " - کاربر دسترسی خواندنی به اطلاعات آزاد/مشغول دارد.
  • " reader " - کاربر دسترسی خواندنی به تقویم دارد. رویدادهای خصوصی برای کاربرانی که دسترسی خواننده دارند ظاهر می‌شوند، اما جزئیات رویداد پنهان می‌شوند.
  • " writer " - کاربر دسترسی خواندن و نوشتن به تقویم دارد. رویدادهای خصوصی برای کاربران با دسترسی نویسنده ظاهر می‌شوند و جزئیات رویداد قابل مشاهده خواهند بود.
  • " owner " - کاربر مالکیت تقویم را دارد. این نقش دارای تمام مجوزهای نقش نویسنده با توانایی اضافی برای دیدن و دستکاری ACLها است.
defaultReminders[] list یادآوری های پیش فرض در تقویم برای کاربر احراز هویت شده. این یادآوری‌ها برای همه رویدادهای این تقویم اعمال می‌شوند که به صراحت آنها را لغو نمی‌کنند (یعنی reminders.useDefault روی True تنظیم نشده است).
defaultReminders[]. method string روش استفاده شده توسط این یادآوری. مقادیر ممکن عبارتند از:
  • " email " - یادآوری ها از طریق ایمیل ارسال می شوند.
  • " popup " - یادآوری ها از طریق یک پنجره بازشو UI ارسال می شوند.

هنگام افزودن یادآوری لازم است.

قابل نوشتن
defaultReminders[]. minutes integer تعداد دقیقه‌های قبل از شروع رویداد که یادآور باید راه‌اندازی شود. مقادیر معتبر بین 0 تا 40320 (4 هفته در دقیقه) هستند.

هنگام افزودن یادآوری لازم است.

قابل نوشتن
nextPageToken string رمز برای دسترسی به صفحه بعدی این نتیجه استفاده می شود. اگر نتایج دیگری در دسترس نباشد حذف می شود، در این صورت nextSyncToken ارائه می شود.
items[] list لیست رویدادهای تقویم
nextSyncToken string توکن در زمان بعدی برای بازیابی فقط ورودی هایی که از زمان بازگشت این نتیجه تغییر کرده اند استفاده می شود. در صورت در دسترس بودن نتایج بیشتر حذف می شود، در این صورت nextPageToken ارائه می شود.

مثال ها

توجه: نمونه‌های کد موجود برای این روش همه زبان‌های برنامه‌نویسی پشتیبانی‌شده را نشان نمی‌دهند (برای فهرست زبان‌های پشتیبانی‌شده به صفحه کتابخانه‌های سرویس گیرنده مراجعه کنید).

جاوا

از کتابخانه سرویس گیرنده جاوا استفاده می کند.

import com.google.api.services.calendar.Calendar;
import com.google.api.services.calendar.model.Event;
import com.google.api.services.calendar.model.Events;

// ...

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

// Iterate over the instances of a specific recurring event
String pageToken = null;
do {
  Events events =
      service.events().instances('primary', 'eventId').setPageToken(pageToken).execute();
  List<Event> items = events.getItems();
  for (Event event : items) {
    System.out.println(event.getSummary());
  }
  pageToken = events.getNextPageToken();
} while (pageToken != null);

پایتون

از کتابخانه کلاینت پایتون استفاده می کند.

page_token = None
while True:
  events = service.events().instances(calendarId='primary', eventId='eventId',
                                      pageToken=page_token).execute()
  for event in events['items']:
    print event['summary']
  page_token = events.get('nextPageToken')
  if not page_token:
    break

PHP

از کتابخانه مشتری PHP استفاده می کند.

$events = $service->events->instances('primary', "eventId");

while(true) {
  foreach ($events->getItems() as $event) {
    echo $event->getSummary();
  }
  $pageToken = $events->getNextPageToken();
  if ($pageToken) {
    $optParams = array('pageToken' => $pageToken);
    $events = $service->events->instances('primary', "eventId",
        $optParams);
  } else {
    break;
  }
}

روبی

از کتابخانه کلاینت Ruby استفاده می کند.

page_token = nil
begin
  result = client.list_event_instances('primary', 'eventId')
  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 زیر برای فراخوانی این روش در داده‌های زنده و دیدن پاسخ استفاده کنید.