تتيح لك واجهة برمجة تطبيقات Google Apps Script إنشاء مشاريع Google Apps Script وتعديلها من تطبيقك. توضّح الأمثلة الواردة في هذه الصفحة كيفية تنفيذ عمليات إدارة المشاريع الشائعة باستخدام واجهة برمجة التطبيقات.
لاستخدام واجهة برمجة التطبيقات، عليك أولاً تفعيلها.
في هذه الأمثلة، يتم استخدام العنصر النائب scriptId للإشارة إلى المكان الذي ستوفّر فيه رقم تعريف مشروع النص البرمجي. اتّبِع الخطوات التالية للعثور على معرّف النص البرمجي:
- في مشروع برمجة تطبيقات، في أعلى يمين الصفحة، انقر على إعدادات المشروع .
- بجانب "معرّف البرنامج النصي"، انقر على نسخ.
إنشاء مشروع جديد في "برمجة تطبيقات Google"
ينشئ طلب 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" }] }