यह फ़ंक्शन, बताए गए कैलेंडर पर मौजूद इवेंट दिखाता है. इसे अभी आज़माएं या उदाहरण देखें.
अनुरोध
एचटीटीपी अनुरोध
GET https://www.googleapis.com/calendar/v3/calendars/calendarId/events
पैरामीटर
पैरामीटर का नाम | मान | ब्यौरा |
---|---|---|
पाथ पैरामीटर | ||
calendarId |
string |
Calendar आइडेंटिफ़ायर. कैलेंडर आईडी पाने के लिए, 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 , दोनों 'सही' हैं, तो मिटाए गए इवेंट का सिर्फ़ एक इंस्टेंस दिखाया जाता है. हालांकि, बार-बार होने वाले इवेंट का कोई एक इंस्टेंस नहीं दिया जाता. ज़रूरी नहीं. डिफ़ॉल्ट रूप से, यह 'गलत' पर सेट होता है.
|
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 |
ज़्यादा जानकारी के लिए, पुष्टि और अनुमति पेज देखें.
अनुरोध का मुख्य भाग
इस तरीके का इस्तेमाल करते समय, अनुरोध का मुख्य हिस्सा न दें.
जवाब
अगर एपीआई सही से जुड़ जाता है, तो यह तरीका इस स्ट्रक्चर के साथ रिस्पॉन्स बॉडी दिखाता है:
{ "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
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?
इसे आज़माएं!
लाइव डेटा पर इस तरीके को कॉल करने और जवाब देखने के लिए, नीचे दिए गए एपीआई एक्सप्लोरर का इस्तेमाल करें.