Class ScriptApp

ScriptApp

स्क्रिप्ट पब्लिश करने और ट्रिगर को ऐक्सेस और उनमें बदलाव करने की अनुमति देता है. इस क्लास की मदद से उपयोगकर्ता, स्क्रिप्ट ट्रिगर बना सकते हैं. साथ ही, स्क्रिप्ट को सेवा के तौर पर पब्लिश करने की सुविधा को कंट्रोल कर सकते हैं.

प्रॉपर्टी

प्रॉपर्टीटाइपब्यौरा
AuthModeAuthModeयह एक गिनती है. इससे यह पता चलता है कि Apps Script, ट्रिगर किए गए फ़ंक्शन के ज़रिए किन कैटगरी की सेवाओं को लागू कर सकता है.
AuthorizationStatusAuthorizationStatusयह एक गिनती है, जो स्क्रिप्ट की अनुमति की स्थिति के बारे में बताती है.
EventTypeEventTypeयह एक गिनती है, जो ट्रिगर किए गए इवेंट के टाइप के बारे में बताती है.
InstallationSourceInstallationSourceयह एक गिनती है, जिससे पता चलता है कि स्क्रिप्ट को उपयोगकर्ता के लिए ऐड-ऑन के तौर पर कैसे इंस्टॉल किया गया था.
TriggerSourceTriggerSourceयह एक गिनती है, जिससे उस इवेंट के सोर्स का पता चलता है जिसकी वजह से ट्रिगर चालू हुआ.
WeekDayWeekdayयह हफ़्ते के दिनों को दिखाने वाला एक इन्यूमरेशन है.

तरीके

तरीकारिटर्न टाइपसंक्षिप्त विवरण
deleteTrigger(trigger)voidयह फ़ंक्शन, दिए गए ट्रिगर को हटा देता है, ताकि वह अब न चले.
getAuthorizationInfo(authMode)AuthorizationInfoयह एक ऐसा ऑब्जेक्ट देता है जो यह जांच करता है कि उपयोगकर्ता ने स्क्रिप्ट की सभी ज़रूरी शर्तों के लिए अनुमति दी है या नहीं.
getAuthorizationInfo(authMode, oAuthScopes)AuthorizationInfoयह एक ऐसा ऑब्जेक्ट देता है जो यह जांच करता है कि उपयोगकर्ता ने अनुरोध किए गए स्कोप के लिए अनुमति दी है या नहीं.
getIdentityToken()Stringअगर openid स्कोप की अनुमति दी गई है, तो यह असरदार उपयोगकर्ता के लिए OpenID Connect आइडेंटिटी टोकन पाता है.
getInstallationSource()InstallationSourceयह फ़ंक्शन, enum वैल्यू दिखाता है. इससे पता चलता है कि स्क्रिप्ट को मौजूदा उपयोगकर्ता के लिए ऐड-ऑन के तौर पर कैसे इंस्टॉल किया गया था. उदाहरण के लिए, उपयोगकर्ता ने इसे Chrome Web Store से खुद इंस्टॉल किया था या डोमेन एडमिन ने इसे सभी उपयोगकर्ताओं के लिए इंस्टॉल किया था.
getOAuthToken()Stringयह फ़ंक्शन, असली उपयोगकर्ता के लिए OAuth 2.0 ऐक्सेस टोकन को वापस लाता है.
getProjectTriggers()Trigger[]यह मौजूदा प्रोजेक्ट और मौजूदा उपयोगकर्ता से जुड़े सभी इंस्टॉल किए जा सकने वाले ट्रिगर को दिखाता है.
getScriptId()Stringस्क्रिप्ट प्रोजेक्ट का यूनीक आईडी मिलता है.
getService()Serviceयह स्क्रिप्ट को वेब ऐप्लिकेशन के तौर पर पब्लिश करने की सुविधा को कंट्रोल करने के लिए इस्तेमाल किया जाने वाला ऑब्जेक्ट देता है.
getUserTriggers(document)Trigger[]यह फ़ंक्शन, दिए गए दस्तावेज़ में इस उपयोगकर्ता के मालिकाना हक वाले सभी इंस्टॉल किए जा सकने वाले ट्रिगर को सिर्फ़ इस स्क्रिप्ट या ऐड-ऑन के लिए पाता है.
getUserTriggers(form)Trigger[]यह फ़ंक्शन, इस स्क्रिप्ट या ऐड-ऑन के लिए, दिए गए फ़ॉर्म में इस उपयोगकर्ता के मालिकाना हक वाले सभी इंस्टॉल किए जा सकने वाले ट्रिगर को दिखाता है.
getUserTriggers(spreadsheet)Trigger[]यह फ़ंक्शन, दी गई स्प्रेडशीट में इस उपयोगकर्ता के मालिकाना हक वाले सभी इंस्टॉल किए जा सकने वाले ट्रिगर को सिर्फ़ इस स्क्रिप्ट या ऐड-ऑन के लिए पाता है.
invalidateAuth()voidयह फ़ंक्शन, उस उपयोगकर्ता के लिए अनुमति रद्द करता है जिसके पास मौजूदा स्क्रिप्ट को चलाने की अनुमति है.
newStateToken()StateTokenBuilderयह एक ऐसे स्टेट टोकन के लिए बिल्डर बनाता है जिसका इस्तेमाल, कॉलबैक एपीआई (जैसे कि OAuth फ़्लो) में किया जा सकता है.
newTrigger(functionName)TriggerBuilderइस तरीके से, इंस्टॉल किया जा सकने वाला ट्रिगर बनाने की प्रोसेस शुरू की जाती है. ट्रिगर चालू होने पर, यह दिए गए फ़ंक्शन को कॉल करता है.
requireAllScopes(authMode)voidइस कुकी से यह पुष्टि की जाती है कि उपयोगकर्ता ने स्क्रिप्ट के लिए अनुरोध किए गए सभी स्कोप के लिए सहमति दी है या नहीं.
requireScopes(authMode, oAuthScopes)voidइस कुकी से यह पुष्टि की जाती है कि उपयोगकर्ता ने अनुरोध किए गए स्कोप के लिए सहमति दी है या नहीं.

