Führt eine Funktion in einem Apps Script-Projekt aus. Das Skriptprojekt muss für die Verwendung mit der Apps Script API bereitgestellt werden und die aufrufende Anwendung muss dasselbe Cloud Platform-Projekt verwenden.
Für diese Methode ist eine Autorisierung mit einem OAuth 2.0-Token erforderlich, das mindestens einen der im Abschnitt Autorisierung aufgeführten Bereiche enthält. Scriptprojekte, für die keine Autorisierung erforderlich ist, können nicht über diese API ausgeführt werden. Wenn Sie die richtigen Bereiche für das Authentifizierungstoken ermitteln möchten, öffnen Sie die Seite Übersicht des Skriptprojekts und scrollen Sie nach unten zu „OAuth-Bereiche des Projekts“.
Der Fehler 403, PERMISSION_DENIED: The caller does not have permission gibt an, dass das Cloud Platform-Projekt, das zum Autorisieren der Anfrage verwendet wurde, nicht mit dem Projekt übereinstimmt, das vom Skript verwendet wird.
HTTP-Anfrage
POST https://script.googleapis.com/v1/scripts/{deploymentId}:run
Die URL verwendet die Syntax der gRPC-Transcodierung.
Pfadparameter
| Parameter | |
|---|---|
deploymentId | 
                
                   
 Die Bereitstellungs-ID für die Bereitstellung der ausführbaren API. Bereitstellungs-ID finden Sie im Skripteditor unter Bereitstellen > Bereitstellungen verwalten.  | 
              
Anfragetext
Der Anfragetext enthält Daten mit folgender Struktur:
| JSON-Darstellung | 
|---|
{ "function": string, "parameters": [ value ], "sessionState": string, "devMode": boolean }  | 
                
| Felder | |
|---|---|
function | 
                  
                     
 Der Name der Funktion, die im angegebenen Script ausgeführt werden soll. Der Name enthält keine Klammern oder Parameter. Sie kann auf eine Funktion in einer enthaltenen Bibliothek wie   | 
                
parameters[] | 
                  
                     
 Die Parameter, die an die auszuführende Funktion übergeben werden sollen. Der Objekttyp für jeden Parameter sollte dem erwarteten Typ in Apps Script entsprechen. Parameter können keine Apps Script-spezifischen Objekttypen wie   | 
                
sessionState | 
                  
                     
 Eingestellt. Nur zur Verwendung mit Android-Add-ons. Eine ID, die die aktuelle Sitzung des Nutzers in der Android-App für Google Docs oder Sheets darstellt. Sie ist als zusätzliche Daten im Intent enthalten, mit dem das Add-on gestartet wird. Wenn ein Android-Add-on mit einem Sitzungsstatus ausgeführt wird, erhält es die Berechtigungen eines gebundenen Skripts. Das bedeutet, dass es auf Informationen wie die aktuelle Cursorposition des Nutzers (in Docs) oder die ausgewählte Zelle (in Sheets) zugreifen kann. Rufen Sie   | 
                
devMode | 
                  
                     
 Wenn   | 
                
