Na tej stronie znajdziesz informacje o tym, jak uzyskać szczegółowe informacje o subskrypcji Google Workspace za pomocą metody subscriptions.get()
.
Gdy wywołasz tę metodę z uwierzytelnianiem użytkownika, zwróci ona szczegóły subskrypcji autoryzowanej przez użytkownika. Gdy używasz uwierzytelniania aplikacji, metoda może zwracać szczegóły dotyczące dowolnej subskrypcji aplikacji.
Wymagania wstępne
Google Apps Script
- subskrypcję Google Workspace; Aby ją utworzyć, zapoznaj się z artykułem Tworzenie subskrypcji.
Wymaga uwierzytelnienia użytkownika za pomocą co najmniej 1 zakresu, który obsługuje wszystkie typy zdarzeń w przypadku subskrypcji.
- Projekt Apps Script:
- Użyj projektu Google Cloud zamiast domyślnego projektu utworzonego automatycznie przez Apps Script.
- Wszystkie zakresy dodane w celu skonfigurowania ekranu akceptacji OAuth musisz też dodać do pliku
appsscript.json
w projekcie Apps Script. Jeśli na przykład określisz zakreschat.messages
, dodaj te informacje: - Włącz usługę zaawansowaną
Google Workspace Events
.
"oauthScopes": [ "https://www.googleapis.com/auth/chat.messages" ]
Python
- Python 3.6 lub nowszy
- Narzędzie do zarządzania pakietami pip
- Najnowsze biblioteki klienta Google dla Pythona. Aby je zainstalować lub zaktualizować, w interfejsie wiersza poleceń uruchom to polecenie:
pip3 install --upgrade google-api-python-client google-auth-oauthlib
- subskrypcję Google Workspace; Aby ją utworzyć, zapoznaj się z artykułem Tworzenie subskrypcji.
Wymaga uwierzytelnienia:
- W przypadku uwierzytelniania użytkownika wymagany jest zakres, który obsługuje co najmniej 1 typ zdarzenia w przypadku subskrypcji. Aby określić zakres, zobacz Zakresy według typu zdarzenia.
- W przypadku uwierzytelniania aplikacji wymagany jest zakres
chat.bot
(tylko w przypadku aplikacji Google Chat).
Uzyskiwanie subskrypcji autoryzowanej przez użytkownika
Poniższy przykład kodu pobiera szczegóły zasobu
Subscription
za pomocą uwierzytelniania użytkownika. Po uwierzytelnieniu jako użytkownik metoda zwraca subskrypcję, na której utworzenie użytkownik zezwolił aplikacji.
Aby uzyskać autoryzację subskrypcji przez użytkownika:
Google Apps Script
W projekcie Apps Script utwórz nowy plik skryptu o nazwie
getSubscription
i dodaj 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:
Aby uzyskać subskrypcję, uruchom funkcję
getSubscription
w projekcie Apps Script.
Python
W katalogu roboczym utwórz plik o nazwie
get_subscription.py
i dodaj 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('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)
Zastąp następujące elementy:
SCOPE
: Zakres OAuth, który obsługuje co najmniej 1 typ zdarzenia z subskrypcji. Jeśli na przykład subskrypcja otrzymuje zdarzenia z zaktualizowanego pokoju w Chat,https://www.googleapis.com/auth/chat.spaces.readonly
.SUBSCRIPTION_ID
: Identyfikator subskrypcji. Aby uzyskać identyfikator, możesz użyć dowolnej z tych metod:
W katalogu roboczym sprawdź, czy masz zapisane dane uwierzytelniające identyfikatora klienta OAuth i czy plik ma nazwę
credentials.json
. Przykładowy kod używa tego pliku JSON do uwierzytelniania w Google Workspace i uzyskiwania danych logowania użytkownika. Instrukcje znajdziesz w artykule Tworzenie danych uwierzytelniających identyfikatora klienta OAuth.Aby uzyskać subskrypcję, uruchom w terminalu to polecenie:
python3 get_subscription.py