Erweiterte Google-Dienste

Mit den erweiterten Diensten in Apps Script können erfahrene Entwickler dass bestimmte öffentliche Google APIs weniger eingerichtet als ihre HTTP-Schnittstellen sind. Erweiterte Dienste sind im Wesentlichen schlanke Wrapper um diese Google APIs. Sie funktionieren ähnlich wie Apps Scripts integrierte Dienste nutzen, z. B. automatisch vervollständigt und Apps Script Autorisierungsvorgang automatisch ausführen. Sie müssen jedoch einen erweiterten Dienst aktivieren, bevor Sie können Sie es in einem Skript verwenden.

Welche Google APIs als erweiterte Dienste verfügbar sind, sehen Sie in der Erweiterte Google-Dienste Referenz. Wenn Sie eine Google API verwenden möchten, nicht als erweiterter Dienst verfügbar ist, verbinden Sie ihn einfach wie jeden anderen Dienst. externe API.

Erweiterte Dienste oder HTTP?

Jeder der erweiterten Google-Dienste ist mit einer öffentlichen Google API verknüpft. In Apps Script können Sie auf diese APIs über erweiterte Dienste oder einfach die API-Anfragen direkt über UrlFetch

Wenn Sie die erweiterte Dienstmethode verwenden, verarbeitet Apps Script die Autorisierungsablauf und Angebote Unterstützung der automatischen Vervollständigung. Sie müssen jedoch Aktivieren Sie den erweiterten Dienst, bevor Sie . Darüber hinaus stellen einige erweiterte Dienste nur einen Teil der die in der API zur Verfügung stehen.

Wenn Sie die UrlFetch-Methode verwenden, um direkt auf die API zuzugreifen, die Google API im Grunde als externe API. Bei dieser Methode werden alle der API genutzt werden können. Allerdings müssen Sie die API selbst autorisieren. Außerdem müssen Sie alle erforderlichen Header erstellen und parsen die API-Antworten.

In der Regel ist es am einfachsten, einen erweiterten Dienst zu nutzen, sofern dies möglich ist. die UrlFetch-Methode verwenden, wenn der erweiterte Dienst die Funktionen, die Sie benötigen.

Voraussetzungen

Bevor Sie einen erweiterten Dienst verwenden können, müssen folgende Voraussetzungen erfüllt sein: Anforderungen:

  1. Sie müssen den erweiterten Dienst aktivieren. in Ihrem Skriptprojekt erstellen.
  2. Die API für den erweiterten Dienst muss aktiviert sein im Cloud Platform-Projekt (GCP) die Ihr Skript verwendet.

    Wenn Ihr Skriptprojekt ein GCP-Standardprojekt verwendet die am oder nach dem 8. April 2019 erstellt wurde, wird die API nachdem Sie den erweiterten Dienst aktiviert und das Skriptprojekt gespeichert haben. Wenn Sie noch nicht getan haben, könnten Sie sich auch gebeten, den Google Cloud und die Nutzungsbedingungen für Google APIs.

    Wenn Ihr Skriptprojekt eine GCP-Standardprojekt oder ein älteres GCP-Standardprojekt, Sie müssen die entsprechende API des erweiterten Dienstes aktivieren. manuell im GCP-Projekt. Sie benötigen Bearbeitungszugriff auf das GCP-Projekt um diese Änderung vorzunehmen.

Siehe Cloud Platform-Projekte .

Erweiterte Dienste aktivieren

So nutzen Sie einen erweiterten Google-Dienst:

  1. Öffnen Sie das Apps Script-Projekt.
  2. Klicken Sie links auf Editor .
  3. Klicken Sie links neben Dienste auf Dienst hinzufügen.
  4. Wählen Sie einen erweiterten Google-Dienst aus und klicken Sie auf Hinzufügen.

Nachdem Sie einen erweiterten Dienst aktiviert haben, ist er in der automatischen Vervollständigung verfügbar.

Wie Methodensignaturen bestimmt werden

Erweiterte Dienste verwenden in der Regel dieselben Objekte, Methodennamen und Parameter. wie die entsprechenden öffentlichen APIs, obwohl Methodensignaturen für die Sie in Apps Script verwenden können. Der Skripteditor Funktion zur automatischen Vervollständigung bietet normalerweise genügend Informationen für den Einstieg. Wie Apps Script eine Methodensignatur aus einer öffentlichen Google API generiert.

Anfragen an Google APIs können eine Vielzahl verschiedener Datentypen akzeptieren, einschließlich Pfadparametern, Suchparametern, einem Anfragetext und/oder Medien, Anhang hochladen. Einige erweiterte Dienste können auch bestimmte HTTP-Anfragen akzeptieren. (z. B. im Feld Erweiterter Google Kalender-Dienst.

Die entsprechende Methodensignatur in Google Apps Script weist Folgendes auf: Argumente:

  1. Der Anfragetext (in der Regel eine Ressource) als JavaScript-Objekt.
  2. Pfad oder erforderliche Parameter als einzelne Argumente.
  3. Der Medien-Upload-Anhang als Blob-Datei .
  4. Optionale Parameter als JavaScript-Objektzuordnungsparameternamen für Werte.
  5. HTTP-Anfrageheader als JavaScript-Objekt, das Headernamen dem Header zuordnet Werte.

Enthält die Methode keine Elemente in einer bestimmten Kategorie, wird der Teil der Signatur weggelassen wird.

Es gibt einige besondere Ausnahmen:

  • Für Methoden, die einen Medien-Upload akzeptieren, wird der Parameter uploadType festgelegt. automatisch.
  • Methoden mit dem Namen delete in der Google API heißen in Apps Script remove. da delete ein reserviertes Wort in JavaScript ist.
  • Wenn ein erweiterter Dienst so konfiguriert ist, dass er HTTP-Anfrageheader akzeptiert, und Sie JavaScript-Objekt für Anfrageheader festgelegt haben, müssen Sie auch das optionale Feld Parameter-JavaScript-Objekt (in ein leeres Objekt, wenn Sie keine optionale Parameter).

Support für erweiterte Dienste

Erweiterte Dienste sind sogenannte Thin Wrapper, die die Verwendung eines Google APIs in Apps Script Daher werden alle Probleme, die bei der Verwendung auftreten, in der Regel ein Problem mit der zugrunde liegenden API, nicht mit Apps Script selbst.

Wenn bei der Nutzung eines erweiterten Dienstes ein Problem auftritt, sollte es anhand der Supportanweisungen für die zugrunde liegende API gemeldet. Links zu diesen finden Sie in jedem Leitfaden zu erweiterten Diensten in der Apps Script-Abschnitt Referenz