Apps Script-Funktionen ausführen

Mit der Apps Script API (und früher Apps Script Execution API) können Sie eine Funktion in einem Skriptprojekt, auf das Sie Zugriff haben, remote ausführen. Ihre Anwendung kann eine bestimmte Apps Script-Funktion aufrufen, ihr bei Bedarf Eingabeparameter bereitstellen und eine zurückgegebene Antwort erhalten.

Die Beispiele auf dieser Seite veranschaulichen, wie einige gängige Ausführungsvorgänge mit der API erreicht werden können. Weitere Informationen einschließlich spezieller Autorisierungsanforderungen finden Sie im Leitfaden zum Ausführen einer Funktion.

In diesen Beispielen wird durch die Platzhalter scriptId angegeben, wo Sie die Skriptprojekt-ID angeben. So finden Sie die Skript-ID:

  1. Klicken Sie im Apps Script-Projekt links oben auf Project Settings (Projekteinstellungen) .
  2. Klicken Sie neben „Skript-ID“ auf Kopieren.

Funktion ausführen

Die folgende scripts.run-Anfrage ruft eine Apps Script-Funktion namens listFolderContent auf und übergibt ihr die Drive-folderId und eine Ganzzahl MAX_SIZE als Argumente. Die Funktion wird im Entwicklungsmodus ausgeführt, d. h., die zuletzt gespeicherte Version der Funktion wird ausgeführt, unabhängig davon, welche Version als ausführbare Datei bereitgestellt wird.

Das Anfrageprotokoll ist unten dargestellt. In der Anleitung Funktionen ausführen wird gezeigt, wie Sie mit den Google API-Clientbibliotheken eine Ausführungsanfrage in verschiedenen Sprachen implementieren.

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

Sobald die aufgerufene Apps Script-Funktion abgeschlossen ist, enthält die Antwort auf diese Anfrage die Ergebnisse der Ausführung oder eine Fehlerantwort. In diesem Beispiel gibt die Funktion erfolgreich ein Array von Dateinamen zurück:

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

Wenn bei der Funktion während der Apps Script-Ausführung ein Fehler aufgetreten ist, könnte die Antwort so aussehen:

{
  "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
        }]
      }]
    }
  }
}