Events: instances

तय किए गए बार-बार होने वाले इवेंट के इंस्टेंस दिखाता है. इसे अभी आज़माएं या उदाहरण देखें.

अनुरोध

एचटीटीपी अनुरोध

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 इवेंट पर सेट होती है. पेज का साइज़ कभी भी 2,500 इवेंट से ज़्यादा नहीं हो सकता. ज़रूरी नहीं.
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" - उपयोगकर्ता के पास कैलेंडर का मालिकाना हक है. इस भूमिका में, लेखक की भूमिका के लिए सभी अनुमतियां मिलती हैं. साथ ही, एसीएल को देखने और उनमें बदलाव करने की अतिरिक्त सुविधाएं भी मिलती हैं.
defaultReminders[] list पुष्टि किए गए उपयोगकर्ता के लिए कैलेंडर में डिफ़ॉल्ट रिमाइंडर. ये रिमाइंडर इस कैलेंडर के उन सभी इवेंट पर लागू होते हैं जो साफ़ तौर पर उन्हें ओवरराइड नहीं करते (यानी reminders.useDefault को 'सही' पर सेट नहीं किया गया है).
defaultReminders[].method string इस रिमाइंडर के लिए इस्तेमाल किया गया तरीका. संभावित वैल्यू ये हैं:
  • "email" - रिमाइंडर, ईमेल से भेजे जाते हैं.
  • "popup" - रिमाइंडर, यूज़र इंटरफ़ेस (यूआई) पॉप-अप के ज़रिए भेजे जाते हैं.

रिमाइंडर जोड़ते समय ज़रूरी है.

लिखा जा सकता है
defaultReminders[].minutes integer इवेंट शुरू होने से इतने मिनट पहले, रिमाइंडर को ट्रिगर होना चाहिए. मान्य वैल्यू 0 से 40320 के बीच हैं (मिनट में चार हफ़्ते).

रिमाइंडर जोड़ते समय ज़रूरी है.

लिखा जा सकता है
nextPageToken string इस नतीजे के अगले पेज को ऐक्सेस करने के लिए टोकन का इस्तेमाल किया जाता है. कोई और नतीजा उपलब्ध न होने पर शामिल नहीं किया जाता. इस स्थिति में nextSyncToken दिया जाता है.
items[] list कैलेंडर में इवेंट की सूची.
nextSyncToken string टोकन को बाद में इस्तेमाल करके, सिर्फ़ उन एंट्री को वापस पाया जाता है जिनमें इस नतीजे के मिलने के बाद बदलाव हुए हैं. आगे के नतीजे उपलब्ध होने पर शामिल नहीं किया जाता. इस स्थिति में nextPageToken दिया जाता है.

उदाहरण

ध्यान दें: इस तरीके के लिए दिए गए कोड के उदाहरणों में इसके साथ काम करने वाली सभी प्रोग्रामिंग भाषाएं नहीं दिखाई गई हैं (इसके साथ काम करने वाली भाषाओं की सूची के लिए क्लाइंट लाइब्रेरी वाला पेज देखें).

Java

Java क्लाइंट लाइब्रेरी का इस्तेमाल करता है.

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);

Python

Python क्लाइंट लाइब्रेरी का इस्तेमाल किया जाता है.

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

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?

इसे आज़माएं!

लाइव डेटा पर इस तरीके को कॉल करने और जवाब देखने के लिए, नीचे दिए गए एपीआई एक्सप्लोरर का इस्तेमाल करें.