Events: import

इवेंट इंपोर्ट करता है. इस कार्रवाई का इस्तेमाल किसी कैलेंडर में मौजूदा इवेंट की निजी कॉपी जोड़ने के लिए किया जाता है. सिर्फ़ default के eventType वाले इवेंट इंपोर्ट किए जा सकते हैं.

काम न करने वाला व्यवहार: अगर default के अलावा कोई दूसरा इवेंट इंपोर्ट किया गया है, तो उसका टाइप default में बदल दिया जाएगा. साथ ही, उस इवेंट टाइप से जुड़ी सभी प्रॉपर्टी को भी हटा दिया जाएगा.

इसे अभी आज़माएं या उदाहरण देखें.

अनुरोध

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

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

पैरामीटर

पैरामीटर का नाम मान ब्यौरा
पाथ पैरामीटर
calendarId string कैलेंडर आइडेंटिफ़ायर. कैलेंडर आईडी वापस पाने के लिए, calendarList.list तरीके को कॉल करें. अगर आपको उस उपयोगकर्ता का मुख्य कैलेंडर ऐक्सेस करना है जिसने फ़िलहाल लॉग इन किया हुआ है, तो "primary" का इस्तेमाल करें कीवर्ड.
वैकल्पिक क्वेरी पैरामीटर
conferenceDataVersion integer एपीआई क्लाइंट पर काम करने वाले कॉन्फ़्रेंस डेटा का वर्शन नंबर. वर्शन 0 के मुताबिक, कोई कॉन्फ़्रेंस डेटा उपलब्ध नहीं है और इवेंट के मुख्य हिस्से में कॉन्फ़्रेंस के डेटा को अनदेखा किया गया है. वर्शन 1 में ConferenceData को कॉपी करने और नई कॉन्फ़्रेंस बनाने की सुविधा चालू की गई है. इसके लिए, कॉन्फ़्रेंस डेटा के createRequest फ़ील्ड का इस्तेमाल किया जा सकता है. डिफ़ॉल्ट वैल्यू 0 होती है. स्वीकार की जाने वाली वैल्यू 0 से 1 तक हैं. इसमें ये वैल्यू भी शामिल हैं.
supportsAttachments boolean एपीआई क्लाइंट की कार्रवाई के दौरान, इवेंट अटैचमेंट चलाए जा सकते हैं या नहीं. ज़रूरी नहीं. डिफ़ॉल्ट रूप से, यह वैल्यू 'गलत' पर सेट होती है.

अनुमति देना

इस अनुरोध के लिए, इनमें से कम से कम एक दायरे की अनुमति लेना ज़रूरी है:

दायरा
https://www.googleapis.com/auth/calendar
https://www.googleapis.com/auth/calendar.events

ज़्यादा जानकारी के लिए, पुष्टि करने और अनुमति देने से जुड़ा पेज देखें.

अनुरोध का मुख्य भाग

अनुरोध के मुख्य हिस्से में, इन प्रॉपर्टी के साथ इवेंट का संसाधन उपलब्ध कराएं:

प्रॉपर्टी का नाम मान ब्यौरा नोट
ज़रूरी प्रॉपर्टी
end nested object इवेंट के खत्म होने का खास समय. बार-बार होने वाले किसी इवेंट के लिए, यह पहले इंस्टेंस के खत्म होने का समय है.
iCalUID string इवेंट का यूनीक आइडेंटिफ़ायर, जैसा कि RFC5545 में बताया गया है. इसका इस्तेमाल कैलेंडर सिस्टम में इवेंट की पहचान करने के लिए किया जाता है. साथ ही, import तरीके से इवेंट इंपोर्ट करते समय, इसकी वैल्यू देना ज़रूरी है.

