Cập nhật hoặc gia hạn gói thuê bao Google Workspace
Sử dụng bộ sưu tập để sắp xếp ngăn nắp các trang
Lưu và phân loại nội dung dựa trên lựa chọn ưu tiên của bạn.
Trang này giải thích cách gia hạn gói thuê bao Google Workspace bằng phương thức subscriptions.update()
. Bạn có thể sử dụng phương thức này để cập nhật thời gian hết hạn của một gói thuê bao, bao gồm cả việc gia hạn gói thuê bao trong thời gian hết hạn tối đa có thể hoặc để cập nhật danh sách các loại sự kiện cần nhận về tài nguyên mục tiêu.
Python
- Python 3.6 trở lên
- Công cụ quản lý gói pip
- Thư viện ứng dụng mới nhất của Google cho Python. Để cài đặt hoặc cập nhật các công cụ 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
Gia hạn gói thuê bao Google Workspace
Trong phần này, bạn sẽ sử dụng phương thức subscriptions.update()
của Google Workspace Events API để gia hạn một gói thuê bao đến thời gian hết hạn tối đa. Để chỉ định thời gian hết hạn tối đa, bạn cần cập nhật trường ttl
của tài nguyên Subscription
thành 0
.
Thời gian hết hạn tối đa phụ thuộc vào dữ liệu tài nguyên có trong tải trọng sự kiện. Để tìm hiểu thêm về thời gian hết hạn, hãy xem bài viết Dữ liệu sự kiện cho các sự kiện trên Google Workspace.
Cách gia hạn gói thuê bao Google Workspace:
Apps Script
Trong dự án Apps Script, hãy tạo một tệp tập lệnh mới có tên là updateSubscription
rồi thêm mã sau:
function updateSubscription() {
// The name of the subscription to update.
const name = 'subscriptions/SUBSCRIPTION_ID';
// Call the Workspace Events API using the advanced service.
const response = WorkspaceEvents.Subscriptions.patch({
ttl: '0s',
}, name);
console.log(response);
}
Thay thế nội dung sau:
SUBSCRIPTION_ID
: Mã nhận dạng 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:
- Giá trị của trường
uid
.
- Mã nhận dạng của tên tài nguyên được biểu thị trong trường
name
. Ví dụ: nếu tên tài nguyên là subscriptions/subscription-123
, hãy dùng subscription-123
.
Để cập nhật gói thuê bao Google Workspace, hãy chạy hàm updateSubscription
trong dự án Apps Script của bạn.
Python
Trong thư mục làm việc, hãy tạo một tệp có tên là update_subscription.py
rồi thêm đoạn mã sau:
"""Update subscription."""
from google_auth_oauthlib.flow import InstalledAppFlow
from googleapiclient.discovery import build
# Specify required scopes.
SCOPES = [SCOPES]
# 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,
)
BODY = {
'ttl': {'seconds': 0},
}
NAME = 'subscriptions/SUBSCRIPTION_ID'
response = (
service.subscriptions()
.patch(name=NAME, updateMask='ttl', body=BODY)
.execute()
)
print(response)
Thay thế nội dung sau:
SCOPES
: Một hoặc nhiều phạm vi OAuth hỗ trợ từng loại sự kiện cho gói thuê bao. Được định dạng dưới dạng một mảng chuỗi. Để liệt kê nhiều phạm vi, hãy phân tách bằng dấu phẩy.
Ví dụ: 'https://www.googleapis.com/auth/chat.spaces.readonly',
'https://www.googleapis.com/auth/chat.memberships.readonly'
.
SUBSCRIPTION_ID
: Mã nhận dạng 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:
- Giá trị của trường
uid
.
- Mã nhận dạng của tên tài nguyên được biểu thị trong trường
name
. Ví dụ: nếu tên tài nguyên là subscriptions/subscription-123
, hãy dùng subscription-123
.
Trong thư mục làm việc, hãy đảm bảo bạn đã lưu trữ thông tin đăng nhập mã ứng dụng OAuth và đặt tên cho tệp là credentials.json
. Mã mẫu sử dụng tệp JSON này để xác thực với Google Workspace và lấy thông tin đăng nhập của người dùng. Để biết hướng dẫn, hãy xem phần Tạo thông tin đăng nhập mã ứng dụng khách OAuth.
Để cập nhật gói thuê bao Google Workspace, hãy chạy lệnh sau trong thiết bị đầu cuối:
python3 update_subscription.py
Google Workspace Events API trả về một
thao tác diễn ra trong thời gian dài chứa phiên bản của tài nguyên
Subscription
.
Để biết thông tin chi tiết về tài nguyên Subscription
đã cập nhật, hãy sử dụng phương thức operations.get()
và chỉ định tài nguyên Operation
được trả về từ yêu cầu subscriptions.update()
. Nếu không, nếu bạn chỉ định một tài nguyên Operation
từ phiên bản trước của gói thuê bao, thì phản hồi sẽ trống.
Trừ phi có lưu ý khác, nội dung của trang này được cấp phép theo Giấy phép ghi nhận tác giả 4.0 của Creative Commons và các mẫu mã lập trình được cấp phép theo Giấy phép Apache 2.0. Để biết thông tin chi tiết, vui lòng tham khảo Chính sách trang web của Google Developers. Java là nhãn hiệu đã đăng ký của Oracle và/hoặc các đơn vị liên kết với Oracle.
Cập nhật lần gần đây nhất: 2025-08-21 UTC.
[null,null,["Cập nhật lần gần đây nhất: 2025-08-21 UTC."],[[["\u003cp\u003eThis page provides instructions on renewing a Google Workspace subscription to its maximum expiration time using the \u003ccode\u003esubscriptions.update()\u003c/code\u003e method.\u003c/p\u003e\n"],["\u003cp\u003eYou can also use the \u003ccode\u003esubscriptions.update()\u003c/code\u003e method to update the list of event types to receive or to update the expiration time of a subscription.\u003c/p\u003e\n"],["\u003cp\u003eCode samples are provided in Apps Script and Python demonstrating how to renew a subscription.\u003c/p\u003e\n"],["\u003cp\u003eBefore renewing, you'll need an existing Google Workspace subscription, appropriate user authentication, and necessary tools like an Apps Script project or Python environment.\u003c/p\u003e\n"]]],["The core function described is renewing a Google Workspace subscription using the `subscriptions.update()` method. This involves updating the `ttl` field of the subscription resource to `0` to set the maximum expiration time. The process requires authentication with specific scopes and OAuth client ID credentials. Code examples are provided for Apps Script and Python, detailing how to execute the update, and how to retrieve the updated subscription resource via `operations.get()`. It also mentions that the update can include changes to event types.\n"],null,["# Update or renew a Google Workspace subscription\n\nThis page explains how to renew a Google Workspace subscription using the\n[`subscriptions.update()`](/workspace/events/reference/rest/v1/subscriptions/patch)\nmethod. You can use this method to update the expiration time of a subscription,\nincluding renewing the subscription for the maximum expiration time possible, or\nto update the list of event types to receive about the target resource. \n\n### Apps Script\n\n- \u003cbr /\u003e\n\n A Google Workspace subscription. To create one, see [Create a subscription](/workspace/events/guides/create-subscription).\n\n \u003cbr /\u003e\n\n- Requires user authentication with one or more\n [scopes that support all event types for\n the subscription](/workspace/events/guides/auth#scopes-event-type).\n\n | **Note:** To run the code sample in this guide, you must use the same [OAuth client\n | ID credentials](/workspace/events/guides/create-subscription#create-oauth) that you used to create the subscription.\n\n\u003c!-- --\u003e\n\n- An Apps Script project:\n - Use your Google Cloud project instead of the default one created automatically by Apps Script.\n - For all scopes that you added to configure the OAuth consent screen, you must also add the scopes to the `appsscript.json` file in your Apps Script project. For example, if you specified the `chat.messages` scope, then add the following: \n\n ```console\n \"oauthScopes\": [\n \"https://www.googleapis.com/auth/chat.messages\"\n ]\n \n ```\n - [Enable](/apps-script/guides/services/advanced#enable_advanced_services) the `Google Workspace Events` advanced service.\n\n### Python\n\n- Python 3.6 or greater\n- The [pip](https://pypi.org/project/pip/) package management tool\n- The latest Google client libraries for Python. To install or update them, run the following command in your command-line interface: \n\n ```console\n pip3 install --upgrade google-api-python-client google-auth-oauthlib\n \n ```\n\n\u003c!-- --\u003e\n\n- \u003cbr /\u003e\n\n A Google Workspace subscription. To create one, see [Create a subscription](/workspace/events/guides/create-subscription).\n\n \u003cbr /\u003e\n\n- Requires user authentication with one or more\n [scopes that support all event types for\n the subscription](/workspace/events/guides/auth#scopes-event-type).\n\n | **Note:** To run the code sample in this guide, you must use the same [OAuth client\n | ID credentials](/workspace/events/guides/create-subscription#create-oauth) that you used to create the subscription.\n\nRenew a Google Workspace subscription\n-------------------------------------\n\nIn this section, you use the Google Workspace Events API's\n`subscriptions.update()` method to renew a subscription to its maximum\nexpiration time. To specify the maximum expiration time, you update the `ttl`\nfield of the\n[`Subscription`](/workspace/events/reference/rest/v1/subscriptions) resource\nto `0`.\n\nThe maximum expiration time depends on what resource data is included in the\nevent payload. To learn more about expiration times, see [Event data for\nGoogle Workspace events](/workspace/events/guides#data).\n\nTo renew a Google Workspace subscription: \n\n### Apps Script\n\n1. In your Apps Script project, create a new script file\n named `updateSubscription` and add the following code:\n\n function updateSubscription() {\n // The name of the subscription to update.\n const name = 'subscriptions/\u003cvar translate=\"no\"\u003eSUBSCRIPTION_ID\u003c/var\u003e';\n\n // Call the Workspace Events API using the advanced service.\n const response = WorkspaceEvents.Subscriptions.patch({\n ttl: '0s',\n }, name);\n console.log(response);\n }\n\n Replace the following:\n - \u003cvar translate=\"no\"\u003eSUBSCRIPTION_ID\u003c/var\u003e: The ID of the subscription. To get the ID, you can use any of the following:\n - The value of the [`uid`](/workspace/events/reference/rest/v1/subscriptions#Subscription.FIELDS.uid) field.\n - The ID of the resource name represented in the [`name`](/workspace/events/reference/rest/v1/subscriptions#Subscription.FIELDS.name) field. For example, if the resource name is `subscriptions/subscription-123`, use `subscription-123`.\n2. To update the Google Workspace subscription, run the function\n `updateSubscription` in your Apps Script project.\n\n### Python\n\n1. In your working directory, create a file named `update_subscription.py`\n and add the following code:\n\n \"\"\"Update subscription.\"\"\"\n\n from google_auth_oauthlib.flow import InstalledAppFlow\n from googleapiclient.discovery import build\n\n # Specify required scopes.\n SCOPES = [\u003cvar translate=\"no\"\u003e\u003cspan class=\"devsite-syntax-n\"\u003eSCOPES\u003c/span\u003e\u003c/var\u003e]\n\n # Authenticate with Google Workspace and get user authentication.\n flow = InstalledAppFlow.from_client_secrets_file('credentials.json', SCOPES)\n CREDENTIALS = flow.run_local_server()\n\n # Call the Workspace Events API using the service endpoint.\n service = build(\n 'workspaceevents',\n 'v1',\n credentials=CREDENTIALS,\n )\n\n BODY = {\n 'ttl': {'seconds': 0},\n }\n NAME = 'subscriptions/\u003cvar translate=\"no\"\u003eSUBSCRIPTION_ID\u003c/var\u003e'\n response = (\n service.subscriptions()\n .patch(name=NAME, updateMask='ttl', body=BODY)\n .execute()\n )\n print(response)\n\n Replace the following:\n - \u003cvar translate=\"no\"\u003eSCOPES\u003c/var\u003e: One or more [OAuth scopes](/workspace/events/guides/auth) that support each event type for the subscription. Formatted as an array of strings. To list multiple scopes, separate by commas. For example, `'https://www.googleapis.com/auth/chat.spaces.readonly',\n 'https://www.googleapis.com/auth/chat.memberships.readonly'`.\n - \u003cvar translate=\"no\"\u003eSUBSCRIPTION_ID\u003c/var\u003e: The ID of the subscription. To get the ID, you can use any of the following:\n - The value of the [`uid`](/workspace/events/reference/rest/v1/subscriptions#Subscription.FIELDS.uid) field.\n - The ID of the resource name represented in the [`name`](/workspace/events/reference/rest/v1/subscriptions#Subscription.FIELDS.name) field. For example, if the resource name is `subscriptions/subscription-123`, use `subscription-123`.\n2. In your working directory, make sure you've stored your OAuth client ID\n credentials and named the file `credentials.json`. The code sample uses this JSON\n file to authenticate with Google Workspace and get user credentials. For instructions,\n see [Create OAuth client ID\n credentials](/workspace/events/guides/create-subscription#create-oauth).\n\n3. To update the Google Workspace subscription, run the following in\n your terminal:\n\n python3 update_subscription.py\n\nThe Google Workspace Events API returns a [long-running operation](/workspace/events/reference/rest/v1/operations) that contains the instance of the `Subscription` resource.\n\nTo get details about the updated `Subscription` resource, use the\n[`operations.get()`](/workspace/events/reference/rest/v1/operations/get) method\nand specify the `Operation` resource returned from your `subscriptions.update()`\nrequest. Otherwise, if you specify a `Operation` resource from a previous\nversion of the subscription, the response is empty.\n\nRelated topics\n--------------\n\n- [Get a subscription](/workspace/events/guides/get-subscription)\n- [List subscriptions](/workspace/events/guides/list-subscriptions)\n- [Create a subscription](/workspace/events/guides/create-subscription)\n- [Resolve errors and reactivate a subscription](/workspace/events/guides/reactivate-subscription)\n- [Delete a subscription](/workspace/events/guides/delete-subscription)"]]