किसी कैलेंडर में मौजूद इवेंट दिखाता है. इसे अभी आज़माएं या उदाहरण देखें.
अनुरोध
एचटीटीपी अनुरोध
GET https://www.googleapis.com/calendar/v3/calendars/calendarId /events
पैरामीटर
पैरामीटर का नाम | मान | ब्यौरा |
---|---|---|
पाथ पैरामीटर | ||
calendarId |
string |
कैलेंडर आइडेंटिफ़ायर. कैलेंडर आईडी पाने के लिए, calendarList.list तरीके को कॉल करें. अगर आपको फ़िलहाल लॉग इन किए हुए उपयोगकर्ता का प्राइमरी कैलेंडर ऐक्सेस करना है, तो "primary " कीवर्ड का इस्तेमाल करें.
|
ज़रूरी नहीं क्वेरी पैरामीटर | ||
alwaysIncludeEmail |
boolean |
अब इस्तेमाल नहीं किया जा सकता और इसे अनदेखा कर दिया जाता है. |
eventTypes |
string |
लौटाए जाने वाले इवेंट टाइप. ज़रूरी नहीं. अलग-अलग तरह के इवेंट दिखाने के लिए, इस पैरामीटर को कई बार दोहराया जा सकता है. अगर यह सेट नहीं है, तो सभी तरह के इवेंट दिखाए जाते हैं.
इन वैल्यू का इस्तेमाल किया जा सकता है:
|
iCalUID |
string |
जवाब में दिया जाने वाला, iCalendar फ़ॉर्मैट में इवेंट आईडी. ज़रूरी नहीं. अगर आपको किसी इवेंट को उसके iCalendar आईडी से खोजना है, तो इसका इस्तेमाल करें. |
maxAttendees |
integer |
जवाब में शामिल किए जाने वाले मेहमानों की ज़्यादा से ज़्यादा संख्या. अगर मीटिंग में हिस्सा लेने वाले लोगों की संख्या, तय की गई संख्या से ज़्यादा है, तो सिर्फ़ मीटिंग में हिस्सा लेने वाले व्यक्ति की जानकारी दिखेगी. ज़रूरी नहीं. |
maxResults |
integer |
एक नतीजे वाले पेज पर दिखाए जाने वाले इवेंट की ज़्यादा से ज़्यादा संख्या. खोज के नतीजों वाले पेज पर इवेंट की संख्या, इस वैल्यू से कम हो सकती है या कोई भी इवेंट नहीं हो सकता. भले ही, क्वेरी से मैच करने वाले ज़्यादा इवेंट हों. रिस्पॉन्स में मौजूद nextPageToken फ़ील्ड के खाली न होने पर, अधूरे पेजों का पता लगाया जा सकता है. डिफ़ॉल्ट रूप से, इसकी वैल्यू 250 इवेंट होती है. पेज का साइज़ 2,500 इवेंट से ज़्यादा नहीं हो सकता. ज़रूरी नहीं.
|
orderBy |
string |
नतीजे में दिखाए गए इवेंट का क्रम. ज़रूरी नहीं. डिफ़ॉल्ट रूप से, कोई खास क्रम नहीं होता.
इन वैल्यू का इस्तेमाल किया जा सकता है:
|
pageToken |
string |
यह टोकन बताता है कि कौनसा नतीजा पेज दिखाना है. ज़रूरी नहीं. |
privateExtendedProperty |
string |
propertyName=value के तौर पर बताई गई एक्सटेंडेड प्रॉपर्टी की शर्त. सिर्फ़ निजी प्रॉपर्टी से मेल खाता है. दी गई सभी शर्तों से मैच करने वाले इवेंट दिखाने के लिए, इस पैरामीटर को कई बार दोहराया जा सकता है. |
q |
string |
इन फ़ील्ड में इन शब्दों से मैच होने वाले इवेंट ढूंढने के लिए, फ़्री टेक्स्ट में खोज के लिए शब्द:
ये खोज के लिए इस्तेमाल हुए शब्द, पहले से तय किए गए कीवर्ड से भी मैच करते हैं. ये कीवर्ड, ऑफ़िस में मौजूद होने की स्थिति, ऑफ़िस से बाहर होने की स्थिति, और फ़ोकस टाइम वाले इवेंट के सभी डिसप्ले टाइटल के अनुवाद से मैच करते हैं. उदाहरण के लिए, "ऑफ़िस" या "ब्यूरो" खोजने पर, काम करने की जगह से जुड़े |
sharedExtendedProperty |
string |
propertyName=value के तौर पर बताई गई एक्सटेंडेड प्रॉपर्टी की शर्त. सिर्फ़ शेयर की गई प्रॉपर्टी से मैच करता है. दी गई सभी शर्तों से मैच करने वाले इवेंट दिखाने के लिए, इस पैरामीटर को कई बार दोहराया जा सकता है. |
showDeleted |
boolean |
नतीजों में, मिटाए गए इवेंट (status , "cancelled " के बराबर है) शामिल करने हैं या नहीं. अगर showDeleted और singleEvents , दोनों False हैं, तो बार-बार होने वाले इवेंट के रद्द किए गए इंस्टेंस (लेकिन बार-बार होने वाले इवेंट नहीं) अब भी शामिल किए जाएंगे. अगर showDeleted और singleEvents , दोनों True हैं, तो मिटाए गए इवेंट के सिर्फ़ एक इंस्टेंस दिखाए जाते हैं. हालांकि, बार-बार होने वाले इवेंट नहीं दिखाए जाते. ज़रूरी नहीं. डिफ़ॉल्ट रूप से, यह 'गलत' पर सेट होता है.
|
showHiddenInvitations |
boolean |
नतीजों में छिपे हुए न्योते शामिल करने हैं या नहीं. ज़रूरी नहीं. डिफ़ॉल्ट रूप से, यह 'गलत' पर सेट होता है. |
singleEvents |
boolean |
बार-बार होने वाले इवेंट को इंस्टेंस में बड़ा करना है या नहीं. साथ ही, सिर्फ़ एक बार होने वाले इवेंट और बार-बार होने वाले इवेंट के इंस्टेंस दिखाने हैं, न कि बार-बार होने वाले इवेंट. ज़रूरी नहीं. डिफ़ॉल्ट रूप से, यह 'गलत' पर सेट होता है. |
syncToken |
string |
सूची के पिछले अनुरोध के नतीजों के आखिरी पेज पर दिखाए गए nextSyncToken फ़ील्ड से मिला टोकन. इससे, सूची के अनुरोध के नतीजे में सिर्फ़ वे एंट्री शामिल होती हैं जो तब से बदल गई हैं. सूची के पिछले अनुरोध के बाद मिटाए गए सभी इवेंट, नतीजों के सेट में हमेशा मौजूद रहेंगे. साथ ही, showDeleted को 'गलत' पर सेट करने की अनुमति नहीं है. क्लाइंट स्टेटस की एक जैसी स्थिति बनाए रखने के लिए, nextSyncToken के साथ कई क्वेरी पैरामीटर का इस्तेमाल नहीं किया जा सकता. ये हैं:
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 |
https://www.googleapis.com/auth/calendar.app.created |
https://www.googleapis.com/auth/calendar.events.freebusy |
https://www.googleapis.com/auth/calendar.events.owned |
https://www.googleapis.com/auth/calendar.events.owned.readonly |
https://www.googleapis.com/auth/calendar.events.public.readonly |
ज़्यादा जानकारी के लिए, पुष्टि और अनुमति पेज देखें.
अनुरोध का मुख्य भाग
इस तरीके का इस्तेमाल करते समय, अनुरोध का मुख्य हिस्सा न दें.
जवाब
अगर एपीआई सही से जुड़ जाता है, तो यह तरीका इस स्ट्रक्चर के साथ रिस्पॉन्स बॉडी दिखाता है:
{ "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 |
इस कैलेंडर के लिए, उपयोगकर्ता की ऐक्सेस भूमिका. सिर्फ़ पढ़ने के लिए. वैल्यू इस तरह की हो सकती हैं:
|
|
defaultReminders[] |
list |
पुष्टि किए गए उपयोगकर्ता के कैलेंडर में डिफ़ॉल्ट रिमाइंडर. ये रिमाइंडर, इस कैलेंडर के उन सभी इवेंट पर लागू होते हैं जो साफ़ तौर पर इन्हें बदल नहीं देते. इसका मतलब है कि जिन इवेंट के लिए reminders.useDefault को 'सही' पर सेट नहीं किया गया है. |
|
defaultReminders[].method |
string |
इस रिमाइंडर के लिए इस्तेमाल किया गया तरीका. वैल्यू इस तरह की हो सकती हैं:
रिमाइंडर जोड़ते समय ज़रूरी है. |
लिखा जा सकता है |
defaultReminders[].minutes |
integer |
इवेंट शुरू होने से कितने मिनट पहले रिमाइंडर ट्रिगर होना चाहिए. वैल्यू 0 से 40320 (मिनट में चार हफ़्ते) के बीच होनी चाहिए. रिमाइंडर जोड़ते समय ज़रूरी है. |
लिखा जा सकता है |
nextPageToken |
string |
इस नतीजे के अगले पेज को ऐक्सेस करने के लिए इस्तेमाल किया जाने वाला टोकन. अगर कोई और नतीजा उपलब्ध नहीं है, तो इसे हटा दिया जाता है. ऐसे में, nextSyncToken दिया जाता है. |
|
items[] |
list |
कैलेंडर पर मौजूद इवेंट की सूची. | |
nextSyncToken |
string |
यह टोकन, बाद में सिर्फ़ उन एंट्री को वापस पाने के लिए इस्तेमाल किया जाता है जो इस नतीजे के मिलने के बाद बदल गई हैं. अगर और नतीजे उपलब्ध हैं, तो इसे हटा दिया जाता है. ऐसे में, nextPageToken दिया जाता है. |
उदाहरण
ध्यान दें: इस तरीके के लिए दिए गए कोड के उदाहरणों में इसके साथ काम करने वाली सभी प्रोग्रामिंग भाषाएं नहीं दिखाई गई हैं (इसके साथ काम करने वाली भाषाओं की सूची के लिए क्लाइंट लाइब्रेरी वाला पेज देखें).
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 क्लाइंट लाइब्रेरी का इस्तेमाल करता है.
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 क्लाइंट लाइब्रेरी का इस्तेमाल करता है.
$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 क्लाइंट लाइब्रेरी का इस्तेमाल करता है.
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?