המדריך למתחילים של Python

במדריכים למתחילים מוסבר איך להגדיר ולהפעיל אפליקציה שקוראת ל-Google Workspace API.

כדי לטפל בפרטים מסוימים בתהליך האימות וההרשאה, המדריכים למתחילים של Google Workspace משתמשים בספריות לקוח ה-API. אנחנו ממליצים להשתמש בספריות הלקוח של האפליקציות שלכם. המדריך למתחילים משתמש בגישת אימות פשוטה שמתאימה לסביבת הבדיקה. בסביבת ייצור, מומלץ ללמוד על אימות והרשאה לפני לבחור את פרטי הכניסה שמתאימים לאפליקציה.

יוצרים אפליקציית שורת פקודה ב-Python ששולחת בקשות אל ה-API למפיצים.

מטרות

  • הגדרת הסביבה.
  • התקן את ספריית הלקוח.
  • מגדירים את הדוגמה.
  • מריצים את הדוגמה.

דרישות מוקדמות

על מנת להפעיל את המדריך למתחילים, דרושות הדרישות המוקדמות הבאות:

  • מופע של דומיין מפיץ של Google.
  • הסכם שותף של Google Workspace שבוצע במלואו.

הגדרת הסביבה

כדי להשלים את המדריך למתחילים, צריך להגדיר את הסביבה.

הפעלת ה-API

כדי להשתמש ב-Google APIs, צריך להפעיל אותם בפרויקט ב-Google Cloud. אפשר להפעיל ממשק API אחד או יותר בפרויקט אחד ב-Google Cloud.
  • במסוף Google Cloud, מפעילים את ה-API של המפיץ.

    הפעלת ה-API

אם אתם משתמשים בפרויקט חדש ב-Google Cloud כדי להשלים את המדריך למתחילים, צריך להגדיר את מסך ההסכמה של OAuth ולהוסיף את עצמכם כמשתמשי בדיקה. אם כבר השלמתם את השלב הזה בפרויקט Cloud, דלגו לקטע הבא.

  1. במסוף Google Cloud, נכנסים לתפריט > APIs & Services > מסך ההסכמה של OAuth.

    מעבר למסך ההסכמה של OAuth

  2. בוחרים את סוג המשתמש לאפליקציה ולוחצים על יצירה.
  3. ממלאים את טופס ההרשמה לאפליקציה ולוחצים על שמירה והמשך.
  4. בינתיים, אפשר לדלג על הוספת היקפים וללחוץ על שמירה והמשך. בעתיד, כשתיצור אפליקציה לשימוש מחוץ לארגון שלך ב-Google Workspace, יהיה עליך להוסיף ולאמת את היקפי ההרשאות שנדרשים לאפליקציה.

  5. אם בחרתם בסוג המשתמש חיצוני, מוסיפים משתמשי בדיקה:
    1. בקטע משתמשים לבדיקה, לוחצים על הוספת משתמשים.
    2. מזינים את כתובת האימייל שלכם ואת שאר המשתמשים המורשים לבדיקה, ואז לוחצים על Save and Continue (שמירה והמשך).
  6. לבדוק את הסיכום של רישום האפליקציה. כדי לבצע שינויים, לוחצים על עריכה. אם הרישום של האפליקציה נראה בסדר, לוחצים על Back to Dashboard (חזרה למרכז השליטה).

אישור פרטי כניסה לאפליקציה בשולחן העבודה

