本页介绍了如何使用 subscriptions.get()
方法获取 Google Workspace 订阅的详细信息。
当您使用用户身份验证调用此方法时,该方法会返回用户授权的订阅的详细信息。当您使用应用身份验证时,该方法可以返回有关应用的任何订阅的详细信息。
前提条件
Apps 脚本
- Google Workspace 订阅。如需创建订阅,请参阅创建订阅。
需要使用一个或多个支持订阅的所有事件类型的镜重对用户进行身份验证。
- Apps 脚本项目:
- 使用您的 Google Cloud 项目,而不是 Apps Script 自动创建的默认项目。
- 对于您添加以配置 OAuth 同意屏幕的任何范围,您还必须将这些范围添加到 Apps Script 项目中的
appsscript.json
文件。 例如: - 启用
Google Workspace Events
高级服务。
"oauthScopes": [ "https://www.googleapis.com/auth/chat.messages.readonly" ]
Python
- Python 3.6 或更高版本
- pip 软件包管理工具
- 最新的 Python 版 Google 客户端库。如需安装或更新这些软件包,请在命令行界面中运行以下命令:
pip3 install --upgrade google-api-python-client google-auth-oauthlib
- Google Workspace 订阅。如需创建订阅,请参阅创建订阅。
需要身份验证:
- 对于用户身份验证,需要一个范围,该范围支持订阅的至少一种事件类型。如需识别范围,请参阅按事件类型划分的范围。
- 对于应用身份验证,需要
chat.bot
权限范围(仅限 Google Chat 应用)。
获取用户授权的订阅
以下代码示例使用用户身份验证获取 Subscription
资源的详细信息。在作为用户进行身份验证后,该方法会返回用户授权应用创建的订阅。
如需获取用户授权的订阅,请执行以下操作:
Apps 脚本
在 Apps 脚本项目中,创建一个名为
getSubscription
的新脚本文件,并添加以下代码: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); }
替换以下内容:
如需获取订阅,请在 Apps 脚本项目中运行函数
getSubscription
。
Python
在工作目录中,创建一个名为
get_subscription.py
的文件,并添加以下代码:"""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)
替换以下内容:
SCOPE
:支持订阅中的至少一种事件类型的 OAuth 范围。例如,如果您的订阅会收到更新后的 Chat 聊天室https://www.googleapis.com/auth/chat.spaces.readonly
的事件。SUBSCRIPTION_ID
:订阅的 ID。如需获取 ID,您可以使用以下任一方法:
在工作目录中,确保您已存储 OAuth 客户端 ID 凭据并将文件命名为
client_secrets.json
。该代码示例使用此 JSON 文件通过 Google Workspace 进行身份验证并获取用户凭据。如需了解相关说明,请参阅创建 OAuth 客户端 ID 凭据。如需获取订阅,请在终端中运行以下命令:
python3 get_subscription.py