ध्यान दें कि iCalUID और id एक जैसे नहीं हैं. इवेंट बनाते समय, इनमें से सिर्फ़ एक ही वैल्यू दी जानी चाहिए. उनके सिमैंटिक में एक अंतर यह है कि बार-बार होने वाले इवेंट में, किसी भी इवेंट के सभी बार अलग-अलग id होते हैं, जबकि उन सभी का iCalUID एक ही होता है. iCalUID का इस्तेमाल करके, किसी इवेंट को फिर से पाने के लिए, events.list तरीके को iCalUID पैरामीटर का इस्तेमाल करके कॉल करें. id का इस्तेमाल करके, किसी इवेंट को वापस पाने के लिए, events.get तरीके को कॉल करें.

start nested object इवेंट के शुरू होने का समय. बार-बार होने वाले इवेंट के लिए, यह पहले इंस्टेंस के शुरू होने का समय है.
वैकल्पिक प्रॉपर्टी
anyoneCanAddSelf boolean इवेंट में कोई भी व्यक्ति खुद को शामिल कर सकता है या नहीं. ज़रूरी नहीं. डिफ़ॉल्ट रूप से, यह वैल्यू 'गलत' पर सेट होती है. लिखा जा सकता है
attachments[].fileUrl string अटैचमेंट का यूआरएल लिंक.

Google Drive में मौजूद फ़ाइल अटैचमेंट जोड़ने के लिए, उसी फ़ॉर्मैट का इस्तेमाल करें जिसका इस्तेमाल Drive API में, Files संसाधन की alternateLink प्रॉपर्टी में किया गया है.

अटैचमेंट जोड़ते समय ज़रूरी है.

लिखा जा सकता है
attendees[] list इवेंट में शामिल लोग. कैलेंडर का इस्तेमाल करने वाले दूसरे उपयोगकर्ताओं के साथ इवेंट शेड्यूल करने के बारे में ज़्यादा जानकारी के लिए, मेहमानों के साथ इवेंट वाली गाइड देखें. सेवा खातों में, मेहमानों की सूची अपने-आप भरने के लिए, पूरे डोमेन के लोगों को अपने-आप अधिकार देने की सुविधा का इस्तेमाल करना होगा. लिखा जा सकता है
attendees[].additionalGuests integer अतिरिक्त मेहमानों की संख्या. ज़रूरी नहीं. डिफ़ॉल्ट वैल्यू 0 होती है. लिखा जा सकता है
attendees[].comment string मेहमान की जवाब पर टिप्पणी. ज़रूरी नहीं. लिखा जा सकता है
attendees[].displayName string मेहमान का नाम, अगर उपलब्ध हो. ज़रूरी नहीं. लिखा जा सकता है
attendees[].email string मेहमान का ईमेल पता, अगर उपलब्ध हो. मेहमान को जोड़ते समय यह फ़ील्ड मौजूद होना चाहिए. यह RFC5322 के मुताबिक मान्य ईमेल पता होना चाहिए.

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

लिखा जा सकता है
attendees[].optional boolean क्या यह वैकल्पिक मेहमान है. ज़रूरी नहीं. डिफ़ॉल्ट रूप से, यह वैल्यू 'गलत' पर सेट होती है. लिखा जा सकता है
attendees[].resource boolean क्या मेहमान कोई संसाधन है. इसे सिर्फ़ तब सेट किया जा सकता है, जब मेहमान को इवेंट में पहली बार जोड़ा गया हो. बाद के बदलावों को अनदेखा कर दिया जाता है. ज़रूरी नहीं. डिफ़ॉल्ट रूप से, यह वैल्यू 'गलत' पर सेट होती है. लिखा जा सकता है
attendees[].responseStatus string मेहमान के जवाब की स्थिति. संभावित वैल्यू ये हैं:
  • "needsAction" - उपस्थितजन ने आमंत्रण का उत्तर नहीं दिया (नए इवेंट के लिए सुझाए गए).
  • "declined" - मेहमान ने न्योता अस्वीकार कर दिया है.
  • "tentative" - मेहमान ने अस्थायी रूप से न्योता स्वीकार कर लिया है.
  • "accepted" - मेहमान ने न्योता स्वीकार कर लिया है.
