Google Apps Script API की मदद से, अपने ऐप्लिकेशन से Google Apps Script प्रोजेक्ट बनाए और उनमें बदलाव किए जा सकते हैं. इस पेज पर दिए गए उदाहरणों से पता चलता है कि एपीआई की मदद से, प्रोजेक्ट मैनेजमेंट की सामान्य कार्रवाइयां कैसे की जा सकती हैं.
एपीआई का इस्तेमाल करने के लिए, आपको पहले इसे चालू करना होगा.
इन उदाहरणों में, scriptId प्लेसहोल्डर का इस्तेमाल यह दिखाने के लिए किया गया है कि आपको स्क्रिप्ट प्रोजेक्ट आईडी कहां देना है. स्क्रिप्ट आईडी ढूंढने के लिए, यहां दिया गया तरीका अपनाएं:
- Apps Script प्रोजेक्ट में, सबसे ऊपर बाईं ओर मौजूद प्रोजेक्ट सेटिंग पर क्लिक करें.
- "स्क्रिप्ट आईडी" के बगल में मौजूद, कॉपी करें पर क्लिक करें.
नया Apps Script प्रोजेक्ट बनाना
projects.create अनुरोध का इस्तेमाल करके, नई स्टैंडअलोन स्क्रिप्ट बनाई जा सकती है.
POST https://scriptmanagement.googleapis.com/v1/projects/
{
"title": "My Script"
}प्रोजेक्ट का मेटाडेटा वापस पाना
यहां दिए गए projects.get अनुरोध से, स्क्रिप्ट के प्रोजेक्ट का मेटाडेटा मिलता है.
GET https://scriptmanagement.googleapis.com/v1/projects/scriptId
जवाब में, इस तरह का ऑब्जेक्ट शामिल होता है:
{
"scriptId": "scriptId",
"title": "My Title",
"parentId": "parentId",
"createTime": "2017-10-02T15:01:23.045123456Z",
"updateTime": "2017-10-02T15:01:23.045123456Z",
"creator": { "name": "Grant" },
"lastModifyUser": { "name": "Grant" },
}प्रोजेक्ट फ़ाइलें वापस पाना
यहां दिया गया projects.getContent अनुरोध, स्क्रिप्ट प्रोजेक्ट का कॉन्टेंट पाने के लिए किया जाता है. इसमें कोड सोर्स और हर स्क्रिप्ट फ़ाइल का मेटाडेटा शामिल होता है.
GET https://scriptmanagement.googleapis.com/v1/projects/scriptId/content
रिस्पॉन्स में, Content ऑब्जेक्ट होता है. जैसे:
{ "scriptId": "scriptId", "files": [{ "name": "My Script", "type": "SERVER_JS", "source": "function hello(){\nconsole.log('Hello world');}", "lastModifyUser": { "name": "Grant", "email": "grant@example.com", }, "createTime": "2017-10-02T15:01:23.045123456Z", "updateTime": "2017-10-02T15:01:23.045123456Z", "functionSet": { "values": [ "name": "helloWorld" ] } }, { "name": "appsscript", "type": "JSON", "source": "{\"timeZone\":\"America/New_York\",\"exceptionLogging\":\"CLOUD\"}", "lastModifyUser": { "name": "Grant", "email": "grant@example.com", }, "createTime": "2017-10-02T15:01:23.045123456Z", "updateTime": "2017-10-02T15:01:23.045123456Z" }] }
प्रोजेक्ट फ़ाइलें अपडेट करना
नीचे दिया गया projects.updateContent अनुरोध, तय किए गए स्क्रिप्ट प्रोजेक्ट के कॉन्टेंट को अपडेट करता है. इस कॉन्टेंट को HEAD वर्शन के तौर पर सेव किया जाता है. इसका इस्तेमाल तब किया जाता है, जब स्क्रिप्ट को एपीआई के तौर पर एक्ज़ीक्यूटेबल प्रोजेक्ट के तौर पर चलाया जाता है.
PUT https://scriptmanagement.googleapis.com/v1/projects/scriptID/content
{ "files": [{ "name": "index", "type": "HTML", "source": "<html> <header><title>HTML Page</title></header> <body> My HTML </body> </html>" }, { "name": "My Script", "type": "SERVER_JS", "source": "function hello(){\nconsole.log('Hello world');}", }, { "name": "appsscript", "type": "JSON", "source": "{\"timeZone\":\"America/New_York\",\"exceptionLogging\":\"CLOUD\"}", "lastModifyUser": { "name": "Grant", "email": "grant@example.com", }, "createTime": "2017-10-02T15:01:23.045123456Z", "updateTime": "2017-10-02T15:01:23.045123456Z" }] }
रिस्पॉन्स में, Content ऑब्जेक्ट होता है. जैसे:
{ "scriptId": "scriptId", "files": [{ "name": "index", "type": "HTML", "source": "<html> <header><title>HTML Page</title></header> <body> My HTML </body> </html>", "lastModifyUser": { "name": "Grant", "email": "grant@example.com", }, "createTime": "2017-10-02T15:01:23.045123456Z", "updateTime": "2017-10-02T15:01:23.045123456Z" }, { "name": "My Script", "type": "SERVER_JS", "source": "function hello(){\nconsole.log('Hello world');}", "lastModifyUser": { "name": "Grant", "email": "grant@example.com", }, "createTime": "2017-10-02T15:01:23.045123456Z", "updateTime": "2017-10-02T15:01:23.045123456Z", "functionSet": { "values": [ "name": "helloWorld" ] } }, { "name": "appsscript", "type": "JSON", "source": "{\"timeZone\":\"America/New_York\",\"exceptionLogging\":\"CLOUD\"}", "lastModifyUser": { "name": "Grant", "email": "grant@example.com", }, "createTime": "2017-10-02T15:01:23.045123456Z", "updateTime": "2017-10-02T15:01:23.045123456Z" }] }