Trang này giải thích cách lấy thông tin chi tiết về gói thuê bao Google Workspace bằng phương thức subscriptions.get()
.
Khi bạn gọi phương thức này bằng thông tin xác thực người dùng, phương thức này sẽ trả về thông tin chi tiết về gói thuê bao do người dùng uỷ quyền. Khi bạn sử dụng tính năng xác thực ứng dụng, phương thức này có thể trả về thông tin chi tiết về mọi gói thuê bao cho ứng dụng.
Điều kiện tiên quyết
Apps Script
- Gói thuê bao Google Workspace. Để tạo một gói thuê bao, hãy xem phần Tạo gói thuê bao.
Yêu cầu xác thực người dùng bằng một hoặc nhiều phạm vi hỗ trợ tất cả các loại sự kiện cho gói thuê bao.
- Một dự án Apps Script:
- Sử dụng dự án Google Cloud thay vì dự án mặc định do Apps Script tạo tự động.
- Đối với mọi phạm vi mà bạn đã thêm để định cấu hình màn hình đồng ý OAuth, bạn cũng phải thêm các phạm vi đó vào tệp
appsscript.json
trong dự án Apps Script. Ví dụ: - Bật
dịch vụ nâng cao
Google Workspace Events
.
"oauthScopes": [ "https://www.googleapis.com/auth/chat.messages.readonly" ]
Python
- Python 3.6 trở lên
- Công cụ quản lý gói pip
- Thư viện ứng dụng Google mới nhất cho Python. Để cài đặt hoặc cập nhật các gói này, hãy chạy lệnh sau trong giao diện dòng lệnh:
pip3 install --upgrade google-api-python-client google-auth-oauthlib
- Gói thuê bao Google Workspace. Để tạo một gói thuê bao, hãy xem phần Tạo gói thuê bao.
Yêu cầu xác thực:
- Để xác thực người dùng, yêu cầu một phạm vi hỗ trợ ít nhất một trong các loại sự kiện cho gói thuê bao. Để xác định phạm vi, hãy xem phần Phạm vi theo loại sự kiện.
- Để xác thực ứng dụng, bạn cần có phạm vi
chat.bot
(chỉ dành cho ứng dụng Google Chat).
Nhận gói thuê bao do người dùng uỷ quyền
Mã mẫu sau đây sẽ lấy thông tin chi tiết về tài nguyên Subscription
bằng cách xác thực người dùng. Khi được xác thực là người dùng, phương thức này sẽ trả về một gói thuê bao mà người dùng đã cho phép ứng dụng tạo.
Cách người dùng uỷ quyền gói thuê bao:
Apps Script
Trong dự án Apps Script, hãy tạo một tệp tập lệnh mới tên là
getSubscription
và thêm mã sau: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); }
Thay thế nội dung sau:
Để nhận gói thuê bao, hãy chạy hàm
getSubscription
trong dự án Apps Script.
Python
Trong thư mục đang hoạt động, hãy tạo một tệp có tên
get_subscription.py
rồi thêm mã sau:"""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)
Thay thế nội dung sau:
SCOPE
: Phạm vi OAuth hỗ trợ ít nhất một loại sự kiện từ gói thuê bao. Ví dụ: nếu gói thuê bao của bạn nhận được các sự kiện về một phòng Chat đã cập nhật,https://www.googleapis.com/auth/chat.spaces.readonly
.SUBSCRIPTION_ID
: Mã của gói thuê bao. Để lấy mã nhận dạng, bạn có thể sử dụng bất kỳ phương thức nào sau đây:
Trong thư mục đang hoạt động, hãy đảm bảo bạn đã lưu trữ thông tin xác thực mã ứng dụng khách OAuth và đặt tên tệp là
client_secrets.json
. Mẫu mã sử dụng tệp JSON này để xác thực bằng Google Workspace và lấy thông tin xác thực của người dùng. Để biết hướng dẫn, hãy xem phần Tạo thông tin xác thực mã ứng dụng khách OAuth.Để nhận gói thuê bao, hãy chạy lệnh sau trong dòng lệnh:
python3 get_subscription.py