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

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

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

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

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

הפעל פונקציה

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