इवेंट इंपोर्ट करता है. इस कार्रवाई का इस्तेमाल किसी कैलेंडर में मौजूदा इवेंट की निजी कॉपी जोड़ने के लिए किया जाता है. सिर्फ़ 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 तरीके से इवेंट इंपोर्ट करते समय, इसकी वैल्यू देना ज़रूरी है. ध्यान दें कि |
|
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 |
बार-बार होने वाले इवेंट के लिए, RRule, EX बिना, RDATE, और EXDATE लाइनों की सूची, जैसा कि RFC5545 में बताया गया है. ध्यान दें कि इस फ़ील्ड में DTSTART और DTEND लाइनों की अनुमति नहीं है; इवेंट के शुरू और खत्म होने के समय की जानकारी start और end फ़ील्ड में दी गई है. इस फ़ील्ड को किसी एक इवेंट या बार-बार होने वाले इवेंट के लिए इस्तेमाल नहीं किया जाता. |
लिखा जा सकता है |
reminders.overrides[] |
list |
अगर इवेंट में डिफ़ॉल्ट रिमाइंडर का इस्तेमाल नहीं किया गया है, तो इससे इवेंट के लिए खास रिमाइंडर की सूची बनती है. अगर इवेंट में कोई रिमाइंडर सेट नहीं है, तो इससे पता चलता है कि इस इवेंट के लिए कोई रिमाइंडर सेट नहीं है. ओवरराइड रिमाइंडर की ज़्यादा से ज़्यादा संख्या पांच है. | लिखा जा सकता है |
reminders.overrides[].method |
string |
इस रिमाइंडर के लिए इस्तेमाल किया गया तरीका. संभावित वैल्यू ये हैं:
रिमाइंडर जोड़ते समय ज़रूरी है. |
लिखा जा सकता है |
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 |
इवेंट की स्थिति. ज़रूरी नहीं. संभावित वैल्यू ये हैं:
|
लिखा जा सकता है |
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
इसे आज़माएं!
लाइव डेटा पर इस तरीके को कॉल करने और जवाब देखने के लिए, नीचे दिए गए एपीआई एक्सप्लोरर का इस्तेमाल करें.