लिखा जा सकता है
attendeesOmitted boolean क्या मेहमानों को इवेंट से हटा दिया गया है. किसी इवेंट को वापस लाते समय, ऐसा maxAttendee क्वेरी पैरामीटर से तय की गई पाबंदी की वजह से हो सकता है. किसी इवेंट को अपडेट करते समय, इसकी मदद से सिर्फ़ मीटिंग में हिस्सा लेने वाले का जवाब अपडेट किया जा सकता है. ज़रूरी नहीं. डिफ़ॉल्ट रूप से, यह वैल्यू 'गलत' पर सेट होती है. लिखा जा सकता है
colorId string इवेंट का रंग. यह आईडी, कलर डेफ़िनिशन के event सेक्शन में की गई एंट्री को रेफ़र करता है. ( कलर एंडपॉइंट देखें). ज़रूरी नहीं. लिखा जा सकता है
conferenceData nested object कॉन्फ़्रेंस से जुड़ी जानकारी, जैसे कि Google Meet कॉन्फ़्रेंस का ब्यौरा. नई कॉन्फ़्रेंस की जानकारी डालने के लिए, createRequest फ़ील्ड का इस्तेमाल करें. अगर आपको बदलावों को लागू रखना है, तो इवेंट में बदलाव करने के सभी अनुरोधों के लिए, conferenceDataVersion अनुरोध पैरामीटर को 1 पर सेट करना न भूलें. लिखा जा सकता है
description string इवेंट के बारे में जानकारी. इसमें एचटीएमएल शामिल हो सकता है. ज़रूरी नहीं. लिखा जा सकता है
end.date date अगर यह पूरे दिन का इवेंट है, तो "yyyy-mm-dd" फ़ॉर्मैट में तारीख. लिखा जा सकता है
end.dateTime datetime समय, तारीख और समय की मिली-जुली वैल्यू के तौर पर (RFC3339 के हिसाब से फ़ॉर्मैट किया गया). अगर timeZone में टाइम ज़ोन साफ़ तौर पर नहीं बताया गया है, तो टाइम ज़ोन ऑफ़सेट करना ज़रूरी है. लिखा जा सकता है
end.timeZone string वह टाइम ज़ोन जिसमें समय बताया गया है. (IANA टाइम ज़ोन डेटाबेस नाम के रूप में फ़ॉर्मैट किया गया, जैसे "यूरोप/ज़ूरिख़".) बार-बार होने वाले इवेंट के लिए यह फ़ील्ड ज़रूरी है. साथ ही, यह उस टाइम ज़ोन के बारे में बताता है जिसमें बार-बार होने वाले इवेंट को बड़ा किया जाता है. किसी एक इवेंट के लिए यह फ़ील्ड ज़रूरी नहीं है. साथ ही, इवेंट के शुरू/खत्म होने के लिए कस्टम टाइम ज़ोन दिखाता है. लिखा जा सकता है
extendedProperties.private object ऐसी प्रॉपर्टी जो इस कैलेंडर पर दिखने वाले इवेंट की कॉपी के लिए निजी होती हैं. लिखा जा सकता है
extendedProperties.shared object ऐसी प्रॉपर्टी जिन्हें इवेंट की कॉपी के बीच दूसरे मेहमानों के साथ शेयर किया जाता है कैलेंडर. लिखा जा सकता है
focusTimeProperties nested object फ़ोकस टाइम इवेंट का डेटा. अगर eventType, focusTime है, तो इस्तेमाल किया जाता है. लिखा जा सकता है
gadget.display string गैजेट का प्रदर्शन मोड. समर्थन नहीं होना या रुकना. संभावित वैल्यू ये हैं:
  • "icon" - कैलेंडर दृश्य में इवेंट के शीर्षक के आगे गैजेट दिखाई देता है.
  • "chip" - इवेंट क्लिक करने पर गैजेट दिखाई देता है.
