बेहतर Google सेवाएं

Apps Script की बेहतर सेवाओं की मदद से, अनुभवी डेवलपर अपने एचटीटीपी इंटरफ़ेस के मुकाबले कम सेट-अप वाले कुछ सार्वजनिक Google API से कनेक्ट कर सकते हैं. बेहतर सेवाएं, उन Google API के चारों ओर मौजूद थिन रैपर होती हैं. ये, Apps Script की बिल्ट-इन सेवाओं की तरह ही काम करती हैं. उदाहरण के लिए, वे अपने-आप पूरा होने की सुविधा देती हैं और Apps Script, अनुमति देने के फ़्लो को अपने-आप मैनेज करती है. हालांकि, स्क्रिप्ट में सेवा का इस्तेमाल करने से पहले बेहतर सेवा चालू करना ज़रूरी है.

यह देखने के लिए कि बेहतर सेवाओं के तौर पर कौनसे Google API उपलब्ध हैं, रेफ़रंस में बेहतर Google सेवाएं सेक्शन देखें. अगर आपको किसी ऐसे Google API का इस्तेमाल करना है जो ऐडवांस सेवा के तौर पर उपलब्ध नहीं है, तो उसे किसी अन्य बाहरी एपीआई की तरह कनेक्ट करें.

बेहतर सेवाएं या एचटीटीपी?

Google की हर बेहतर सेवा, किसी सार्वजनिक Google API से जुड़ी होती है. Apps Script में, बेहतर सेवाओं के ज़रिए या सीधे UrlFetch का इस्तेमाल करके सीधे एपीआई अनुरोध करके, इन एपीआई को ऐक्सेस किया जा सकता है.

अगर सेवा के बेहतर तरीके का इस्तेमाल किया जाता है, तो Apps Script, अनुमति देने के फ़्लो को मैनेज करती है और अपने-आप पूरी होने वाली सहायता देती है. हालांकि, इसका इस्तेमाल करने से पहले आपको बेहतर सेवा चालू करनी होगी. इसके अलावा, कुछ बेहतर सेवाएं एपीआई में उपलब्ध फ़ंक्शन का सिर्फ़ एक सबसेट उपलब्ध कराती हैं.

अगर एपीआई को सीधे ऐक्सेस करने के लिए, UrlFetch तरीके का इस्तेमाल किया जाता है, तो इसका मतलब है कि Google API को बाहरी एपीआई माना जा रहा है. इस तरीके से, एपीआई के सभी एस्पेक्ट का इस्तेमाल किया जा सकता है. हालांकि, इसके लिए आपको एपीआई अनुमति को खुद ही मैनेज करना होगा. आपको ज़रूरी हेडर भी बनाने होंगे और एपीआई रिस्पॉन्स को पार्स करना होगा.

आम तौर पर, जहां मुमकिन हो वहां बेहतर सेवा का इस्तेमाल करना सबसे आसान होता है. साथ ही, UrlFetch वाले तरीके का इस्तेमाल सिर्फ़ तब करें, जब बेहतर सेवा आपकी ज़रूरत के मुताबिक न हो.

ज़रूरी शर्तें

किसी बेहतर सेवा का इस्तेमाल करने से पहले, आपको इन शर्तों को पूरा करना होगा:

  1. आपको अपने स्क्रिप्ट प्रोजेक्ट में, बेहतर सेवा चालू करनी होगी.
  2. आपको यह पक्का करना होगा कि बेहतर सेवा से जुड़ा एपीआई, आपकी स्क्रिप्ट में इस्तेमाल किए जाने वाले Cloud Platform (GCP) प्रोजेक्ट में चालू हो.

    अगर आपका स्क्रिप्ट प्रोजेक्ट 8 अप्रैल, 2019 को या उसके बाद बनाए गए डिफ़ॉल्ट GCP प्रोजेक्ट का इस्तेमाल करता है, तो बेहतर सेवा चालू करने और स्क्रिप्ट प्रोजेक्ट को सेव करने के बाद, यह एपीआई अपने-आप चालू हो जाएगा. अगर आपने अब तक ऐसा नहीं किया है, तो आपसे Google Cloud और Google API की सेवा की शर्तों को स्वीकार करने के लिए भी कहा जा सकता है.

    अगर आपका स्क्रिप्ट प्रोजेक्ट स्टैंडर्ड GCP प्रोजेक्ट या किसी पुराने डिफ़ॉल्ट GCP प्रोजेक्ट का इस्तेमाल करता है, तो आपको GCP प्रोजेक्ट में मैन्युअल तरीके से बेहतर सेवा से जुड़े एपीआई को चालू करना होगा. यह बदलाव करने के लिए, आपके पास GCP प्रोजेक्ट में बदलाव करने का ऐक्सेस होना चाहिए.

ज़्यादा जानकारी के लिए Cloud Platform प्रोजेक्ट देखें.

