Events: list

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

अनुरोध

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

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

पैरामीटर

पैरामीटर का नाम वैल्यू ब्यौरा
पाथ पैरामीटर
calendarId string कैलेंडर आइडेंटिफ़ायर. कैलेंडर आईडी पाने के लिए, calendarList.list तरीके को कॉल करें. अगर आपको उस उपयोगकर्ता का मुख्य कैलेंडर ऐक्सेस करना है जिसने फ़िलहाल लॉग इन किया हुआ है, तो "primary" कीवर्ड का इस्तेमाल करें.
वैकल्पिक क्वेरी पैरामीटर
alwaysIncludeEmail boolean बहिष्कृत और अनदेखा किया गया.
eventTypes string दिखाए जाने वाले इवेंट टाइप. ज़रूरी नहीं. अलग-अलग तरह के इवेंट दिखाने के लिए, इस पैरामीटर को कई बार दोहराया जा सकता है. अगर यह नीति सेट नहीं है, तो सभी तरह के इवेंट दिखाता है.

इन वैल्यू को इस्तेमाल किया जा सकता है:
  • "default": नियमित इवेंट.
  • "focusTime": फ़ोकस टाइम इवेंट.
  • "outOfOffice": 'अभी मैं छुट्टी पर हूं' इवेंट.
  • "workingLocation": काम करने की जगह से जुड़े इवेंट.
iCalUID string जवाब में देने के लिए, iCalendar फ़ॉर्मैट में इवेंट आईडी तय करता है. ज़रूरी नहीं. इसका इस्तेमाल तब करें, जब आपको किसी इवेंट को उसके iCalendar आईडी से खोजना हो.
maxAttendees integer जवाब में शामिल किए जाने वाले मेहमानों की ज़्यादा से ज़्यादा संख्या. अगर मेहमानों की तय संख्या से ज़्यादा हैं, तो सिर्फ़ मीटिंग में शामिल व्यक्ति को ही लौटाया जाता है. ज़रूरी नहीं.
maxResults integer नतीजे वाले एक पेज पर, लौटाए गए इवेंट की ज़्यादा से ज़्यादा संख्या. नतीजे वाले पेज पर इवेंट की संख्या इस वैल्यू से कम हो सकती है या कोई भी इवेंट नहीं हो सकता, भले ही क्वेरी से मिलते-जुलते कई इवेंट हों. जवाब में अधूरे पेजों का पता किसी खाली nextPageToken फ़ील्ड से लगाया जा सकता है. डिफ़ॉल्ट रूप से, यह वैल्यू 250 इवेंट होती है. पेज का साइज़ कभी भी 2,500 इवेंट से ज़्यादा नहीं हो सकता. ज़रूरी नहीं.
orderBy string नतीजे में दिखाए गए इवेंट का क्रम. ज़रूरी नहीं. डिफ़ॉल्ट एक ऐसा क्रम है, जिसकी जानकारी नहीं दी गई है.

इन वैल्यू को इस्तेमाल किया जा सकता है:
  • "startTime": शुरू होने की तारीख/समय के हिसाब से क्रम में लगाएं (बढ़ते क्रम में). यह सिर्फ़ तब उपलब्ध होता है, जब किसी एक इवेंट के लिए क्वेरी की जाती है (यानी पैरामीटर singleEvents सही है)
  • "updated": पिछली बार किए गए बदलाव के समय के हिसाब से क्रम में लगाएं (बढ़ते क्रम में).
pageToken string टोकन से यह तय होता है कि नतीजों के किस पेज को दिखाना है. ज़रूरी नहीं.
privateExtendedProperty string एक्सटेंडेड प्रॉपर्टी कंस्ट्रेंट को प्रॉपर्टी का नाम=वैल्यू के तौर पर बताया गया है. सिर्फ़ निजी प्रॉपर्टी से मेल खाता है. इस पैरामीटर को कई बार दोहराया जा सकता है, ताकि सभी पाबंदियों से मैच होने वाले इवेंट दिखाए जा सकें.
q string फ़्री टेक्स्ट खोज के लिए शब्द, ताकि इन फ़ील्ड में इन शब्दों से मेल खाने वाले इवेंट खोजे जा सकें:
  • summary
  • description
  • location
  • मेहमान का displayName
  • मेहमान का email
  • आयोजक का displayName
  • आयोजक का email
  • workingLocationProperties.officeLocation.buildingId
  • workingLocationProperties.officeLocation.deskId
  • workingLocationProperties.officeLocation.label
  • workingLocationProperties.customLocation.label

