בדף הזה מוסבר איך למחוק מינוי ל-Google Workspace באמצעות השיטה subscriptions.delete()
.
כשמוחקים מינוי, האפליקציה לא מקבלת יותר אירועים. אם המינוי יפוג, Google Workspace Events API ימחק אותו באופן אוטומטי.
דרישות מוקדמות
Apps Script
- מינוי ל-Google Workspace. כדי ליצור מינוי, אפשר לעיין במאמר יצירת מינוי.
נדרש אימות משתמש עם היקפי הרשאות שתומכים בכל סוגי האירועים של המינוי.
- פרויקט Apps Script:
- להשתמש בפרויקט Google Cloud שלכם במקום בפרויקט ברירת המחדל שנוצר אוטומטית על ידי Apps Script.
- לכל היקפי ההרשאות שהוספתם כדי להגדיר את מסך ההסכמה ל-OAuth, אתם צריכים להוסיף את היקפי ההרשאות גם לקובץ
appsscript.json
בפרויקט Apps Script. לדוגמה, אם ציינתם את ההיקףchat.messages
, צריך להוסיף את הפרטים הבאים: - מפעילים
את השירות המתקדם
Google Workspace Events
.
"oauthScopes": [ "https://www.googleapis.com/auth/chat.messages" ]
Python
- Python 3.6 ואילך
- כלי ניהול החבילות pip
- ספריות הלקוח העדכניות של Google ל-Python. כדי להתקין או לעדכן אותם, מריצים את הפקודה הבאה בממשק שורת הפקודה:
pip3 install --upgrade google-api-python-client google-auth-oauthlib
- מינוי ל-Google Workspace. כדי ליצור מינוי, אפשר לעיין במאמר יצירת מינוי.
נדרש אימות:
- לאימות משתמשים, נדרש היקף הרשאות שתומך לפחות באחד מסוגי האירועים של המינוי. כדי לזהות היקף, אפשר לעיין במאמר היקפים לפי סוג אירוע.
- לאימות אפליקציות, נדרש היקף ההרשאות
chat.bot
(אפליקציות של Google Chat בלבד).
מחיקת מינוי שאושר על ידי משתמש
דוגמת הקוד הבאה מוחקת משאב Subscription
באמצעות אימות משתמש.
כדי למחוק מינוי:
Apps Script
בפרויקט Apps Script, יוצרים קובץ סקריפט חדש בשם
deleteSubscription
ומוסיפים את הקוד הבא:function deleteSubscription() { // The name of the subscription to delete. const name = 'subscriptions/SUBSCRIPTION_ID'; // Call the Workspace Events API using the advanced service. const response = WorkspaceEvents.Subscriptions.remove(name); console.log(response); }
מחליפים את מה שכתוב בשדות הבאים:
כדי למחוק את המינוי, מריצים את הפונקציה
deleteSubscription
בפרויקט Apps Script.
Python
בתיקיית העבודה, יוצרים קובץ בשם
delete_subscription.py
ומוסיפים את הקוד הבא:"""Delete 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' response = service.subscriptions().delete(name=NAME).execute() print(response)
מחליפים את מה שכתוב בשדות הבאים:
-
SCOPE
: היקף הרשאות OAuth שתומך לפחות בסוג אחד של אירוע מהמינוי. לדוגמה, אם המינוי שלכם מקבל אירועים מרחב מעודכן ב-Chat, https://www.googleapis.com/auth/chat.spaces.readonly
. -
SUBSCRIPTION_ID
: מזהה המינוי. כדי לקבל את המזהה, אפשר להשתמש באחת מהאפשרויות הבאות:
-
בספריית העבודה, מוודאים ששמרתם את פרטי הכניסה של מזהה לקוח OAuth ונתתם לקובץ את השם
credentials.json
. בדוגמת הקוד נעשה שימוש בקובץ ה-JSON הזה כדי לבצע אימות ב-Google Workspace ולקבל פרטי כניסה של משתמשים. הוראות מפורטות זמינות במאמר בנושא יצירת פרטי כניסה של מזהה לקוח OAuth.כדי למחוק את המינוי, מריצים את הפקודה הבאה במסוף:
python3 delete_subscription.py
Subscription
.