बेहतर सेवाएं चालू करें

Google की बेहतर सेवा का इस्तेमाल करने के लिए, इन निर्देशों का पालन करें:

  1. Apps Script प्रोजेक्ट खोलें.
  2. बाईं ओर, एडिटर पर क्लिक करें.
  3. बाईं ओर, सेवाएं के बगल में, सेवा जोड़ें पर क्लिक करें.
  4. Google की कोई बेहतर सेवा चुनें और जोड़ें पर क्लिक करें.

बेहतर सेवा चालू करने के बाद, यह ऑटोकंप्लीट सुविधा में उपलब्ध हो जाती है.

तरीके के हस्ताक्षर कैसे तय किए जाते हैं

बेहतर सेवाएं आम तौर पर, सार्वजनिक एपीआई के लिए ही ऑब्जेक्ट, तरीके के नाम, और पैरामीटर इस्तेमाल करती हैं. हालांकि, Apps Script में इस्तेमाल करने के लिए, मेथड सिग्नेचर का अनुवाद किया जाता है. स्क्रिप्ट एडिटर का अपने-आप पूरा होने वाला फ़ंक्शन आम तौर पर, शुरू करने के लिए ज़रूरी जानकारी देता है. हालांकि, नीचे दिए गए नियमों में बताया गया है कि Apps Script, किसी सार्वजनिक Google API से मेथड सिग्नेचर कैसे जनरेट करती है.

Google API के लिए अनुरोध में कई तरह का डेटा स्वीकार किया जा सकता है, जिसमें पाथ पैरामीटर, क्वेरी पैरामीटर, अनुरोध का मुख्य हिस्सा, और/या मीडिया अपलोड वाला अटैचमेंट शामिल है. कुछ बेहतर सेवाएं भी चुनिंदा एचटीटीपी अनुरोध हेडर स्वीकार कर सकती हैं. उदाहरण के लिए, कैलेंडर की बेहतर सेवा.

Google Apps स्क्रिप्ट में संबंधित विधि हस्ताक्षर में नीचे दिए गए तर्क होते हैं:

  1. अनुरोध का मुख्य हिस्सा (आम तौर पर, एक संसाधन होता है). इसे JavaScript ऑब्जेक्ट के तौर पर इस्तेमाल किया जाता है.
  2. अलग-अलग आर्ग्युमेंट के तौर पर, पाथ या ज़रूरी पैरामीटर.
  3. Blob तर्क के तौर पर, मीडिया अपलोड अटैचमेंट.
  4. वैकल्पिक पैरामीटर, जैसे कि JavaScript ऑब्जेक्ट मैपिंग पैरामीटर के नाम से वैल्यू को मैप करना.
  5. एचटीटीपी अनुरोध के हेडर, जिन्हें JavaScript ऑब्जेक्ट मैपिंग हेडर नामों के तौर पर हेडर वैल्यू के हिसाब से मैप किया जाता है.

अगर दी गई कैटगरी में, तरीके में कोई आइटम नहीं है, तो हस्ताक्षर का वह हिस्सा हटा दिया जाता है.

यहां कुछ खास अपवाद हैं, जिनके बारे में आपको जानकारी होनी चाहिए:

  • मीडिया अपलोड स्वीकार करने वाले तरीकों के लिए, uploadType पैरामीटर अपने-आप सेट हो जाता है.
  • Google API में delete नाम वाले तरीकों को Apps स्क्रिप्ट में remove नाम दिया गया है, क्योंकि delete JavaScript में रिज़र्व किया गया शब्द है.
  • अगर किसी बेहतर सेवा को एचटीटीपी अनुरोध के हेडर स्वीकार करने के लिए कॉन्फ़िगर किया जाता है और अनुरोध हेडर JavaScript ऑब्जेक्ट को सेट किया जाता है, तो आपको वैकल्पिक पैरामीटर JavaScript ऑब्जेक्ट को भी सेट करना होगा. अगर वैकल्पिक पैरामीटर इस्तेमाल नहीं किया जा रहा है, तो JavaScript ऑब्जेक्ट को खाली ऑब्जेक्ट पर सेट करना होगा.

बेहतर सेवाओं के लिए सहायता

बेहतर सेवाएं सिर्फ़ थिन रैपर होती हैं, जिनकी मदद से Apps Script में Google API का इस्तेमाल किया जा सकता है. इसलिए, इनका इस्तेमाल करते समय आने वाली किसी भी समस्या की वजह से आम तौर पर एपीआई में समस्या होती है, न कि Apps Script में.

अगर किसी बेहतर सेवा का इस्तेमाल करते समय आपको कोई समस्या आती है, तो एपीआई के सहायता निर्देशों का इस्तेमाल करके इसकी शिकायत की जानी चाहिए. इन सहायता निर्देशों के लिंक, हर बेहतर सेवा गाइड में Apps Script रेफ़रंस सेक्शन में दिए गए हैं.