Eliminare un abbonamento a Google Workspace

Questa pagina spiega come eliminare un abbonamento a Google Workspace utilizzando il metodo subscriptions.delete().

Quando elimini un abbonamento, la tua app non riceve più eventi. Se un abbonamento scade, l'API Google Workspace Events lo elimina automaticamente.

Prerequisiti

  • Un progetto Apps Script:
    • Utilizza il tuo progetto Google Cloud anziché quello predefinito creato automaticamente da Apps Script.
    • Per tutti gli ambiti che hai aggiunto per configurare la schermata per il consenso OAuth, devi aggiungere anche gli ambiti al file appsscript.json nel progetto Apps Script. Ad esempio:
    • "oauthScopes": [
        "https://www.googleapis.com/auth/chat.messages.readonly"
      ]
          
    • Attiva il servizio avanzato Google Workspace Events.
  • Python 3.6 o versioni successive
  • Lo strumento di gestione dei pacchetti pip
  • Le librerie client Google più recenti per Python. Per installarli o aggiornarli, esegui il seguente comando nell'interfaccia a riga di comando:
      pip3 install --upgrade google-api-python-client google-auth-oauthlib
      
  • Un abbonamento a Google Workspace. Per crearne uno, consulta Creare una sottoscrizione.

  • Richiede l'autenticazione:

    • Per l'autenticazione utente, è necessario un ambito che supporti almeno uno dei tipi di evento per l'abbonamento. Per identificare un ambito, consulta Ambiti per tipo di evento.
    • Per l'autenticazione delle app, è richiesto l'ambito chat.bot (solo app Google Chat).

Eliminare un abbonamento autorizzato da un utente

Il seguente esempio di codice elimina una risorsa Subscription utilizzando l'autenticazione utente.

Per eliminare un abbonamento:

  1. Nel tuo progetto Apps Script, crea un nuovo file di script chiamato deleteSubscription e aggiungi il seguente codice:

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

    Sostituisci quanto segue:

    • SUBSCRIPTION_ID: l'ID dell'abbonamento. Per ottenere l'ID, puoi utilizzare una delle seguenti opzioni:
      • Il valore del campo uid.
      • L'ID del nome della risorsa rappresentato nel name. Ad esempio, se il nome della risorsa è subscriptions/subscription-123, utilizza subscription-123.
  2. Per eliminare l'abbonamento, esegui la funzione deleteSubscription nel tuo progetto Apps Script.

  1. Nella directory di lavoro, crea un file denominato delete_subscription.py e aggiungi il seguente codice:

    """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)
    

    Sostituisci quanto segue:

    • SCOPE: un ambito OAuth che supporta almeno un tipo di evento dell'abbonamento. Ad esempio, se il tuo abbonamento riceve eventi uno spazio di Chat aggiornato, https://www.googleapis.com/auth/chat.spaces.readonly.
    • SUBSCRIPTION_ID: l'ID dell'abbonamento. Per ottenere l'ID, puoi utilizzare una delle seguenti opzioni:
      • Il valore del campo uid.
      • L'ID del nome della risorsa rappresentato nel name. Ad esempio, se il nome della risorsa è subscriptions/subscription-123, utilizza subscription-123.
  2. Nella directory di lavoro, assicurati di aver archiviato le credenziali dell'ID client OAuth e di aver assegnato al file il nome client_secrets.json. L'esempio di codice utilizza questo file JSON per autenticarsi con Google Workspace e ottenere le credenziali utente. Per le istruzioni, consulta Creare le credenziali dell'ID client OAuth.

  3. Per eliminare l'abbonamento, esegui il seguente comando nel terminale:

    python3 delete_subscription.py
L'API Google Workspace Events restituisce un'operazione a lunga esecuzione che contiene l'istanza della risorsa Subscription.