ביצוע פונקציות ב-Apps Script

באמצעות Apps Script API (לשעבר Apps Script Execution API) תוכלו להריץ מרחוק פונקציה בפרויקט סקריפט שיש לכם גישה אליו. האפליקציה יכולה לקרוא לפונקציה נתונה ב-Apps Script, לספק לה פרמטרים של קלט במקרה הצורך ולקבל תגובה מוחזרת.

הדוגמאות בדף הזה ממחישות איך ניתן להשיג פעולות ביצוע נפוצות בעזרת ה-API. למידע נוסף כולל דרישות הרשאה מיוחדות, תוכלו לעיין במדריך ביצוע של פונקציה.

בדוגמאות האלה, ה-placeholders scriptId משמשים כדי לציין איפה צריך לספק את מזהה הפרויקט של הסקריפט. כדי למצוא את מזהה הסקריפט:

  1. בפרויקט Apps Script, בפינה הימנית העליונה לוחצים על Project Settings (הגדרות הפרויקט) .
  2. לצד 'מזהה סקריפט', לוחצים על העתקה.

הפעל פונקציה

הבקשה הבאה מסוג scripts.run מפעילה פונקציה של Apps Script בשם listFolderContent ומעבירה אותה כארגומנטים ל-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
        }]
      }]
    }
  }
}