लिखा जा सकता है
gadget.height integer पिक्सल में गैजेट की ऊंचाई. ऊंचाई 0 से बड़ी कोई पूर्णांक होनी चाहिए. ज़रूरी नहीं. समर्थन नहीं होना या रुकना. लिखा जा सकता है
gadget.preferences object प्राथमिकताएं पर क्लिक करें. लिखा जा सकता है
gadget.title string गैजेट का टाइटल. समर्थन नहीं होना या रुकना. लिखा जा सकता है
gadget.type string गैजेट का टाइप. समर्थन नहीं होना या रुकना. लिखा जा सकता है
gadget.width integer पिक्सल में गैजेट की चौड़ाई. चौड़ाई 0 से बड़ी कोई पूर्णांक होनी चाहिए. ज़रूरी नहीं. समर्थन नहीं होना या रुकना. लिखा जा सकता है
guestsCanInviteOthers boolean क्या आयोजक के अलावा अन्य उपस्थित व्यक्ति इवेंट में अन्य लोगों को आमंत्रित कर सकते हैं. ज़रूरी नहीं. डिफ़ॉल्ट रूप से, 'सही' होता है. लिखा जा सकता है
guestsCanModify boolean आयोजक के अलावा, अन्य मेहमान इवेंट में बदलाव कर सकते हैं या नहीं. ज़रूरी नहीं. डिफ़ॉल्ट रूप से, यह वैल्यू 'गलत' पर सेट होती है. लिखा जा सकता है
guestsCanSeeOtherGuests boolean क्या आयोजक के अलावा अन्य उपस्थित लोग यह देख सकते हैं कि इवेंट के उपस्थित लोग कौन हैं. ज़रूरी नहीं. डिफ़ॉल्ट रूप से, 'सही' होता है. लिखा जा सकता है
location string फ़्री-फ़ॉर्म टेक्स्ट के तौर पर इवेंट की जगह की जानकारी. ज़रूरी नहीं. लिखा जा सकता है
organizer object इवेंट का आयोजक. अगर आयोजक एक मेहमान भी है, तो इसे attendees में अलग एंट्री के साथ दिखाया जाता है. इसमें organizer फ़ील्ड को 'सही' पर सेट किया जाता है. आयोजक को बदलने के लिए, मूव करें कार्रवाई का इस्तेमाल करें. सिर्फ़ पढ़ने के लिए, इवेंट इंपोर्ट करने पर नहीं. लिखा जा सकता है
organizer.displayName string आयोजक का नाम, अगर उपलब्ध हो. लिखा जा सकता है
organizer.email string आयोजक का ईमेल पता, अगर उपलब्ध हो. यह RFC5322 के मुताबिक मान्य ईमेल पता होना चाहिए. लिखा जा सकता है
originalStartTime.date date अगर यह पूरे दिन का इवेंट है, तो "yyyy-mm-dd" फ़ॉर्मैट में तारीख. लिखा जा सकता है
originalStartTime.dateTime datetime समय, तारीख और समय की मिली-जुली वैल्यू के तौर पर (RFC3339 के हिसाब से फ़ॉर्मैट किया गया). अगर timeZone में टाइम ज़ोन साफ़ तौर पर नहीं बताया गया है, तो टाइम ज़ोन ऑफ़सेट करना ज़रूरी है. लिखा जा सकता है
originalStartTime.timeZone string वह टाइम ज़ोन जिसमें समय बताया गया है. (IANA टाइम ज़ोन डेटाबेस नाम के रूप में फ़ॉर्मैट किया गया, जैसे "यूरोप/ज़ूरिख़".) बार-बार होने वाले इवेंट के लिए यह फ़ील्ड ज़रूरी है. साथ ही, यह उस टाइम ज़ोन के बारे में बताता है जिसमें बार-बार होने वाले इवेंट को बड़ा किया जाता है. किसी एक इवेंट के लिए यह फ़ील्ड ज़रूरी नहीं है. साथ ही, इवेंट के शुरू/खत्म होने के लिए कस्टम टाइम ज़ोन दिखाता है. लिखा जा सकता है
outOfOfficeProperties nested object 'अभी मैं छुट्टी पर हूं' इवेंट का डेटा. अगर eventType, outOfOffice है, तो इस्तेमाल किया जाता है. लिखा जा सकता है
recurrence[] list बार-बार होने वाले इवेंट के लिए, RRule, EX बिना, RDATE, और EXDATE लाइनों की सूची, जैसा कि RFC5545 में बताया गया है. ध्यान दें कि इस फ़ील्ड में DTSTART और DTEND लाइनों की अनुमति नहीं है; इवेंट के शुरू और खत्म होने के समय की जानकारी start और end फ़ील्ड में दी गई है. इस फ़ील्ड को किसी एक इवेंट या बार-बार होने वाले इवेंट के लिए इस्तेमाल नहीं किया जाता. लिखा जा सकता है
reminders.overrides[] list अगर इवेंट में डिफ़ॉल्ट रिमाइंडर का इस्तेमाल नहीं किया गया है, तो इससे इवेंट के लिए खास रिमाइंडर की सूची बनती है. अगर इवेंट में कोई रिमाइंडर सेट नहीं है, तो इससे पता चलता है कि इस इवेंट के लिए कोई रिमाइंडर सेट नहीं है. ओवरराइड रिमाइंडर की ज़्यादा से ज़्यादा संख्या पांच है. लिखा जा सकता है
reminders.overrides[].method string इस रिमाइंडर के लिए इस्तेमाल किया गया तरीका. संभावित वैल्यू ये हैं:
  • "email" - रिमाइंडर, ईमेल से भेजे जाते हैं.
  • "popup" - रिमाइंडर, यूज़र इंटरफ़ेस (यूआई) पॉप-अप के ज़रिए भेजे जाते हैं.

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

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

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

