Apps Script में मौजूद ऐडवांस सेवाओं की मदद से, अनुभवी डेवलपर कुछ सार्वजनिक Google API से कनेक्ट हो सकते हैं. इसके लिए, उन्हें एचटीटीपी इंटरफ़ेस इस्तेमाल करने की तुलना में कम सेटअप करना पड़ता है. बेहतर सेवाएं, असल में Google API के चारों ओर पतले रैपर होती हैं. ये Apps Script की बिल्ट-इन सेवाओं की तरह काम करती हैं. उदाहरण के लिए, ये अपने-आप पूरा होने की सुविधा देती हैं. साथ ही, Apps Script अनुमति देने की प्रोसेस को अपने-आप मैनेज करती है. हालांकि, स्क्रिप्ट में इसका इस्तेमाल करने से पहले, आपको ऐडवांस सेवा चालू करनी होगी.
यह देखने के लिए कि Google के कौनसे एपीआई, ऐडवांस सेवाओं के तौर पर उपलब्ध हैं, रेफ़रंस में Google की ऐडवांस सेवाएं सेक्शन देखें. अगर आपको किसी ऐसे Google API का इस्तेमाल करना है जो ऐडवांस सेवा के तौर पर उपलब्ध नहीं है, तो उसे किसी अन्य बाहरी एपीआई की तरह कनेक्ट करें.
ऐडवांस सेवाएं या एचटीटीपी?
Google की हर ऐडवांस सेवा, Google के एक सार्वजनिक एपीआई से जुड़ी होती है.
Apps Script में, इन एपीआई को ऐडवांस सेवाओं के ज़रिए ऐक्सेस किया जा सकता है. इसके अलावा, UrlFetch
का इस्तेमाल करके, सीधे तौर पर एपीआई के अनुरोध किए जा सकते हैं.
अगर आपने ऐडवांस सेवा का इस्तेमाल किया है, तो Apps Script, अनुमति देने की प्रोसेस को मैनेज करता है. साथ ही, यह अपने-आप पूरा होने की सुविधा देता है. हालांकि, इसका इस्तेमाल करने से पहले आपको ऐडवांस सेवा चालू करनी होगी. इसके अलावा, कुछ ऐडवांस सेवाएं सिर्फ़ एपीआई में उपलब्ध सुविधाओं का सबसेट उपलब्ध कराती हैं.
अगर एपीआई को सीधे तौर पर ऐक्सेस करने के लिए UrlFetch
तरीके का इस्तेमाल किया जाता है, तो इसका मतलब है कि Google API को बाहरी एपीआई के तौर पर इस्तेमाल किया जा रहा है. इस तरीके से, एपीआई के सभी पहलुओं का इस्तेमाल किया जा सकता है. हालांकि, इसके लिए आपको एपीआई के लिए अनुमति देने की प्रोसेस खुद मैनेज करनी होगी. आपको ज़रूरी हेडर भी बनाने होंगे और एपीआई से मिले जवाबों को पार्स करना होगा.
आम तौर पर, जहां भी हो सके वहां ऐडवांस सेवा का इस्तेमाल करना सबसे आसान होता है. UrlFetch
तरीके का इस्तेमाल सिर्फ़ तब करें, जब ऐडवांस सेवा आपकी ज़रूरत के मुताबिक काम न करे.
ज़रूरी शर्तें
ऐडवांस सेवा का इस्तेमाल करने से पहले, आपको ये ज़रूरी शर्तें पूरी करनी होंगी:
- आपको अपने स्क्रिप्ट प्रोजेक्ट में, ऐडवांस सेवा चालू करनी होगी.
आपको यह पक्का करना होगा कि आपकी स्क्रिप्ट जिस Cloud Platform (GCP) प्रोजेक्ट का इस्तेमाल करती है उसमें ऐडवांस सेवा से जुड़ा एपीआई चालू हो.
अगर आपका स्क्रिप्ट प्रोजेक्ट, 8 अप्रैल, 2019 को या इसके बाद बनाया गया डिफ़ॉल्ट GCP प्रोजेक्ट इस्तेमाल करता है, तो ऐडवांस सेवा चालू करने और स्क्रिप्ट प्रोजेक्ट सेव करने के बाद, एपीआई अपने-आप चालू हो जाता है. अगर आपने पहले से ऐसा नहीं किया है, तो आपसे Google Cloud और Google API की सेवा की शर्तों को स्वीकार करने के लिए भी कहा जा सकता है.
अगर आपका स्क्रिप्ट प्रोजेक्ट, स्टैंडर्ड GCP प्रोजेक्ट या पुराने डिफ़ॉल्ट GCP प्रोजेक्ट का इस्तेमाल करता है, तो आपको GCP प्रोजेक्ट में, बेहतर सेवा से जुड़े एपीआई को मैन्युअल तरीके से चालू करना होगा. यह बदलाव करने के लिए, आपके पास GCP प्रोजेक्ट में बदलाव करने का ऐक्सेस होना चाहिए.
ज़्यादा जानकारी के लिए, Cloud Platform प्रोजेक्ट देखें.
ऐडवांस सेवाएं चालू करना
Google की ऐडवांस सेवा का इस्तेमाल करने के लिए, इन निर्देशों का पालन करें:
- Apps Script प्रोजेक्ट खोलें.
- बाईं ओर, एडिटर पर क्लिक करें.
- बाईं ओर, सेवाएं के बगल में मौजूद, सेवा जोड़ें पर क्लिक करें.
- Google की कोई ऐडवांस सेवा चुनें और जोड़ें पर क्लिक करें.
ऐडवांस सेवा चालू करने के बाद, यह ऑटोकंप्लीट में उपलब्ध होती है.
तरीके के सिग्नेचर कैसे तय किए जाते हैं
आम तौर पर, ऐडवांस सेवाओं में वही ऑब्जेक्ट, तरीके के नाम, और पैरामीटर इस्तेमाल किए जाते हैं जो उनसे जुड़े सार्वजनिक एपीआई में इस्तेमाल किए जाते हैं. हालांकि, Apps Script में इस्तेमाल करने के लिए, तरीके के सिग्नेचर का अनुवाद किया जाता है. स्क्रिप्ट एडिटर का ऑटोकंप्लीट फ़ंक्शन आम तौर पर, शुरू करने के लिए ज़रूरी जानकारी देता है. हालांकि, यहां दिए गए नियमों में बताया गया है कि Apps Script, सार्वजनिक Google API से किसी तरीके का सिग्नेचर कैसे जनरेट करता है.
Google API के अनुरोध, अलग-अलग तरह का डेटा स्वीकार कर सकते हैं. इसमें पाथ पैरामीटर, क्वेरी पैरामीटर, अनुरोध का मुख्य हिस्सा, और/या मीडिया अपलोड अटैचमेंट शामिल है. कुछ ऐडवांस सेवाएं, खास एचटीटीपी अनुरोध हेडर भी स्वीकार कर सकती हैं. उदाहरण के लिए, Calendar की ऐडवांस सेवा.
Google Apps Script में, इससे मिलते-जुलते तरीके के सिग्नेचर में ये आर्ग्युमेंट होते हैं:
- अनुरोध का मुख्य हिस्सा (आम तौर पर एक संसाधन), JavaScript ऑब्जेक्ट के तौर पर.
- पाथ या ज़रूरी पैरामीटर, अलग-अलग आर्ग्युमेंट के तौर पर.
- मीडिया अपलोड अटैचमेंट को
Blob
आर्ग्युमेंट के तौर पर इस्तेमाल करें. - वैकल्पिक पैरामीटर, JavaScript ऑब्जेक्ट मैपिंग पैरामीटर के नाम से वैल्यू के तौर पर.
- एचटीटीपी अनुरोध के हेडर, हेडर के नामों को हेडर की वैल्यू से मैप करने वाले JavaScript ऑब्जेक्ट के तौर पर.
अगर किसी तरीके में दी गई कैटगरी के कोई आइटम नहीं हैं, तो हस्ताक्षर के उस हिस्से को हटा दिया जाता है.
इसके कुछ खास अपवाद हैं, जिनके बारे में आपको पता होना चाहिए:
- मीडिया अपलोड करने की सुविधा देने वाले तरीकों के लिए,
uploadType
पैरामीटर अपने-आप सेट हो जाता है. - Google API में
delete
नाम वाले तरीकों को Apps Script मेंremove
नाम दिया गया है, क्योंकिdelete
JavaScript में रिज़र्व किया गया शब्द है. - अगर कोई ऐडवांस सेवा, एचटीटीपी अनुरोध हेडर स्वीकार करने के लिए कॉन्फ़िगर की गई है और आपने अनुरोध हेडर का JavaScript ऑब्जेक्ट सेट किया है, तो आपको वैकल्पिक पैरामीटर का JavaScript ऑब्जेक्ट भी सेट करना होगा. अगर वैकल्पिक पैरामीटर का इस्तेमाल नहीं किया जा रहा है, तो इसे खाली ऑब्जेक्ट पर सेट करें.
ऐडवांस सेवाओं के लिए सहायता
ऐडवांस सेवाएं, सिर्फ़ पतले रैपर होती हैं. इनसे Apps Script में Google API इस्तेमाल किए जा सकते हैं. इसलिए, इनका इस्तेमाल करते समय आने वाली किसी भी समस्या की वजह, आम तौर पर Apps Script नहीं, बल्कि एपीआई होता है.
अगर आपको किसी ऐडवांस सेवा का इस्तेमाल करते समय कोई समस्या आती है, तो आपको उस समस्या की शिकायत करनी चाहिए. इसके लिए, उस सेवा से जुड़े एपीआई के लिए सहायता से जुड़े निर्देशों का इस्तेमाल करें. सहायता से जुड़े इन निर्देशों के लिंक, Apps Script के रेफ़रंस सेक्शन में, बेहतर सेवा से जुड़ी हर गाइड में दिए गए हैं.