खोज के लिए इस्तेमाल हुए ये शब्द, पहले से तय कीवर्ड का मिलान उनके काम करने की जगह, छुट्टी, और फ़ोकस टाइम इवेंट के टाइटल के अनुवाद से भी करते हैं. उदाहरण के लिए, "Office" या "Bureau" खोजने पर, काम करने की जगह के officeLocation टाइप के इवेंट दिखते हैं. वहीं, "अभी मैं छुट्टी पर हूं" या "अब्वेसेंड" खोजने पर, वे इवेंट वापस आते हैं जो छुट्टी पर हैं. ज़रूरी नहीं.

sharedExtendedProperty string एक्सटेंडेड प्रॉपर्टी कंस्ट्रेंट को प्रॉपर्टी का नाम=वैल्यू के तौर पर बताया गया है. सिर्फ़ शेयर की गई प्रॉपर्टी से मेल खाता है. इस पैरामीटर को कई बार दोहराया जा सकता है, ताकि सभी पाबंदियों से मैच होने वाले इवेंट दिखाए जा सकें.
showDeleted boolean मिटाए गए इवेंट को नतीजे में शामिल करना है या नहीं (जिनका status "cancelled" के बराबर है) है. अगर showDeleted और singleEvents, दोनों 'गलत' हैं, तो बार-बार होने वाले इवेंट के रद्द किए गए इंस्टेंस (हालांकि, मौजूदा बार-बार होने वाले इवेंट नहीं) को अब भी शामिल किया जाएगा. अगर showDeleted और singleEvents, दोनों 'सही' हैं, तो मिटाए गए इवेंट का सिर्फ़ एक इंस्टेंस दिखाया जाएगा. हालांकि, बार-बार होने वाले इवेंट नहीं दिखेंगे. ज़रूरी नहीं. डिफ़ॉल्ट वैल्यू 'गलत' पर सेट होती है.
showHiddenInvitations boolean नतीजे में, छिपाए गए न्योते शामिल करने हैं या नहीं. ज़रूरी नहीं. डिफ़ॉल्ट वैल्यू 'गलत' पर सेट होती है.
singleEvents boolean बार-बार होने वाले इवेंट को इंस्टेंस में बड़ा करना है और सिर्फ़ एक बार होने वाले इवेंट और बार-बार होने वाले इवेंट के इंस्टेंस दिखाना है, लेकिन मूल इवेंट को नहीं. ज़रूरी नहीं. डिफ़ॉल्ट वैल्यू 'गलत' पर सेट होती है.
syncToken string nextSyncToken फ़ील्ड से मिला टोकन, सूची के पिछले अनुरोध के नतीजों के आखिरी पेज पर मिला. इससे इस सूची अनुरोध के नतीजे में सिर्फ़ वे एंट्री शामिल होती हैं जिनमें उसके बाद से बदलाव किए गए हैं. सूची के पिछले अनुरोध के बाद से मिटाए गए सभी इवेंट हमेशा नतीजे के सेट में शामिल किए जाएंगे. साथ ही, showDeleted को 'गलत' पर सेट करने की अनुमति नहीं है.
ऐसे कई क्वेरी पैरामीटर हैं जिन्हें nextSyncToken के साथ तय नहीं किया जा सकता, ताकि यह पक्का किया जा सके कि क्लाइंट की स्थिति एक जैसी है.

ये हैं:
  • iCalUID
  • orderBy
  • privateExtendedProperty
  • q
  • sharedExtendedProperty
  • timeMin
  • timeMax
  • updatedMin
