Получите подробную информацию о подписке на Google Workspace

На этой странице объясняется, как получить подробную информацию о подписке Google Workspace с помощью метода subscriptions.get() .

При вызове этого метода с аутентификацией пользователя метод возвращает информацию о подписке, авторизованной пользователем. При использовании аутентификации приложения метод может возвращать информацию о любой подписке для приложения.

Предпосылки

Скрипт приложений

  • Проект Apps Script:
    • Используйте свой проект Google Cloud вместо проекта по умолчанию, созданного автоматически Apps Script.
    • Для всех областей действия, добавленных для настройки экрана согласия OAuth, необходимо также добавить их в файл appsscript.json в проекте Apps Script. Например, если вы указали область действия chat.messages , добавьте следующее:
    • "oauthScopes": [
        "https://www.googleapis.com/auth/chat.messages"
      ]
          
    • Включите расширенную службу Google Workspace Events .

Питон

  • Python 3.6 или выше
  • Инструмент управления пакетами pip
  • Последние клиентские библиотеки Google для Python. Чтобы установить или обновить их, выполните следующую команду в командной строке:
      pip3 install --upgrade google-api-python-client google-auth-oauthlib
      

Оформить подписку, авторизованную пользователем

Следующий пример кода получает информацию о ресурсе Subscription , используя аутентификацию пользователя. При аутентификации пользователя метод возвращает подписку, которую пользователь разрешил приложению создать.

Чтобы получить подписку, авторизованную пользователем:

Скрипт приложений

  1. В проекте Apps Script создайте новый файл скрипта с именем 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);
    }
    

    Заменить следующее:

    • SUBSCRIPTION_ID : Идентификатор подписки. Чтобы получить идентификатор, воспользуйтесь любым из следующих способов:
      • Значение поля uid .
      • Идентификатор имени ресурса, представленный в поле name . Например, если имя ресурса — subscriptions/subscription-123 , используйте subscription-123 .
  2. Чтобы получить подписку, запустите функцию getSubscription в своем проекте Apps Script.

Питон

  1. В рабочем каталоге создайте файл с именем 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('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'
    subscription = service.subscriptions().get(name=NAME).execute()
    print(subscription)
    

    Заменить следующее:

    • SCOPE : область действия OAuth, поддерживающая как минимум один тип событий из подписки . Например, если ваша подписка получает события в обновлённом чат-пространстве, https://www.googleapis.com/auth/chat.spaces.readonly .
    • SUBSCRIPTION_ID : Идентификатор подписки. Чтобы получить идентификатор, воспользуйтесь любым из следующих способов:
      • Значение поля uid .
      • Идентификатор имени ресурса, представленный в поле name . Например, если имя ресурса — subscriptions/subscription-123 , используйте subscription-123 .
  2. Убедитесь, что вы сохранили учётные данные OAuth-клиента в рабочем каталоге и назвали файл credentials.json . В примере кода этот JSON-файл используется для аутентификации в Google Workspace и получения учётных данных пользователя. Инструкции см. в разделе Создание учётных данных OAuth-клиента .

  3. Чтобы оформить подписку, выполните в терминале следующее:

    python3 get_subscription.py