लिखा जा सकता है
reminders.useDefault boolean कैलेंडर के डिफ़ॉल्ट रिमाइंडर इवेंट पर लागू होते हैं या नहीं. लिखा जा सकता है
sequence integer iCalendar के मुताबिक क्रम संख्या. लिखा जा सकता है
source.title string सोर्स का टाइटल; उदाहरण के लिए, किसी वेब पेज का टाइटल या ईमेल का विषय. लिखा जा सकता है
source.url string किसी संसाधन पर ले जाने वाले सोर्स का यूआरएल. यूआरएल स्कीम, एचटीटीपी या एचटीटीपीएस होनी चाहिए. लिखा जा सकता है
start.date date अगर यह पूरे दिन का इवेंट है, तो "yyyy-mm-dd" फ़ॉर्मैट में तारीख. लिखा जा सकता है
start.dateTime datetime समय, तारीख और समय की मिली-जुली वैल्यू के तौर पर (RFC3339 के हिसाब से फ़ॉर्मैट किया गया). अगर timeZone में टाइम ज़ोन साफ़ तौर पर नहीं बताया गया है, तो टाइम ज़ोन ऑफ़सेट करना ज़रूरी है. लिखा जा सकता है
start.timeZone string वह टाइम ज़ोन जिसमें समय बताया गया है. (IANA टाइम ज़ोन डेटाबेस नाम के रूप में फ़ॉर्मैट किया गया, जैसे "यूरोप/ज़ूरिख़".) बार-बार होने वाले इवेंट के लिए यह फ़ील्ड ज़रूरी है. साथ ही, यह उस टाइम ज़ोन के बारे में बताता है जिसमें बार-बार होने वाले इवेंट को बड़ा किया जाता है. किसी एक इवेंट के लिए यह फ़ील्ड ज़रूरी नहीं है. साथ ही, इवेंट के शुरू/खत्म होने के लिए कस्टम टाइम ज़ोन दिखाता है. लिखा जा सकता है
status string इवेंट की स्थिति. ज़रूरी नहीं. संभावित वैल्यू ये हैं:
  • "confirmed" - इवेंट की पुष्टि हो गई है. यह डिफ़ॉल्ट स्थिति है.
  • "tentative" - इवेंट की पक्के तौर पर पुष्टि हो गई है.
  • "cancelled" - इवेंट रद्द कर दिया गया है (मिटाया गया). list तरीके से रद्द किए गए इवेंट सिर्फ़ इंक्रीमेंटल सिंक होने पर दिखते हैं (जब syncToken या updatedMin के बारे में बताया गया हो) या अगर showDeleted फ़्लैग true पर सेट हो. get मेथड से ये नतीजे हमेशा दिखते हैं.

    रद्द की गई स्थिति, इवेंट टाइप के आधार पर दो अलग-अलग स्थितियों को दिखाती है:

    1. रद्द नहीं किए गए बार-बार होने वाले इवेंट के रद्द किए गए अपवाद का मतलब है कि यह इंस्टेंस अब उपयोगकर्ता को नहीं दिखाया जाना चाहिए. क्लाइंट को ये इवेंट, पैरंट बार-बार होने वाले इवेंट की अवधि तक सेव रखने चाहिए.

      रद्द किए गए अपवादों के लिए, सिर्फ़ id, recurringEventId, और originalStartTime फ़ील्ड की वैल्यू अपने-आप भरने की गारंटी दी जाती है. दूसरे फ़ील्ड खाली हो सकते हैं.

    2. रद्द किए गए अन्य सभी इवेंट, मिटाए गए इवेंट दिखाते हैं. क्लाइंट को अपनी डिवाइस में सिंक की गई कॉपी हटानी चाहिए. ऐसे रद्द किए गए इवेंट समय के साथ गायब हो जाते हैं. इसलिए, इनके उपलब्ध रहने पर भरोसा न करें.

      मिटाए गए इवेंट के लिए, सिर्फ़ id फ़ील्ड में जानकारी अपने-आप भरने की गारंटी होती है.

    आयोजक के कैलेंडर पर, रद्द किए गए इवेंट, इवेंट की जानकारी दिखाते रहते हैं. जैसे, खास जानकारी, जगह की जानकारी वगैरह. ऐसा करने पर, उन्हें वापस लाया जा सकता है (मिटाया गया आइटम वापस लाया जा सकता है). इसी तरह, जिन इवेंट के लिए उपयोगकर्ता को न्योता दिया गया था और जिन्हें मैन्युअल तरीके से हटाया गया था उनसे जुड़ी जानकारी मिलती रहती है. हालांकि, showDeleted के साथ इंक्रीमेंटल सिंक अनुरोधों को 'गलत' पर सेट किया गया होगा, तो इससे यह जानकारी नहीं मिलेगी.

    अगर कोई इवेंट अपना आयोजक बदल जाता है (उदाहरण के लिए, ले जाएं कार्रवाई के ज़रिए) और मूल आयोजक मेहमानों की सूची में नहीं है, तो वह रद्द किया गया इवेंट छोड़ देगा, जहां सिर्फ़ id फ़ील्ड में जानकारी अपने-आप भर जाएगी.