Antworttext
Bei Erfolg enthält der Antworttext Daten mit der folgenden Struktur:
Eine Darstellung der Ausführung einer Apps Script-Funktion, die mit run gestartet wurde. Die Ausführungsantwort geht erst ein, wenn die Funktion ausgeführt wurde. Die maximale Ausführungszeit ist im Apps Script-Leitfaden zu Kontingenten aufgeführt. 
Nachdem die Ausführung gestartet wurde, kann sie eines von vier Ergebnissen haben:
-  Wenn die Skriptfunktion erfolgreich zurückgegeben wird, enthält das Feld 
responseeinExecutionResponse-Objekt mit dem Rückgabewert der Funktion im Feldresultdes Objekts. -  Wenn die Skriptfunktion (oder Apps Script selbst) eine Ausnahme auslöst, enthält das Feld 
erroreinStatus-Objekt. Das FelddetailsdesStatus-Objekts enthält ein Array mit einem einzelnenExecutionError-Objekt, das Informationen zur Art des Fehlers enthält. -  Wenn die Ausführung noch nicht abgeschlossen ist,  ist das Feld 
doneauffalsegesetzt und weder das Feldresponsenoch das Felderrorsind vorhanden. -  Wenn der 
run-Aufruf selbst fehlschlägt (z. B. aufgrund einer fehlerhaften Anfrage oder eines Autorisierungsfehlers), gibt die Methode einen HTTP-Antwortcode im 4XX-Bereich mit einem anderen Format für den Antworttext zurück. Clientbibliotheken wandeln eine 4XX-Antwort automatisch in eine Ausnahmeklasse um. 
| JSON-Darstellung | 
|---|
{ "done": boolean, // Union field  | 
                  
| Felder | |
|---|---|
done | 
                    
                       
 Dieses Feld gibt an, ob die Skriptausführung abgeschlossen ist. Bei einer abgeschlossenen Ausführung ist das Feld   | 
                  
Union-Feld result. Das Ergebnis des Vorgangs kann entweder ein error oder eine gültige response sein. Wenn done = false ist, wird weder error noch response festgelegt. Wenn done == true, kann entweder error oder response festgelegt werden. Einige Dienste stellen das Ergebnis möglicherweise nicht bereit. Für result ist nur einer der folgenden Werte zulässig: | 
                  |
error | 
                    
                       
 Wenn ein   | 
                  
response | 
                    
                       
 Wenn die Skriptfunktion erfolgreich zurückgegeben wird, enthält dieses Feld ein  Ein Objekt, das Felder eines beliebigen Typs enthält. Ein zusätzliches Feld   | 
                  
Autorisierungsbereiche
Erfordert einen der folgenden OAuth-Bereiche:
https://apps-apis.google.com/a/feedshttps://apps-apis.google.com/a/feeds/alias/https://apps-apis.google.com/a/feeds/groups/https://mail.google.com/https://sites.google.com/feedshttps://www.google.com/calendar/feedshttps://www.google.com/m8/feedshttps://www.googleapis.com/auth/admin.directory.grouphttps://www.googleapis.com/auth/admin.directory.userhttps://www.googleapis.com/auth/documentshttps://www.googleapis.com/auth/documents.currentonlyhttps://www.googleapis.com/auth/drivehttps://www.googleapis.com/auth/dynamiccreativeshttps://www.googleapis.com/auth/formshttps://www.googleapis.com/auth/forms.currentonlyhttps://www.googleapis.com/auth/groupshttps://www.googleapis.com/auth/script.cpanelhttps://www.googleapis.com/auth/script.external_requesthttps://www.googleapis.com/auth/script.scriptapphttps://www.googleapis.com/auth/script.send_mailhttps://www.googleapis.com/auth/script.storagehttps://www.googleapis.com/auth/script.webapp.deployhttps://www.googleapis.com/auth/spreadsheetshttps://www.googleapis.com/auth/spreadsheets.currentonlyhttps://www.googleapis.com/auth/sqlservicehttps://www.googleapis.com/auth/userinfo.email
Weitere Informationen finden Sie in der OAuth 2.0-Übersicht.
Status
Wenn ein run-Aufruf erfolgreich ist, die Skriptfunktion (oder Apps Script selbst) jedoch eine Ausnahme auslöst, enthält das Feld error des Antworttexts dieses Status-Objekt.
| JSON-Darstellung | 
|---|
{ "code": integer, "message": string, "details": [ { "@type": string, field1: ..., ... } ] }  | 
              
| Felder | |
|---|---|
code | 
                
                   
 Der Statuscode. Für diese API ist dieser Wert entweder: 
  | 
              
message | 
                
                   
 Eine an Entwickler gerichtete Fehlermeldung, die englischsprachig ist. Jede Fehlermeldung an den Nutzer wird lokalisiert und im Feld   | 
              
details[] | 
                
                   
 Ein Array, das ein einzelnes  Ein Objekt, das Felder eines beliebigen Typs enthält. Ein zusätzliches Feld   |