इवेंट को इंपोर्ट करता है. इस कार्रवाई का इस्तेमाल, किसी मौजूदा इवेंट की निजी कॉपी को कैलेंडर में जोड़ने के लिए किया जाता है. सिर्फ़ default
के eventType
वाले इवेंट इंपोर्ट किए जा सकते हैं.
अब काम नहीं करने वाला व्यवहार: अगर कोई ऐसा इवेंट इंपोर्ट किया जाता है जो default
नहीं है, तो उसका टाइप बदलकर default
कर दिया जाएगा. साथ ही, इवेंट टाइप के आधार पर बनी उस प्रॉपर्टी को हटा दिया जाएगा.
अनुरोध
एचटीटीपी अनुरोध
POST https://www.googleapis.com/calendar/v3/calendars/calendarId/events/import
पैरामीटर
पैरामीटर का नाम | वैल्यू | ब्यौरा |
---|---|---|
पाथ पैरामीटर | ||
calendarId |
string |
कैलेंडर आइडेंटिफ़ायर. कैलेंडर आईडी पाने के लिए, calendarList.list तरीके को कॉल करें. अगर आपको उस उपयोगकर्ता का मुख्य कैलेंडर ऐक्सेस करना है जिसने फ़िलहाल लॉग इन किया हुआ है, तो "primary " कीवर्ड का इस्तेमाल करें.
|
वैकल्पिक क्वेरी पैरामीटर | ||
conferenceDataVersion |
integer |
एपीआई क्लाइंट के साथ काम करने वाले कॉन्फ़्रेंस डेटा का वर्शन नंबर. वर्शन 0 में यह मान लिया जाता है कि इसमें कॉन्फ़्रेंस का डेटा शामिल नहीं है. साथ ही, यह इवेंट के मुख्य हिस्से में मौजूद कॉन्फ़्रेंस डेटा को अनदेखा कर देता है. वर्शन 1 में कॉन्फ़्रेंस डेटा को कॉपी करने की सुविधा चालू की गई है. साथ ही, इसका इस्तेमाल करके कॉन्फ़्रेंस डेटा के 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 तरीके से इवेंट इंपोर्ट करते समय इसकी सप्लाई की जानी चाहिए. ध्यान दें कि |
|
start |
nested object |
इवेंट के शुरू होने का समय. बार-बार होने वाले इवेंट के लिए, यह पहले इंस्टेंस के शुरू होने का समय होता है. | |
वैकल्पिक प्रॉपर्टी | |||
anyoneCanAddSelf |
boolean |
कोई भी खुद को इवेंट में शामिल होने का न्योता भेज सकता है या नहीं. हालांकि, इवेंट से बाहर किया गया. ज़रूरी नहीं. डिफ़ॉल्ट वैल्यू 'गलत' पर सेट होती है. | लिखा जा सकता है |
attachments[].fileUrl |
string |
अटैचमेंट का यूआरएल लिंक. Google Drive में मौजूद फ़ाइल अटैचमेंट को जोड़ने के लिए, Drive API में मौजूद अटैचमेंट जोड़ते समय ज़रूरी है. |
लिखा जा सकता है |
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 |
मेहमान के जवाब की स्थिति. संभावित वैल्यू ये हैं:
|
लिखा जा सकता है |
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 |
गैजेट का प्रदर्शन मोड. समर्थन नहीं होना या रुकना. संभावित वैल्यू ये हैं:
|
लिखा जा सकता है |
gadget.height |
integer |
पिक्सल में गैजेट की ऊंचाई. ऊंचाई 0 से बड़ा कोई पूर्णांक होना चाहिए. ज़रूरी नहीं. समर्थन नहीं होना या रुकना. | लिखा जा सकता है |
gadget.iconLink |
string |
गैजेट के आइकॉन का यूआरएल. यूआरएल स्कीम एचटीटीपीएस होनी चाहिए. समर्थन नहीं होना या रुकना. | लिखा जा सकता है |
gadget.link |
string |
गैजेट का यूआरएल. यूआरएल स्कीम एचटीटीपीएस होनी चाहिए. समर्थन नहीं होना या रुकना. | लिखा जा सकता है |
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 |
बार-बार होने वाले इवेंट के लिए RTERMS, EXTerms, RDATE, और EXDATE लाइनों की सूची. इसके बारे में RFC5545 में बताया गया है. ध्यान दें कि इस फ़ील्ड में DTSTART और DTEND लाइनों की अनुमति नहीं है. इवेंट के शुरू और खत्म होने के समय की जानकारी, start और end फ़ील्ड में दी गई है. यह फ़ील्ड किसी एक इवेंट या बार-बार होने वाले इवेंट के लिए इस्तेमाल नहीं किया जाता है. |
लिखा जा सकता है |
reminders.overrides[] |
list |
अगर इवेंट में डिफ़ॉल्ट रिमाइंडर का इस्तेमाल नहीं किया जाता है, तो यह इवेंट के लिए खास रिमाइंडर की सूची बनाता है. अगर सेट नहीं किया गया है, तो यह बताता है कि इस इवेंट के लिए कोई रिमाइंडर सेट नहीं किया गया है. बदलाव करने के लिए, ज़्यादा से ज़्यादा पांच रिमाइंडर इस्तेमाल किए जा सकते हैं. | लिखा जा सकता है |
reminders.overrides[].method |
string |
इस रिमाइंडर के लिए इस्तेमाल किया गया तरीका. संभावित वैल्यू ये हैं:
रिमाइंडर जोड़ते समय ज़रूरी है. |
लिखा जा सकता है |
reminders.overrides[].minutes |
integer |
इवेंट शुरू होने से पहले के मिनट में, रिमाइंडर कब ट्रिगर होना चाहिए. मान्य वैल्यू 0 और 40320 के बीच की होती हैं (मिनट में 4 हफ़्ते). रिमाइंडर जोड़ते समय ज़रूरी है. |
लिखा जा सकता है |
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 |
इवेंट की स्थिति. ज़रूरी नहीं. संभावित वैल्यू ये हैं:
|
लिखा जा सकता है |
summary |
string |
इवेंट का शीर्षक. | लिखा जा सकता है |
transparency |
string |
क्या इवेंट, कैलेंडर पर समय को ब्लॉक करता है. ज़रूरी नहीं. संभावित वैल्यू ये हैं:
|
लिखा जा सकता है |
visibility |
string |
इवेंट की दृश्यता. ज़रूरी नहीं. संभावित वैल्यू ये हैं:
|
लिखा जा सकता है |
जवाब
अगर यह तरीका काम करता है, तो यह रिस्पॉन्स के मुख्य हिस्से में इवेंट संसाधन दिखाता है.
उदाहरण
ध्यान दें: इस तरीके के लिए दिए गए कोड के उदाहरणों में इसके साथ काम करने वाली सभी प्रोग्रामिंग भाषाएं नहीं दिखाई गई हैं (इसके साथ काम करने वाली भाषाओं की सूची के लिए क्लाइंट लाइब्रेरी वाला पेज देखें).
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
इसे आज़माएं!
लाइव डेटा पर इस तरीके को कॉल करने और रिस्पॉन्स देखने के लिए, नीचे दिया गया एपीआई एक्सप्लोरर इस्तेमाल करें.