ज़्यादा जानकारी वाला दस्तावेज़

deleteTrigger(trigger)

यह फ़ंक्शन, दिए गए ट्रिगर को हटा देता है, ताकि वह अब न चले.

// Deletes all triggers in the current project. const triggers = ScriptApp.getProjectTriggers(); for (let i = 0; i < triggers.length; i++) {   ScriptApp.deleteTrigger(triggers[i]); }

पैरामीटर

नामटाइपब्यौरा
triggerTriggerमिटाने के लिए ट्रिगर.

अनुमति देना

इस तरीके का इस्तेमाल करने वाली स्क्रिप्ट के लिए, इनमें से एक या उससे ज़्यादा स्कोप के साथ अनुमति लेना ज़रूरी है:

  • https://www.googleapis.com/auth/script.scriptapp

getAuthorizationInfo(authMode)

यह एक ऐसा ऑब्जेक्ट देता है जो यह जांच करता है कि उपयोगकर्ता ने स्क्रिप्ट की सभी ज़रूरी शर्तों के लिए अनुमति दी है या नहीं. अगर स्क्रिप्ट की किसी ज़रूरत के लिए अनुमति नहीं दी गई है, तो यह ऑब्जेक्ट उपयोगकर्ताओं को अनुमति देने के लिए, अनुमति देने वाला यूआरएल भी उपलब्ध कराता है.

कुछ स्क्रिप्ट को चलाने के लिए, उपयोगकर्ता की सहमति की ज़रूरत नहीं होती. हालांकि, ऐसा तब होता है, जब स्क्रिप्ट इस्तेमाल किए जाने वाले सभी ज़रूरी स्कोप के लिए उपयोगकर्ता की सहमति पहले ही मिल चुकी हो. इस ऑब्जेक्ट में मौजूद जानकारी की मदद से, कोड के उन सेक्शन का ऐक्सेस कंट्रोल किया जा सकता है जिनके लिए कुछ स्कोप की ज़रूरत होती है. साथ ही, बाद में कोड को चलाने के लिए उन स्कोप की अनुमति का अनुरोध किया जा सकता है.

const authInfo = ScriptApp.getAuthorizationInfo(ScriptApp.AuthMode.FULL); const status = authInfo.getAuthorizationStatus(); const url = authInfo.getAuthorizationUrl();

पैरामीटर

