Cómo borrar una suscripción a Google Workspace

En esta página, se explica cómo borrar una suscripción a Google Workspace con el método subscriptions.delete().

Cuando borras una suscripción, la app ya no recibe ningún evento. Si una suscripción vence, la API de Google Workspace Events la borra automáticamente.

Requisitos previos

Apps Script

  • Un proyecto de Apps Script:
    • Usa tu proyecto de Google Cloud en lugar del predeterminado que Apps Script crea automáticamente.
    • Si agregaste permisos para configurar la pantalla de consentimiento de OAuth, también debes agregarlos al archivo appsscript.json en tu proyecto de Apps Script. Por ejemplo:
    • "oauthScopes": [
        "https://www.googleapis.com/auth/chat.messages.readonly"
      ]
          
    • Habilita el servicio avanzado Google Workspace Events.

Python

  • Python 3.6 o superior
  • 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 de usuarios, requiere un alcance que admita al menos uno de los tipos de eventos de la suscripción. Para identificar un alcance, consulta Permisos por tipo de evento.
    • Para la autenticación de apps, requiere el permiso chat.bot (solo apps de Google Chat).

Borra una suscripción con la autorización de un usuario

En la siguiente muestra de código, se borra un recurso Subscription mediante la autenticación del usuario.

Para borrar una suscripción, haz lo siguiente:

Apps Script

  1. En tu proyecto de Apps Script, crea un nuevo archivo de secuencia de comandos llamado deleteSubscription y agrega el siguiente código:

    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);
    }
    

    Reemplaza lo siguiente:

    • SUBSCRIPTION_ID: Es el ID de la suscripción. Para obtener el ID, puedes usar cualquiera de las siguientes opciones:
      • El valor del campo uid.
      • El ID del nombre del recurso representado en el campo name. Por ejemplo, si el nombre del recurso es subscriptions/subscription-123, usa subscription-123.
  2. Para borrar la suscripción, ejecuta la función deleteSubscription en tu proyecto de Apps Script.

Python

  1. En tu directorio de trabajo, crea un archivo llamado delete_subscription.py y agrega el siguiente código:

    """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('client_secrets.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)
    

    Reemplaza lo siguiente:

    • SCOPE: Es un alcance de OAuth que admite al menos un tipo de evento de la suscripción. Por ejemplo, si tu suscripción recibe eventos en un espacio de Chat actualizado, https://www.googleapis.com/auth/chat.spaces.readonly.
    • SUBSCRIPTION_ID: Es el ID de la suscripción. Para obtener el ID, puedes usar cualquiera de las siguientes opciones:
      • El valor del campo uid.
      • El ID del nombre del recurso representado en el campo name. Por ejemplo, si el nombre del recurso es subscriptions/subscription-123, usa subscription-123.
  2. En el directorio de trabajo, asegúrate de haber almacenado las credenciales de tu ID de cliente de OAuth y de haber asignado el nombre client_secrets.json al archivo. En la muestra de código, se usa este archivo JSON para autenticarse con Google Workspace y obtener credenciales de usuario. Para obtener instrucciones, consulta Cómo crear credenciales de ID de cliente de OAuth.

  3. Para borrar la suscripción, ejecuta lo siguiente en tu terminal:

    python3 delete_subscription.py
    
La API de Google Workspace Events muestra una operación de larga duración que contiene la instancia del recurso Subscription.