अन्य सभी क्वेरी पैरामीटर, शुरू में सिंक किए गए क्वेरी पैरामीटर से मिलते-जुलते होने चाहिए, ताकि तय किए गए व्यवहार से बचा जा सके. अगर syncToken की समयसीमा खत्म हो जाती है, तो सर्वर 410 GONE रिस्पॉन्स कोड के साथ जवाब देगा. साथ ही, क्लाइंट को स्टोरेज खाली करना होगा और बिना किसी syncToken के पूरा सिंक करना होगा.
इंक्रीमेंटल सिंकिंग के बारे में ज़्यादा जानें.
ज़रूरी नहीं. डिफ़ॉल्ट तौर पर सभी एंट्री दिखती हैं.
timeMax datetime इवेंट के शुरू होने के समय के हिसाब से फ़िल्टर करने के लिए, ऊपरी सीमा (खास तौर पर). ज़रूरी नहीं. डिफ़ॉल्ट तौर पर, यह सुविधा शुरुआत के समय के हिसाब से फ़िल्टर नहीं की जाती. यह ज़रूरी टाइम ज़ोन ऑफ़सेट के साथ RFC3339 टाइमस्टैंप होना चाहिए. उदाहरण के लिए, 2011-06-03T10:00:00-07:00, 2011-06-03T10:00:00Z. मिलीसेकंड दिए जा सकते हैं, लेकिन उन्हें अनदेखा किया जाता है. अगर timeMin सेट है, तो timeMax की वैल्यू, timeMin से ज़्यादा होनी चाहिए.
timeMin datetime इवेंट के खत्म होने के समय के हिसाब से फ़िल्टर करने के लिए, निचली सीमा. ज़रूरी नहीं. डिफ़ॉल्ट तौर पर, यह सुविधा खत्म होने के समय के हिसाब से फ़िल्टर नहीं की जाती. यह ज़रूरी टाइम ज़ोन ऑफ़सेट के साथ RFC3339 टाइमस्टैंप होना चाहिए. उदाहरण के लिए, 2011-06-03T10:00:00-07:00, 2011-06-03T10:00:00Z. मिलीसेकंड दिए जा सकते हैं, लेकिन उन्हें अनदेखा किया जाता है. अगर timeMax सेट है, तो timeMin का साइज़ timeMax से कम होना चाहिए.
timeZone string जवाब में इस्तेमाल किया गया समय क्षेत्र. ज़रूरी नहीं. डिफ़ॉल्ट, कैलेंडर का टाइम ज़ोन होता है.
updatedMin datetime इसके हिसाब से फ़िल्टर करने के लिए, इवेंट में आखिरी बार बदलाव किए जाने के समय (RFC3339 टाइमस्टैंप के तौर पर) के लिए निचली सीमा. तय किए जाने पर, इस समय के बाद मिटाई गई एंट्री हमेशा शामिल की जाएंगी, चाहे showDeleted कुछ भी हो. ज़रूरी नहीं. डिफ़ॉल्ट सेटिंग, पिछले बदलाव के समय के हिसाब से फ़िल्टर नहीं की जाती.

अनुमति

यह अनुरोध, इनमें से कम से कम एक स्कोप के साथ अनुमति देने की अनुमति देता है:

स्कोप
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 को 'सही है' पर सेट नहीं किया गया है.
defaultReminders[].method string इस रिमाइंडर के लिए इस्तेमाल किया गया तरीका. संभावित वैल्यू ये हैं:
  • "email" - रिमाइंडर ईमेल से भेजे जाते हैं.
  • "popup" - रिमाइंडर, यूज़र इंटरफ़ेस (यूआई) पॉप-अप की मदद से भेजे जाते हैं.

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

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

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

लिखा जा सकता है
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 events in the specified calendar
String pageToken = null;
do {
  Events events = service.events().list('primary').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().list(calendarId='primary', 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->listEvents('primary');

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

Ruby

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

page_token = nil
begin
  result = client.list_events('primary', 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?

इसे आज़माएं!

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