नामटाइपब्यौरा
authModeAuthModeअनुमति का वह मोड जिसके लिए अनुमति की जानकारी का अनुरोध किया गया है. ज़्यादातर मामलों में, authMode की वैल्यू ScriptApp.getAuthorizationInfo(ScriptApp.AuthMode.FULL) होनी चाहिए, क्योंकि अनुमति के किसी अन्य मोड के लिए, उपयोगकर्ताओं को अनुमति देने की ज़रूरत नहीं होती.

वापसी का टिकट

AuthorizationInfo — यह एक ऐसा ऑब्जेक्ट है जो उपयोगकर्ता की अनुमति की स्थिति के बारे में जानकारी दे सकता है.


getAuthorizationInfo(authMode, oAuthScopes)

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

कुछ स्क्रिप्ट को चलाने के लिए, उपयोगकर्ता की सहमति की ज़रूरत नहीं होती. हालांकि, ऐसा तब होता है, जब स्क्रिप्ट इस्तेमाल किए जाने वाले सभी ज़रूरी स्कोप के लिए उपयोगकर्ता की सहमति पहले ही मिल चुकी हो. इस ऑब्जेक्ट में मौजूद जानकारी की मदद से, कोड के उन सेक्शन का ऐक्सेस कंट्रोल किया जा सकता है जिनके लिए कुछ स्कोप की ज़रूरत होती है. साथ ही, बाद में कोड को चलाने के लिए उन स्कोप की अनुमति का अनुरोध किया जा सकता है. ऐसे स्कोप जो अमान्य हैं या स्क्रिप्ट के लिए ज़रूरी नहीं हैं, उनसे गड़बड़ी होती है.

const authInfo = ScriptApp.getAuthorizationInfo(ScriptApp.AuthMode.FULL, [   'https://www.googleapis.com/auth/documents',   'https://www.googleapis.com/auth/presentations', ]); const status = authInfo.getAuthorizationStatus(); const url = authInfo.getAuthorizationUrl();

पैरामीटर

नामटाइपब्यौरा
authModeAuthModeअनुमति देने का वह तरीका जिसके लिए अनुमति देने से जुड़ी जानकारी का अनुरोध किया गया है. ज़्यादातर मामलों में, authMode के लिए वैल्यू ScriptApp.AuthMode.FULL होनी चाहिए, क्योंकि अनुमति देने के किसी अन्य तरीके के लिए, उपयोगकर्ताओं को अनुमति देने की ज़रूरत नहीं होती.
oAuthScopesString[]OAuth के वे स्कोप जिनके लिए अनुमति से जुड़ी जानकारी का अनुरोध किया गया है.

वापसी का टिकट

AuthorizationInfo — यह एक ऐसा ऑब्जेक्ट है जो उपयोगकर्ता की पुष्टि की स्थिति के बारे में जानकारी देता है. साथ ही, अगर कुछ सहमतियां मौजूद नहीं हैं, तो पुष्टि करने वाले यूआरएल के बारे में भी जानकारी देता है.


getIdentityToken()

अगर openid स्कोप की अनुमति दी गई है, तो यह असरदार उपयोगकर्ता के लिए OpenID Connect आइडेंटिटी टोकन पाता है. यह स्कोप डिफ़ॉल्ट रूप से शामिल नहीं होता है. इसे पाने का अनुरोध करने के लिए, आपको इसे मेनिफ़ेस्ट फ़ाइल में एक्सप्लिसिट स्कोप के तौर पर जोड़ना होगा. टोकन में उपयोगकर्ता की ज़्यादा जानकारी पाने के लिए, https://www.googleapis.com/auth/userinfo.email या https://www.googleapis.com/auth/userinfo.profile स्कोप शामिल करें.

लौटाया गया आईडी टोकन, कोड में बदला गया JSON वेब टोकन (JWT) होता है. इससे जानकारी निकालने के लिए, इसे डिकोड करना ज़रूरी है. नीचे दिए गए उदाहरणों में, टोकन को डिकोड करने और उपयोगकर्ता की Google प्रोफ़ाइल का आईडी निकालने का तरीका बताया गया है.

