Class ScriptApp

ScriptApp

स्क्रिप्ट पब्लिश करने और ट्रिगर करने के विकल्पों को ऐक्सेस करना और उनमें बदलाव करना. इस क्लास के ज़रिए उपयोगकर्ता स्क्रिप्ट बना सकते हैं ट्रिगर करता है और स्क्रिप्ट को सेवा के रूप में प्रकाशित करने को कंट्रोल करता है.

प्रॉपर्टी

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

तरीके

तरीकारिटर्न टाइपसंक्षिप्त विवरण
deleteTrigger(trigger)voidयह ट्रिगर को हटा देता है, ताकि वह अब काम न करे.
getAuthorizationInfo(authMode)AuthorizationInfoइस नीति से एक ऑब्जेक्ट मिलता है, ताकि यह पता लगाया जा सके कि उपयोगकर्ता को इस स्क्रिप्ट को अनुमति देने की ज़रूरत है या नहीं या अन्य सेवाओं में लॉग इन किया जा सकता है. साथ ही, अनुमति देने वाले डायलॉग बॉक्स का यूआरएल दिया जा सकता है.
getIdentityToken()Stringइसके लिए, OpenID Connect आइडेंटिटी टोकन मिलता है प्रभावी उपयोगकर्ता, यदि openid दायरा दिया गया हो.
getInstallationSource()InstallationSourceएक enum मान देता है जो बताता है कि स्क्रिप्ट को मौजूदा उपयोगकर्ता (उदाहरण के लिए, क्या उपयोगकर्ता ने इसे व्यक्तिगत रूप से Chrome वेब से इंस्टॉल किया है या नहीं स्टोर में जाकर साइन इन किया जा सकता है या डोमेन एडमिन ने इसे सभी उपयोगकर्ताओं के लिए इंस्टॉल किया है या नहीं).
getOAuthToken()StringOAuth 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यह इंस्टॉल किए जा सकने वाले ऐसे ट्रिगर को बनाने की प्रोसेस शुरू करता है जो ट्रिगर होने पर, दिए गए फ़ंक्शन को कॉल करता है.

विस्तृत दस्तावेज़

deleteTrigger(trigger)

यह ट्रिगर को हटा देता है, ताकि वह अब काम न करे.

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

पैरामीटर

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

अनुमति देना

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

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

getAuthorizationInfo(authMode)

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

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

पैरामीटर

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

वापसी का टिकट

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


getIdentityToken()

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

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

var idToken = ScriptApp.getIdentityToken();
var body = idToken.split('.')[1];
var decoded = Utilities.newBlob(Utilities.base64Decode(body)).getDataAsString();
var payload = JSON.parse(decoded);
var profileId = payload.sub;
Logger.log('Profile ID: ' + profileId);
OpenID Connect के बारे में जानें लौटाए गए फ़ील्ड (दावों) की पूरी सूची के लिए दस्तावेज़.

वापसी का टिकट

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


getInstallationSource()

एक enum मान देता है जो बताता है कि स्क्रिप्ट को मौजूदा उपयोगकर्ता (उदाहरण के लिए, क्या उपयोगकर्ता ने इसे व्यक्तिगत रूप से Chrome वेब से इंस्टॉल किया है या नहीं स्टोर में जाकर साइन इन किया जा सकता है या डोमेन एडमिन ने इसे सभी उपयोगकर्ताओं के लिए इंस्टॉल किया है या नहीं).

वापसी का टिकट

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


getOAuthToken()

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

इस तरीके से मिले टोकन में सिर्फ़ वे दायरे शामिल होते हैं जिनकी स्क्रिप्ट को मौजूदा समय में ज़रूरत होती है. वे दायरे जिन्हें पहले अनुमति दी गई थी, लेकिन अब स्क्रिप्ट उनका इस्तेमाल नहीं करती वे इसमें शामिल नहीं हैं वापस मिला टोकन. अगर स्क्रिप्ट के साथ-साथ दूसरे 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.
var url = ScriptApp.getService().getUrl();

वापसी का टिकट

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


getUserTriggers(document)

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

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

पैरामीटर

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

वापसी का टिकट

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

अनुमति देना

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

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

getUserTriggers(form)

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

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

पैरामीटर

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

वापसी का टिकट

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

अनुमति देना

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

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

getUserTriggers(spreadsheet)

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

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

पैरामीटर

नामटाइपब्यौरा
spreadsheetSpreadsheetऐसी Google 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.
  var scriptUrl = 'https://script.google.com/macros/d/1234567890abcdefghijklmonpqrstuvwxyz';
  var urlSuffix = '/usercallback?state=';
  var 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();

पैरामीटर

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

वापसी का टिकट

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

अनुमति देना

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

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

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