Apps Script फ़ंक्शन को लागू करना

Apps Script API (इसे पहले Apps Script Execution API कहा जाता था) की मदद से, किसी ऐसे स्क्रिप्ट प्रोजेक्ट में रिमोट तरीके से फ़ंक्शन एक्ज़ीक्यूट किया जा सकता है जिसका ऐक्सेस आपके पास है. आपका ऐप्लिकेशन दिए गए Apps Script फ़ंक्शन को कॉल कर सकता है, ताकि ज़रूरत पड़ने पर इसे इनपुट पैरामीटर दिया जा सके और रिस्पॉन्स मिल सके.

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

इन उदाहरणों में, प्लेसहोल्डर scriptId का इस्तेमाल यह बताने के लिए किया जाता है कि स्क्रिप्ट प्रोजेक्ट आईडी कहां देना है. स्क्रिप्ट आईडी ढूंढने के लिए, यह तरीका अपनाएं:

  1. Apps Script प्रोजेक्ट में, सबसे ऊपर बाईं ओर मौजूद प्रोजेक्ट सेटिंग पर क्लिक करें.
  2. "स्क्रिप्ट आईडी" के बगल में, कॉपी करें पर क्लिक करें.

एक फ़ंक्शन निष्पादित करें

नीचे दिया गया scripts.run अनुरोध, listFolderContent नाम के Apps Script फ़ंक्शन को कॉल करता है. इसमें, Drive folderId और पूर्णांक MAX_SIZE को आर्ग्युमेंट के तौर पर पास किया जाता है. फ़ंक्शन को डेवलपमेंट मोड में चलाया जाता है. इसका मतलब यह है कि फ़ंक्शन के सबसे हाल ही में सेव किए गए वर्शन को एक्ज़ीक्यूट किया जाता है, भले ही किसी भी वर्शन को एक्ज़ीक्यूटेबल के तौर पर डिप्लॉय किया गया हो या नहीं.

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

POST https://script.googleapis.com/v1/scripts/scriptId:run
{
  "function": "listFolderContent",
  "parameters": [
    folderId,
    MAX_SIZE
  ],
  "devMode": true
}

इस अनुरोध का रिस्पॉन्स, जैसे ही Apps Script फ़ंक्शन पूरा हो जाता है, उसमें लागू होने या गड़बड़ी के रिस्पॉन्स के नतीजे शामिल होते हैं. इस उदाहरण में, फ़ंक्शन फ़ाइल के नामों का कलेक्शन दिखाता है:

{
  "response": {
    "result": [
      "fileTitle1",
      "fileTitle2",
      "fileTitle3"
    ]
  },
}

अगर Apps Script के चलने के दौरान फ़ंक्शन में कोई गड़बड़ी होती है, तो रिस्पॉन्स ऐसा दिख सकता है:

{
  "response": {
    "error": {
      "code": 3,
      "message": "ScriptError",
      "details": [{
        "@type": "type.googleapis.com/google.apps.script.v1.ExecutionError",
        "errorMessage": "The script enountered an exeception it could not resolve.",
        "errorType": "ScriptError",
        "scriptStackTraceElements": [{
          "function": "listFolderContent",
          "lineNumber": 14
        }]
      }]
    }
  }
}