const idToken = ScriptApp.getIdentityToken(); const body = idToken.split('.')[1]; const decoded = Utilities                     .newBlob(                         Utilities.base64Decode(body),                         )                     .getDataAsString(); const payload = JSON.parse(decoded);  Logger.log(`Profile ID: ${payload.sub}`);
जवाब में मिले फ़ील्ड (दावे) की पूरी सूची देखने के लिए, OpenID Connect का दस्तावेज़ देखें.

वापसी का टिकट

String — अगर आइडेंटिटी टोकन उपलब्ध है, तो यह आइडेंटिटी टोकन होता है. अगर उपलब्ध नहीं है, तो यह null होता है.


getInstallationSource()

यह फ़ंक्शन, enum वैल्यू दिखाता है. इससे पता चलता है कि स्क्रिप्ट को मौजूदा उपयोगकर्ता के लिए ऐड-ऑन के तौर पर कैसे इंस्टॉल किया गया था. उदाहरण के लिए, उपयोगकर्ता ने इसे Chrome Web Store से खुद इंस्टॉल किया था या डोमेन एडमिन ने इसे सभी उपयोगकर्ताओं के लिए इंस्टॉल किया था.

वापसी का टिकट

InstallationSource — इंस्टॉल करने का सोर्स.


getOAuthToken()

यह फ़ंक्शन, असली उपयोगकर्ता के लिए OAuth 2.0 ऐक्सेस टोकन को वापस लाता है. अगर स्क्रिप्ट के OAuth स्कोप, किसी अन्य Google API को अनुमति देने के लिए काफ़ी हैं, तो स्क्रिप्ट इस टोकन को पास करके, अनुमति देने के दूसरे प्रॉम्प्ट को अनदेखा कर सकती हैं. आम तौर पर, इस तरह के Google API के लिए, अनुमति देने की अपनी प्रोसेस (जैसे, Google Picker) की ज़रूरत होती है. टोकन की समयसीमा कुछ समय बाद खत्म हो जाती है (कम से कम कुछ मिनट). स्क्रिप्ट को अनुमति न मिलने की स्थितियों को मैनेज करना चाहिए. साथ ही, ज़रूरत पड़ने पर नया टोकन पाने के लिए, इस तरीके को कॉल करना चाहिए.

इस तरीके से मिले टोकन में सिर्फ़ वे स्कोप शामिल होते हैं जिनकी स्क्रिप्ट को फ़िलहाल ज़रूरत है. जिन स्कोप को पहले अनुमति दी गई थी, लेकिन अब स्क्रिप्ट उनका इस्तेमाल नहीं करती है उन्हें दिखाए गए टोकन में शामिल नहीं किया जाता. अगर स्क्रिप्ट को खुद के लिए ज़रूरी OAuth स्कोप के अलावा, अन्य OAuth स्कोप की भी ज़रूरत है, तो उन्हें स्क्रिप्ट की मेनिफ़ेस्ट फ़ाइल में बताया जा सकता है.

वापसी का टिकट

String — OAuth 2.0 टोकन का स्ट्रिंग फ़ॉर्मैट.


getProjectTriggers()

यह मौजूदा प्रोजेक्ट और मौजूदा उपयोगकर्ता से जुड़े सभी इंस्टॉल किए जा सकने वाले ट्रिगर को दिखाता है.

Logger.log(     `Current project has ${ScriptApp.getProjectTriggers().length} triggers.`, );

वापसी का टिकट

Trigger[] — इस प्रोजेक्ट से जुड़े मौजूदा उपयोगकर्ता के ट्रिगर की एक कैटगरी.

अनुमति देना

इस तरीके का इस्तेमाल करने वाली स्क्रिप्ट के लिए, इनमें से एक या उससे ज़्यादा स्कोप के साथ अनुमति लेना ज़रूरी है:

  • https://www.googleapis.com/auth/script.scriptapp

getScriptId()

स्क्रिप्ट प्रोजेक्ट का यूनीक आईडी मिलता है. स्क्रिप्ट प्रोजेक्ट के लिए यूनीक आइडेंटिफ़ायर पाने का यह सबसे सही तरीका है. getProjectKey() के बजाय इसका इस्तेमाल करें. इस आईडी का इस्तेमाल उन सभी जगहों पर किया जा सकता है जहां पहले प्रोजेक्ट की कुंजी दी गई थी.

वापसी का टिकट

String — स्क्रिप्ट प्रोजेक्ट का आईडी.


