Kann die Google Apps Script Execution-API von einem Dienstkonto aufgerufen werden?
Ich möchte ein @ verwendservice account, um über das Apps-Skript auf ein Google Sheet zuzugreifenExecution API, aber aus der Dokumentation geht nicht hervor, ob dies unterstützt wird.
Die Schritte, die ich ausprobiert habe (die zu einem 403-Status von der Ausführungs-API führen), sind:
Erstelle ein neues (ungebundenes) Apps ScriptBesuchen Sie das verknüpfte Developer Console-ProjektAktivieren Sie die Ausführungs-APIErstellen Sie ein neues Dienstkonto innerhalb desselben Projekts (Herunterladen der generierten JSON-Datei)Erstelle ein neues Google Sheet und teile es mit der E-Mail-Adresse des Dienstkontos dies ist der Schritt, bei dem ich mich am wenigsten sicher bin)Schreibe eine App-Skriptfunktion, die aus der Tabelle liest Führen Sie das Skript manuell aus dem Skript-Editor aus (um die Bereiche im Skript korrekt festzulegen).Veröffentlichen Sie das Skript ("Als ausführbare API bereitstellen") und machen Sie es für "jedermann" zugänglich.Markieren Sie ein neues OAuth2-Token unter Verwendung des Dienstkontos und der mit dem Skript verknüpften Bereiche (in unserem Fall nur 'https: //www.googleapis.com/auth/spreadsheet ')Versuchen Sie, die Ausführungs-API mit dem Token @ aufzurufeDies ist die Antwort, die ich bekommen habe:
{
"error": {
"code": 403,
"message": "The caller does not have permission",
"status": "PERMISSION_DENIED"
}
}
Funktioniert dies nicht, weil Dienstkonten niemals auf die Ausführungs-API zugreifen können? Oder stimmt etwas mit den obigen Schritten nicht?