En esta página, se explica cómo obtener detalles sobre una suscripción a Google Workspace con el método subscriptions.get()
.
Cuando llamas a este método con la autenticación del usuario, este devuelve detalles sobre una suscripción autorizada por el usuario. Cuando usas la autenticación de la app, el método puede devolver detalles sobre cualquier suscripción de la app.
Requisitos previos
Apps Script
- Una suscripción a Google Workspace Para crear una, consulta Cómo crear una suscripción.
Requiere la autenticación del usuario con uno o más alcances que admitan todos los tipos de eventos para la suscripción.
- Un proyecto de Apps Script:
- Usa tu proyecto de Google Cloud en lugar del predeterminado que crea automáticamente Apps Script.
- Para todos los permisos que agregaste para configurar la pantalla de consentimiento de OAuth, también debes agregar los permisos al archivo
appsscript.json
en tu proyecto de Apps Script. Por ejemplo, si especificaste el permisochat.messages
, agrega lo siguiente: - Habilita el servicio avanzado de
Google Workspace Events
.
"oauthScopes": [ "https://www.googleapis.com/auth/chat.messages" ]
Python
- Python 3.6 o una versión posterior
- La herramienta de administración de paquetes pip
- Las bibliotecas cliente de Google más recientes para Python. Para instalarlos o actualizarlos, ejecuta el siguiente comando en tu interfaz de línea de comandos:
pip3 install --upgrade google-api-python-client google-auth-oauthlib
- Una suscripción a Google Workspace Para crear una, consulta Cómo crear una suscripción.
Requiere autenticación:
- Para la autenticación del usuario, se requiere un alcance que admita al menos uno de los tipos de eventos de la suscripción. Para identificar un alcance, consulta Alcances por tipo de evento.
- Para la autenticación de la app, se requiere el alcance
chat.bot
(solo para apps de Google Chat).
Obtén una suscripción autorizada por un usuario
En el siguiente ejemplo de código, se obtienen detalles sobre un recurso Subscription
con la autenticación del usuario. Cuando se autentica como usuario, el método devuelve una suscripción que el usuario autorizó a la app a crear.
Para obtener una suscripción autorizada por un usuario, haz lo siguiente:
Apps Script
En tu proyecto de Apps Script, crea un archivo de secuencia de comandos nuevo llamado
getSubscription
y agrega el siguiente código: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); }
Reemplaza lo siguiente:
Para obtener la suscripción, ejecuta la función
getSubscription
en tu proyecto de Apps Script.
Python
En tu directorio de trabajo, crea un archivo llamado
get_subscription.py
y agrega el siguiente código:"""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)
Reemplaza lo siguiente:
SCOPE
: Es un permiso de OAuth que admite al menos un tipo de evento de la suscripción. Por ejemplo, si tu suscripción recibe eventos de un espacio de Chat actualizado,https://www.googleapis.com/auth/chat.spaces.readonly
.SUBSCRIPTION_ID
: ID de la suscripción. Para obtener el ID, puedes usar cualquiera de las siguientes opciones:
En tu directorio de trabajo, asegúrate de haber almacenado tus credenciales de ID de cliente de OAuth y de haber nombrado el archivo
credentials.json
. La muestra de código usa este archivo JSON para autenticarse en Google Workspace y obtener credenciales de usuario. Para obtener instrucciones, consulta Crea credenciales de ID de cliente de OAuth.Para obtener la suscripción, ejecuta el siguiente comando en la terminal:
python3 get_subscription.py