Dowiedz się więcej o subskrypcji Google Workspace

Z tego artykułu dowiesz się, jak uzyskać szczegółowe informacje o subskrypcji Google Workspace za pomocą metody subscriptions.get().

Gdy wywołujesz tę metodę z uwierzytelnianiem użytkownika, zwraca ona szczegóły subskrypcji autoryzowanej przez użytkownika. Jeśli korzystasz z uwierzytelniania aplikacji, może ona zwrócić szczegółowe informacje o dowolnej subskrypcji aplikacji.

Wymagania wstępne

Google Apps Script

  • Projekt Apps Script:
    • Użyj swojego projektu Google Cloud zamiast domyślnego utworzonego automatycznie przez Apps Script.
    • W przypadku wszystkich zakresów, które zostały dodane w celu skonfigurowania ekranu zgody OAuth, musisz też dodać zakresy do pliku appsscript.json w projekcie Apps Script. Na przykład:
    • "oauthScopes": [
        "https://www.googleapis.com/auth/chat.messages.readonly"
      ]
          
    • Włącz usługę zaawansowaną Google Workspace Events.

Python

  • Python 3.6 lub nowszy
  • Narzędzie do zarządzania pakietami pip
  • Najnowsze biblioteki klienta Google dla języka Python. Aby je zainstalować lub zaktualizować, uruchom to polecenie w interfejsie wiersza poleceń:
      pip3 install --upgrade google-api-python-client google-auth-oauthlib
      
  • abonament Google Workspace. Aby je utworzyć, zapoznaj się z informacjami o tworzeniu subskrypcji.

  • Wymaga uwierzytelniania:

    • W przypadku uwierzytelniania użytkowników wymagany jest zakres, który obsługuje co najmniej 1 typ zdarzeń w ramach subskrypcji. Informacje o zakresie zakresu znajdziesz w sekcji Zakresy według typu zdarzenia.
    • Do uwierzytelniania aplikacji wymagany jest zakres chat.bot (tylko aplikacje Google Chat).

Uzyskanie subskrypcji autoryzowanej przez użytkownika

Poniższy przykładowy kod zawiera szczegółowe informacje o zasobie Subscription korzystającym z uwierzytelniania użytkownika. Po uwierzytelnieniu użytkownika jako użytkownika metoda zwraca subskrypcję, do utworzenia której aplikacja autoryzował użytkownik.

Aby uzyskać subskrypcję autoryzowaną przez użytkownika:

Google Apps Script

  1. W projekcie Apps Script utwórz nowy plik skryptu o nazwie getSubscription i dodaj do niego ten kod:

    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);
    }
    

    Zastąp następujące elementy:

    • SUBSCRIPTION_ID: identyfikator subskrypcji. Aby uzyskać identyfikator, możesz użyć dowolnej z tych opcji:
      • Wartość pola uid.
      • Identyfikator nazwy zasobu przedstawionej w polu name. Jeśli na przykład nazwa zasobu to subscriptions/subscription-123, użyj atrybutu subscription-123.
  2. Aby uzyskać subskrypcję, uruchom funkcję getSubscription w projekcie Apps Script.

Python

  1. W katalogu roboczym utwórz plik o nazwie get_subscription.py i dodaj do niego ten kod:

    """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('client_secrets.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)
    

    Zastąp następujące elementy:

    • SCOPE: zakres protokołu OAuth, który obsługuje co najmniej 1 typ zdarzenia z subskrypcji. Jeśli na przykład Twoja subskrypcja odbiera zdarzenia ze zaktualizowanego pokoju czatu, https://www.googleapis.com/auth/chat.spaces.readonly.
    • SUBSCRIPTION_ID: identyfikator subskrypcji. Aby uzyskać identyfikator, możesz użyć dowolnej z tych opcji:
      • Wartość pola uid.
      • Identyfikator nazwy zasobu przedstawionej w polu name. Jeśli na przykład nazwa zasobu to subscriptions/subscription-123, użyj atrybutu subscription-123.
  2. Sprawdź, czy w katalogu roboczym są zapisane dane logowania identyfikatora klienta OAuth i nadaj mu nazwę client_secrets.json. Przykładowy kod używa tego pliku JSON do uwierzytelniania w Google Workspace i pobierania danych logowania użytkownika. Instrukcje znajdziesz w artykule Tworzenie danych logowania identyfikatora klienta OAuth.

  3. Aby uzyskać subskrypcję, uruchom w terminalu to polecenie:

    python3 get_subscription.py