getService()

यह स्क्रिप्ट को वेब ऐप्लिकेशन के तौर पर पब्लिश करने की सुविधा को कंट्रोल करने के लिए इस्तेमाल किया जाने वाला ऑब्जेक्ट देता है.

// Get the URL of the published web app. const url = ScriptApp.getService().getUrl();

वापसी का टिकट

Service — यह एक ऑब्जेक्ट है. इसका इस्तेमाल, स्क्रिप्ट को वेब ऐप्लिकेशन के तौर पर पब्लिश करने की प्रोसेस को मॉनिटर करने और कंट्रोल करने के लिए किया जाता है.


getUserTriggers(document)

यह फ़ंक्शन, दिए गए दस्तावेज़ में इस उपयोगकर्ता के मालिकाना हक वाले सभी इंस्टॉल किए जा सकने वाले ट्रिगर को सिर्फ़ इस स्क्रिप्ट या ऐड-ऑन के लिए पाता है. इस तरीके का इस्तेमाल, अन्य स्क्रिप्ट से जुड़े ट्रिगर देखने के लिए नहीं किया जा सकता.

const doc = DocumentApp.getActiveDocument(); const triggers = ScriptApp.getUserTriggers(doc); // Log the handler function for the first trigger in the array. Logger.log(triggers[0].getHandlerFunction());

पैरामीटर

नामटाइपब्यौरा
documentDocumentGoogle Docs की ऐसी फ़ाइल जिसमें इंस्टॉल किए जा सकने वाले ट्रिगर शामिल हो सकते हैं.

वापसी का टिकट

Trigger[] — इस उपयोगकर्ता के मालिकाना हक वाले ट्रिगर का एक कलेक्शन, जो दिए गए दस्तावेज़ में मौजूद हैं.

अनुमति देना

इस तरीके का इस्तेमाल करने वाली स्क्रिप्ट के लिए, इनमें से एक या उससे ज़्यादा स्कोप के साथ अनुमति लेना ज़रूरी है:

  • https://www.googleapis.com/auth/script.scriptapp

getUserTriggers(form)

यह फ़ंक्शन, इस स्क्रिप्ट या ऐड-ऑन के लिए, दिए गए फ़ॉर्म में इस उपयोगकर्ता के मालिकाना हक वाले सभी इंस्टॉल किए जा सकने वाले ट्रिगर को दिखाता है. इस तरीके का इस्तेमाल, अन्य स्क्रिप्ट से जुड़े ट्रिगर देखने के लिए नहीं किया जा सकता.

const form = FormApp.getActiveForm(); const triggers = ScriptApp.getUserTriggers(form); // Log the trigger source for the first trigger in the array. Logger.log(triggers[0].getTriggerSource());

पैरामीटर

नामटाइपब्यौरा
formFormGoogle Forms की ऐसी फ़ाइल जिसमें इंस्टॉल किए जा सकने वाले ट्रिगर शामिल हो सकते हैं.

वापसी का टिकट

Trigger[] — इस उपयोगकर्ता के मालिकाना हक वाले ट्रिगर की एक ऐसी सूची जो दिए गए फ़ॉर्म में मौजूद है.

अनुमति देना

इस तरीके का इस्तेमाल करने वाली स्क्रिप्ट के लिए, इनमें से एक या उससे ज़्यादा स्कोप के साथ अनुमति लेना ज़रूरी है:

  • https://www.googleapis.com/auth/script.scriptapp

getUserTriggers(spreadsheet)

यह फ़ंक्शन, दी गई स्प्रेडशीट में इस उपयोगकर्ता के मालिकाना हक वाले सभी इंस्टॉल किए जा सकने वाले ट्रिगर को सिर्फ़ इस स्क्रिप्ट या ऐड-ऑन के लिए पाता है. इस तरीके का इस्तेमाल, अन्य स्क्रिप्ट से जुड़े ट्रिगर देखने के लिए नहीं किया जा सकता.

const ss = SpreadsheetApp.getActiveSpreadsheet(); const triggers = ScriptApp.getUserTriggers(ss); // Log the event type for the first trigger in the array. Logger.log(triggers[0].getEventType());

पैरामीटर

