이 페이지에서는 subscriptions.update()
메서드를 사용하여 Google Workspace 구독을 갱신하는 방법을 설명합니다. 이 메서드를 사용하여 최대 만료 시간으로 구독을 갱신하는 등 구독의 만료 시간을 업데이트하거나 대상 리소스에 관해 수신할 이벤트 유형 목록을 업데이트할 수 있습니다.
Apps Script
- Google Workspace 구독 정기 결제를 만들려면 정기 결제 만들기를 참고하세요.
구독의 모든 이벤트 유형을 지원하는 범위 하나 이상를 사용하여 사용자를 인증해야 합니다.
- Apps Script 프로젝트:
- Apps Script에서 자동으로 생성된 기본 프로젝트 대신 Google Cloud 프로젝트를 사용합니다.
- 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 구독 정기 결제를 만들려면 정기 결제 만들기를 참고하세요.
구독의 모든 이벤트 유형을 지원하는 범위 하나 이상를 사용하여 사용자를 인증해야 합니다.
Google Workspace 구독 갱신하기
이 섹션에서는 Google Workspace Events API의 subscriptions.update()
메서드를 사용하여 구독을 최대 만료 시간으로 갱신합니다. 최대 만료 시간을 지정하려면 Subscription
리소스의 ttl
필드를 0
로 업데이트합니다.
최대 만료 시간은 이벤트 페이로드에 포함된 리소스 데이터에 따라 다릅니다. 만료 시간에 대해 자세히 알아보려면 Google Workspace 이벤트의 이벤트 데이터를 참고하세요.
Google Workspace 구독을 갱신하려면 다음 단계를 따르세요.
Apps Script
Apps Script 프로젝트에서
updateSubscription
라는 새 스크립트 파일을 만들고 다음 코드를 추가합니다.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); }
다음을 바꿉니다.
Google Workspace 구독을 업데이트하려면 Apps Script 프로젝트에서
updateSubscription
함수를 실행합니다.
Python
작업 디렉터리에서
update_subscription.py
라는 파일을 만들고 다음 코드를 추가합니다."""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('client_secrets.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)
다음을 바꿉니다.
SCOPES
: 구독의 각 이벤트 유형을 지원하는 OAuth 범위 1개 이상 문자열 배열 형식입니다. 여러 범위를 나열하려면 쉼표로 구분하세요.'https://www.googleapis.com/auth/chat.spaces.readonly', 'https://www.googleapis.com/auth/chat.memberships.readonly'
를 예로 들 수 있습니다.SUBSCRIPTION_ID
: 구독 ID입니다. ID를 가져오려면 다음 중 하나를 사용하면 됩니다.
작업 디렉터리에서 OAuth 클라이언트 ID 사용자 인증 정보를 저장하고 파일 이름을
client_secrets.json
로 지정했는지 확인합니다. 이 코드 샘플은 이 JSON 파일을 사용하여 Google Workspace에 인증하고 사용자 사용자 인증 정보를 가져옵니다. 자세한 내용은 OAuth 클라이언트 ID 사용자 인증 정보 만들기를 참고하세요.Google Workspace 구독을 업데이트하려면 터미널에서 다음을 실행합니다.
python3 update_subscription.py
Subscription
리소스의 인스턴스를 포함하는 장기 실행 작업을 반환합니다.
업데이트된 Subscription
리소스에 관한 세부정보를 가져오려면 operations.get()
메서드를 사용하고 subscriptions.update()
요청에서 반환된 Operation
리소스를 지정합니다. 그렇지 않고 이전 버전의 정기 결제에서 Operation
리소스를 지정하면 응답이 비어 있습니다.