Apps Script-Funktionen ausführen

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

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 Funktion ausführen.

In diesen Beispielen wird der Platzhalter scriptId verwendet, um anzugeben, wo Sie die Script-Projekt-ID angeben würden. So finden Sie die Script-ID:

  1. Klicken Sie im Apps Script-Projekt links oben auf Projekteinstellungen .
  2. Klicken Sie neben „Script-ID“ auf Kopieren.

Funktion ausführen

Mit der folgenden scripts.run-Anfrage wird eine Apps Script-Funktion mit dem Namen listFolderContent aufgerufen und ihr werden die Drive-folderId und eine Ganzzahl MAX_SIZE als Argumente übergeben. Die Funktion wird im Entwicklermodus ausgeführt. Das bedeutet, dass die zuletzt gespeicherte Version der Funktion ausgeführt wird, unabhängig davon, welche Version als ausführbare Datei bereitgestellt wird.

Das Anfrageprotokoll wird unten angezeigt. Im Leitfaden Funktionen ausführen wird beschrieben, wie Sie eine Ausführungsanfrage in verschiedenen Sprachen mithilfe der Google API-Clientbibliotheken implementieren.

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

Die Antwort auf diese Anfrage enthält nach Abschluss der aufgerufenen Apps Script-Funktion die Ergebnisse der Ausführung oder eine Fehlermeldung. In diesem Beispiel gibt die Funktion erfolgreich ein Array mit Dateinamen zurück:

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

Wenn bei der Ausführung des Apps Script 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
        }]
      }]
    }
  }
}