Details zu einem Google Workspace-Abo

Auf dieser Seite wird erläutert, wie Sie mit der Methode subscriptions.get() Details zu einem Google Workspace-Abo abrufen.

Wenn Sie diese Methode mit der Nutzerauthentifizierung aufrufen, werden Details zu einem vom Nutzer autorisierten Abo zurückgegeben. Wenn Sie die App-Authentifizierung verwenden, kann die Methode Details zu allen Abos für die App zurückgeben.

Vorbereitung

Apps Script

  • Ein Apps Script-Projekt:
    • Verwenden Sie Ihr Google Cloud-Projekt anstelle des Standardprojekts, das automatisch von Apps Script erstellt wird.
    • Für alle Bereiche, die Sie zum Konfigurieren des OAuth-Zustimmungsbildschirms hinzugefügt haben, müssen Sie die Bereiche auch der Datei appsscript.json in Ihrem Apps Script-Projekt hinzufügen. Wenn Sie beispielsweise den Bereich chat.messages angegeben haben, fügen Sie Folgendes hinzu:
    • "oauthScopes": [
        "https://www.googleapis.com/auth/chat.messages"
      ]
          
    • Aktivieren Sie den erweiterten Dienst Google Workspace Events.

Python

  • Python 3.6 oder höher
  • Das Paketverwaltungstool pip
  • Die neuesten Google-Clientbibliotheken für Python. Führen Sie den folgenden Befehl in der Befehlszeile aus, um sie zu installieren oder zu aktualisieren:
      pip3 install --upgrade google-api-python-client google-auth-oauthlib
      
  • Ein Google Workspace-Abo. Informationen zum Erstellen eines Abos finden Sie unter Abo erstellen.

  • Authentifizierung erforderlich:

    • Für die Nutzerauthentifizierung ist ein Bereich erforderlich, der mindestens einen der Ereignistypen für das Abo unterstützt. Informationen zum Identifizieren eines Bereichs finden Sie unter Bereiche nach Ereignistyp.
    • Für die App-Authentifizierung ist der Bereich chat.bot erforderlich (nur für Google Chat-Apps).

Von einem Nutzer autorisiertes Abo abrufen

Im folgenden Codebeispiel werden Details zu einer Subscription-Ressource abgerufen, wobei die Nutzerauthentifizierung verwendet wird. Wenn die Authentifizierung als Nutzer erfolgt ist, gibt die Methode ein Abo zurück, das der Nutzer für die App autorisiert hat.

So autorisieren Sie ein Abo durch einen Nutzer:

Apps Script

  1. Erstellen Sie in Ihrem Apps Script-Projekt eine neue Skriptdatei mit dem Namen getSubscription und fügen Sie den folgenden Code hinzu:

    function getSubscription() {
      // The name of the subscription to get.
      const name = 'subscriptions/SUBSCRIPTION_ID';
    
      // Call the Workspace Events API using the advanced service.
      const subscription = WorkspaceEvents.Subscriptions.get(name);
      console.log(subscription);
    }
    

    Ersetzen Sie Folgendes:

    • SUBSCRIPTION_ID: Die ID des Abos. Sie haben folgende Möglichkeiten, die ID abzurufen:
      • Der Wert des Felds uid.
      • Die ID des Ressourcennamens, der im Feld name dargestellt wird. Wenn der Ressourcenname beispielsweise subscriptions/subscription-123 lautet, verwenden Sie subscription-123.
  2. Führen Sie die Funktion getSubscription in Ihrem Apps Script-Projekt aus, um das Abo abzurufen.

Python

  1. Erstellen Sie in Ihrem Arbeitsverzeichnis eine Datei mit dem Namen get_subscription.py und fügen Sie den folgenden Code hinzu:

    """Get subscription."""
    
    from google_auth_oauthlib.flow import InstalledAppFlow
    from googleapiclient.discovery import build
    
    # Specify required scopes.
    SCOPES = ['SCOPE']
    
    # Authenticate with Google Workspace and get user authentication.
    flow = InstalledAppFlow.from_client_secrets_file('credentials.json', SCOPES)
    CREDENTIALS = flow.run_local_server()
    
    # Call the Workspace Events API using the service endpoint.
    service = build(
        'workspaceevents',
        'v1',
        credentials=CREDENTIALS,
    )
    
    NAME = 'subscriptions/SUBSCRIPTION_ID'
    subscription = service.subscriptions().get(name=NAME).execute()
    print(subscription)
    

    Ersetzen Sie Folgendes:

    • SCOPE: Ein OAuth-Bereich, der mindestens einen Ereignistyp aus dem Abo unterstützt. Wenn Ihr Abo beispielsweise Ereignisse in einem aktualisierten Chat-Gruppenbereich empfängt, https://www.googleapis.com/auth/chat.spaces.readonly.
    • SUBSCRIPTION_ID: Die ID des Abos. Sie haben folgende Möglichkeiten, die ID abzurufen:
      • Der Wert des Felds uid.
      • Die ID des Ressourcennamens, der im Feld name dargestellt wird. Wenn der Ressourcenname beispielsweise subscriptions/subscription-123 lautet, verwenden Sie subscription-123.
  2. Achten Sie darauf, dass Sie die Anmeldedaten für die OAuth-Client-ID in Ihrem Arbeitsverzeichnis gespeichert und die Datei credentials.json genannt haben. Im Codebeispiel wird diese JSON-Datei verwendet, um sich bei Google Workspace zu authentifizieren und Nutzeranmeldedaten abzurufen. Eine Anleitung finden Sie unter Anmeldedaten mit OAuth-Client-ID erstellen.

  3. Führen Sie im Terminal den folgenden Befehl aus, um das Abo zu erhalten:

    python3 get_subscription.py