नामटाइपब्यौरा
spreadsheetSpreadsheetGoogle Sheets की ऐसी फ़ाइल जिसमें इंस्टॉल किए जा सकने वाले ट्रिगर शामिल हो सकते हैं.

वापसी का टिकट

Trigger[] — यह एक ट्रिगर ऐरे है. इसमें दी गई स्प्रैडशीट में इस उपयोगकर्ता के मालिकाना हक वाले ट्रिगर शामिल होते हैं.

अनुमति देना

इस तरीके का इस्तेमाल करने वाली स्क्रिप्ट के लिए, इनमें से एक या उससे ज़्यादा स्कोप के साथ अनुमति लेना ज़रूरी है:

  • https://www.googleapis.com/auth/script.scriptapp

invalidateAuth()

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

ScriptApp.invalidateAuth();

थ्रो

Error — जब अमान्य करने की प्रोसेस पूरी नहीं होती है


newStateToken()

यह एक ऐसे स्टेट टोकन के लिए बिल्डर बनाता है जिसका इस्तेमाल, कॉलबैक एपीआई (जैसे कि OAuth फ़्लो) में किया जा सकता है.

// Generate a callback URL, given the name of a callback function. The script // does not need to be published as a web app; the /usercallback URL suffix // replaces /edit in any script's URL. function getCallbackURL(callbackFunction) {   // IMPORTANT: Replace string below with the URL from your script, minus the   // /edit at the end.   const scriptUrl =       'https://script.google.com/macros/d/1234567890abcdefghijklmonpqrstuvwxyz';   const urlSuffix = '/usercallback?state=';   const stateToken = ScriptApp.newStateToken()                          .withMethod(callbackFunction)                          .withTimeout(120)                          .createToken();   return scriptUrl + urlSuffix + stateToken; }

ज़्यादातर OAuth2 फ़्लो में, state टोकन को सीधे तौर पर ऑथराइज़ेशन एंडपॉइंट पर भेजा जाता है. इसे कॉलबैक यूआरएल के हिस्से के तौर पर नहीं भेजा जाता. इसके बाद, ऑथराइज़ेशन एंडपॉइंट इसे कॉलबैक यूआरएल के हिस्से के तौर पर भेजता है.