लिखा जा सकता है
summary string इवेंट का शीर्षक. लिखा जा सकता है
transparency string इवेंट, कैलेंडर पर समय को ब्लॉक करता है या नहीं. ज़रूरी नहीं. संभावित वैल्यू ये हैं:
  • "opaque" - डिफ़ॉल्ट वैल्यू. इवेंट, कैलेंडर पर समय को ब्लॉक कर देता है. यह कैलेंडर यूज़र इंटरफ़ेस (यूआई) में मुझे इस रूप में दिखाएं को व्यस्त पर सेट करने के बराबर है.
  • "transparent" - इवेंट, कैलेंडर पर समय को ब्लॉक नहीं करता है. यह कैलेंडर यूज़र इंटरफ़ेस (यूआई) में मुझे इस रूप में दिखाएं को उपलब्ध पर सेट करने के बराबर है.
लिखा जा सकता है
visibility string इवेंट किसको दिखे. ज़रूरी नहीं. संभावित वैल्यू ये हैं:
  • "default" - कैलेंडर पर इवेंट के लिए डिफ़ॉल्ट व्यू का इस्तेमाल करता है. यह डिफ़ॉल्ट मान है.
  • "public" - इवेंट सार्वजनिक है और इवेंट की जानकारी, कैलेंडर पढ़ने वाले सभी लोगों को दिखती है.
  • "private" - इवेंट निजी है और सिर्फ़ इवेंट में शामिल लोग ही इवेंट की जानकारी देख सकते हैं.
  • "confidential" - इवेंट निजी है. यह वैल्यू इसलिए दी गई है, ताकि डिवाइस के साथ काम करने की सुविधा का इस्तेमाल किया जा सके.