כדי לאמת משתמשי קצה ולגשת לנתוני המשתמשים באפליקציה, צריך ליצור מזהה לקוח אחד או יותר של OAuth 2.0. מזהה הלקוח משמש לזיהוי אפליקציה יחידה לשרתי OAuth של Google. אם האפליקציה פועלת בכמה פלטפורמות, צריך ליצור מזהה לקוח נפרד לכל פלטפורמה.
  1. במסוף Google Cloud, נכנסים לתפריט > APIs & Services > Credentials.

    כניסה לדף Credentials

  2. לוחצים על יצירת פרטי כניסה > מזהה לקוח OAuth.
  3. לוחצים על סוג האפליקציה > אפליקציה למחשב.
  4. בשדה שם, מקלידים שם לפרטי הכניסה. השם הזה מוצג רק במסוף Google Cloud.
  5. לוחצים על יצירה. מופיע המסך של לקוח OAuth שנוצר, ומוצגים בו מזהה הלקוח וסוד הלקוח החדשים.
  6. לוחצים על אישור. פרטי הכניסה החדשים שנוצרו מופיעים בקטע מזהי לקוח ב-OAuth 2.0.
  7. שומרים את קובץ ה-JSON שהורדתם בתור credentials.json ומעבירים אותו לספריית העבודה.

התקן את ספריית הלקוח של Google

  • התקן את ספריית הלקוח של Google עבור Python:

    pip install --upgrade google-api-python-client google-auth-httplib2 google-auth-oauthlib
    

הגדרת הדוגמה

  1. בספריית העבודה, יוצרים קובץ בשם quickstart.py.
  2. יש לכלול את הקוד הבא ב-quickstart.py:

    admin_sdk/reseller/quickstart.py
    import os.path
    
    from google.auth.transport.requests import Request
    from google.oauth2.credentials import Credentials
    from google_auth_oauthlib.flow import InstalledAppFlow
    from googleapiclient.discovery import build
    
    # If modifying these scopes, delete the file token.json.
    SCOPES = ["https://www.googleapis.com/auth/apps.order"]
    
    
    def main():
      """Calls the Admin SDK Reseller API. Prints the customer ID, SKU ID,
      and plan name of the first 10 subscriptions managed by the domain.
      """
      creds = None
      # The file token.json stores the user's access and refresh tokens, and is
      # created automatically when the authorization flow completes for the first
      # time.
      if os.path.exists("token.json"):
        creds = Credentials.from_authorized_user_file("token.json", SCOPES)
      # If there are no (valid) credentials available, let the user log in.
      if not creds or not creds.valid:
        if creds and creds.expired and creds.refresh_token:
          creds.refresh(Request())
        else:
          flow = InstalledAppFlow.from_client_secrets_file(
              "credentials.json", SCOPES
          )
          creds = flow.run_local_server(port=0)
        # Save the credentials for the next run
        with open("token.json", "w") as token:
          token.write(creds.to_json())
    
      service = build("reseller", "v1", credentials=creds)
    
      # Call the Admin SDK Reseller API
      print("Getting the first 10 subscriptions")
      results = service.subscriptions().list(maxResults=10).execute()
      subscriptions = results.get("subscriptions", [])
      if not subscriptions:
        print("No subscriptions found.")
      else:
        print("Subscriptions:")
        for subscription in subscriptions:
          print(
              "{0} ({1}, {2})".format(
                  subscription["customerId"],
                  subscription["skuId"],
                  subscription["plan"]["planName"],
              )
          )
    
    
    if __name__ == "__main__":
      main()

הרצת הדוגמה

  1. בספריית העבודה, יוצרים ומריצים את הדוגמה:

    python3 quickstart.py
    
  1. בפעם הראשונה שמריצים את הדוגמה, מוצגת בקשה להעניק הרשאת גישה:
    1. אם עדיין לא נכנסתם לחשבון Google, נכנסים כשמוצגת בקשה לעשות זאת. אם נכנסת לכמה חשבונות, צריך לבחור חשבון אחד שישמש לצורך הרשאה.
    2. לוחצים על אישור.

    אפליקציית Python שלך מפעילה את ה-API של המפיץ וקוראת לו להפעיל אותו.

    פרטי ההרשאות מאוחסנים במערכת הקבצים, כך שבפעם הבאה שמריצים את הקוד לדוגמה לא תוצג בקשה להרשאה.

השלבים הבאים