उदाहरण के लिए:

  • यह स्क्रिप्ट, उपयोगकर्ता को OAuth2 के अनुमति देने वाले यूआरएल पर रीडायरेक्ट करती है: https://accounts.google.com/o/oauth2/auth?state=token_generated_with_this_method&callback_uri=https://script.google.com/macros/d/1234567890abcdefghijklmonpqrstuvwxyz/usercallback&other_oauth2_parameters
  • उपयोगकर्ता 'अनुमति दें' पर क्लिक करता है. इसके बाद, OAuth2 अनुमति देने वाला पेज, उपयोगकर्ता को वापस https://script.google.com/macros/d/1234567890abcdefghijklmonpqrstuvwxyz/usercallback?state=token_generated_with_this_method&other_params_that_include_tokens_or_grants पर रीडायरेक्ट कर देता है
  • ऊपर दिए गए रीडायरेक्ट (http://script.google.com/... पर वापस जाएं) की वजह से, ब्राउज़र का अनुरोध /usercallback पर रीडायरेक्ट हो जाता है. इससे StateTokenBuilder.withMethod(method) में बताया गया तरीका लागू होता है.

वापसी का टिकट

StateTokenBuilder — यह एक ऑब्जेक्ट है. इसका इस्तेमाल, स्टेट-टोकन बनाने की प्रोसेस को जारी रखने के लिए किया जाता है.


newTrigger(functionName)

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

// Creates an edit trigger for a spreadsheet identified by ID. ScriptApp.newTrigger('myFunction')     .forSpreadsheet('1234567890abcdefghijklmnopqrstuvwxyz_a1b2c3')     .onEdit()     .create();

ट्रिगर बनाने से पहले, पुष्टि करें कि उससे जुड़े फ़ंक्शन के पास सभी ज़रूरी OAuth अनुमतियां हैं

पैरामीटर

नामटाइपब्यौरा
functionNameStringट्रिगर चालू होने पर कॉल करने के लिए फ़ंक्शन. शामिल की गई लाइब्रेरी के फ़ंक्शन इस्तेमाल किए जा सकते हैं. जैसे, Library.libFunction1.

वापसी का टिकट

TriggerBuilder — यह एक ऑब्जेक्ट है. इसका इस्तेमाल, ट्रिगर बनाने की प्रोसेस को जारी रखने के लिए किया जाता है.

अनुमति देना

इस तरीके का इस्तेमाल करने वाली स्क्रिप्ट के लिए, इनमें से एक या उससे ज़्यादा स्कोप के साथ अनुमति लेना ज़रूरी है:

  • https://www.googleapis.com/auth/script.scriptapp

requireAllScopes(authMode)

इस कुकी से यह पुष्टि की जाती है कि उपयोगकर्ता ने स्क्रिप्ट के लिए अनुरोध किए गए सभी स्कोप के लिए सहमति दी है या नहीं. अगर स्क्रिप्ट के अनुरोध किए गए सभी स्कोप पर कोई एक्ज़ीक्यूशन फ़्लो निर्भर करता है, तो इस तरीके का इस्तेमाल करें. अगर कोई सहमति मौजूद नहीं है, तो यह तरीका मौजूदा प्रोसेस को खत्म कर देता है. साथ ही, सहमति न मिलने पर अनुमति का अनुरोध करने के लिए प्रॉम्प्ट दिखाता है.

यह तरीका सिर्फ़ तब काम करता है, जब उपयोगकर्ता स्क्रिप्ट को ऐसे प्लैटफ़ॉर्म से चलाते हैं जो सहमति के लिए ज़्यादा कंट्रोल देता है. उदाहरण के लिए, Apps Script IDE से. अगर स्क्रिप्ट को ऐसे प्लैटफ़ॉर्म पर चलाया जाता है जिस पर सहमति नहीं दी गई है, जैसे कि Google Workspace ऐड-ऑन, तो स्क्रिप्ट को चलाने से पहले अनुमति का अनुरोध करने वाला प्रॉम्प्ट दिखता है. इससे सभी स्कोप के लिए अनुरोध किया जा सकता है.

ScriptApp.requireAllScopes(ScriptApp.AuthMode.FULL);

पैरामीटर

नामटाइपब्यौरा
authModeAuthModeअनुमति देने का वह मोड जिसके लिए स्क्रिप्ट के स्कोप का आकलन करना है. ज़्यादातर मामलों में, authMode की वैल्यू ScriptApp.AuthMode.FULL होनी चाहिए, क्योंकि अनुमति देने के किसी अन्य मोड के लिए, उपयोगकर्ताओं को अनुमति देने की ज़रूरत नहीं होती है.

requireScopes(authMode, oAuthScopes)

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

यह तरीका सिर्फ़ तब काम करता है, जब उपयोगकर्ता स्क्रिप्ट को ऐसे प्लैटफ़ॉर्म से चलाते हैं जो सहमति के लिए ज़्यादा कंट्रोल देता है. उदाहरण के लिए, Apps Script IDE से. अगर स्क्रिप्ट को ऐसे प्लैटफ़ॉर्म पर चलाया जाता है जिस पर सहमति नहीं दी गई है, जैसे कि Google Workspace ऐड-ऑन, तो स्क्रिप्ट को चलाने से पहले अनुमति का अनुरोध करने वाला प्रॉम्प्ट दिखता है. इससे सभी स्कोप के लिए अनुरोध किया जा सकता है.

ScriptApp.requireScopes(ScriptApp.AuthMode.FULL, [   'https://www.googleapis.com/auth/documents',   'https://www.googleapis.com/auth/presentations', ]);

पैरामीटर

नामटाइपब्यौरा
authModeAuthModeअनुमति देने का वह मोड जिसके लिए अनुरोध किए गए स्कोप का आकलन करना है. ज़्यादातर मामलों में, authMode की वैल्यू ScriptApp.AuthMode.FULL होनी चाहिए. ऐसा इसलिए, क्योंकि अनुमति देने के किसी अन्य मोड के लिए, उपयोगकर्ताओं को अनुमति देने की ज़रूरत नहीं होती.
oAuthScopesString[]OAuth के वे स्कोप जिनकी ज़रूरत, दिए गए एक्ज़ीक्यूशन फ़्लो को पूरा करने के लिए होती है.

ऐसे तरीके जो अब इस्तेमाल में नहीं हैं