लिखा जा सकता है

जवाब

अगर इस तरीके से अनुरोध स्वीकार किया जाता है, तो जवाब के मुख्य हिस्से में यह इवेंट का संसाधन दिखाता है.

उदाहरण

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

Java

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

import com.google.api.services.calendar.Calendar;
import com.google.api.services.calendar.model.Event;
import com.google.api.services.calendar.model.EventAttendee;
import com.google.api.services.calendar.model.EventDateTime;
import com.google.api.client.util.DateTime;

import java.util.Date;
// ...

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

// Create and initialize a new event (could also retrieve an existing event)
Event event = new Event();
event.setICalUID("originalUID");

Event.Organizer organizer = new Event.Organizer();
organizer.setEmail("organizerEmail");
organizer.setDisplayName("organizerDisplayName");
event.setOrganizer(organizer);

ArrayList<EventAttendee> attendees = new ArrayList<EventAttendee>();
attendees.add(new EventAttendee().setEmail("attendeeEmail"));
// ...
event.setAttendees(attendees);

Date startDate = new Date();
Date endDate = new Date(startDate.getTime() + 3600000);
DateTime start = new DateTime(startDate, TimeZone.getTimeZone("UTC"));
event.setStart(new EventDateTime().setDateTime(start));
DateTime end = new DateTime(endDate, TimeZone.getTimeZone("UTC"));
event.setEnd(new EventDateTime().setDateTime(end));

// Import the event into a calendar
Event importedEvent = service.events().calendarImport('primary', event).execute();

System.out.println(importedEvent.getId());

Python

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

event = {
  'summary': 'Appointment',
  'location': 'Somewhere',
  'organizer': {
    'email': 'organizerEmail',
    'displayName': 'organizerDisplayName'
  },
  'start': {
    'dateTime': '2011-06-03T10:00:00.000-07:00'
  },
  'end': {
    'dateTime': '2011-06-03T10:25:00.000-07:00'
  },
  'attendees': [
    {
      'email': 'attendeeEmail',
      'displayName': 'attendeeDisplayName',
    },
    # ...
  ],
  'iCalUID': 'originalUID'
}

imported_event = service.events().import_(calendarId='primary', body=event).execute()

print imported_event['id']

PHP

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

$event = new Google_Service_Calendar_Event();
$event->setSummary('Appointment');
$event->setLocation('Somewhere');
$start = new Google_Service_Calendar_EventDateTime();
$start->setDateTime('2011-06-03T10:00:00.000-07:00');
$event->setStart($start);
$end = new Google_Service_Calendar_EventDateTime();
$end->setDateTime('2011-06-03T10:25:00.000-07:00');
$event->setEnd($end);
$attendee1 = new Google_Service_Calendar_EventAttendee();
$attendee1->setEmail('attendeeEmail');
// ...
$attendees = array($attendee1,
                   // ...,
                  );
$event->attendees = $attendees;
$organizer = new Google_Service_Calendar_EventOrganizer();
$organizer->setEmail('organizerEmail');
$organizer->setDisplayName('organizerDisplayName');
$event->setOrganizer($organizer);
$event->setICalUID('originalUID');
$importedEvent = $service->events->import('primary', $event);

echo $importedEvent->getId();

Ruby

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

event = Google::Apis::CalendarV3::Event.new(
  summary: 'Appointment',
  location: 'Somewhere',
  organizer: {
    email: 'organizerEmail',
    display_name: 'organizerDisplayName'
  },
  start: {
    date_time: '2011-06-03T10:00:00.000-07:00'
  },
  end: {
    date_time: '2011-06-03T10:25:00.000-07:00'
  },
  attendees: [
    {
      email: 'attendeeEmail',
      display_name: 'attendeeDisplayName',
    },
    # ...
  ],
  i_cal_uid: 'originalUID'
)
result = client.import_event('primary', event)
print result.id

इसे आज़माएं!

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