बेहतर 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) प्रोजेक्ट में बेहतर सेवा से जुड़ा एपीआई चालू हो.

    अगर आपका स्क्रिप्ट प्रोजेक्ट किसी ऐसे डिफ़ॉल्ट GCP प्रोजेक्ट का इस्तेमाल करता है जो 8 अप्रैल, 2019 को या उसके बाद बनाया गया था, तो बेहतर सेवा चालू करने और स्क्रिप्ट प्रोजेक्ट को सेव करने के बाद एपीआई अपने-आप चालू हो जाता है. अगर आपने अब तक ऐसा नहीं किया है, तो आपसे 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 के लिए किए गए अनुरोधों में कई तरह का डेटा स्वीकार किया जा सकता है. इसमें पाथ पैरामीटर, क्वेरी पैरामीटर, अनुरोध का मुख्य हिस्सा, और/या मीडिया अपलोड करने से जुड़ा अटैचमेंट शामिल है. कुछ बेहतर सेवाएं खास एचटीटीपी अनुरोध के हेडर भी स्वीकार कर सकती हैं (उदाहरण के लिए, Calendar की बेहतर सेवा).

Google Apps Script में संबंधित तरीके के हस्ताक्षर में ये तर्क दिए गए हैं:

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

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

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

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

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

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

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