Ottenere dettagli su un abbonamento a Google Workspace

Questa pagina spiega come ottenere i dettagli di un abbonamento a Google Workspace utilizzando il subscriptions.get() metodo.

Quando chiami questo metodo con l'autenticazione utente, il metodo restituisce i dettagli di un abbonamento autorizzato dall'utente. Quando utilizzi l'autenticazione dell'app, il metodo può restituire i dettagli di qualsiasi abbonamento per l'app.

Prerequisiti

Apps Script

  • 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 gli ambiti anche al file appsscript.json nel tuo progetto Apps Script. Ad esempio, se hai specificato l'ambito chat.messages, aggiungi quanto segue:
    • "oauthScopes": [
        "https://www.googleapis.com/auth/chat.messages"
      ]
          
    • Attiva il servizio avanzato Google Workspace Events.

Python

  • Python 3.6 o versioni successive
  • Lo strumento di gestione dei pacchetti pip
  • Le librerie client Google più recenti per Python. Per installarle o aggiornarle, esegui il seguente comando nell'interfaccia a riga di comando:
      pip3 install --upgrade google-api-python-client google-auth-oauthlib
      

Ottenere un abbonamento autorizzato da un utente

Il seguente esempio di codice ottiene i dettagli di una Subscription risorsa utilizzando l'autenticazione utente. Quando l'autenticazione viene eseguita come utente, il metodo restituisce un abbonamento che l'utente ha autorizzato l'app a creare.

Per ottenere un abbonamento autorizzato da un utente:

Apps Script

  1. Nel progetto Apps Script, crea un nuovo file di script denominato getSubscription e aggiungi il seguente codice:

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

    Sostituisci quanto segue:

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

Python

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

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

    Sostituisci quanto segue:

    • SCOPE: un ambito OAuth che supporta almeno un tipo di evento dell'abbonamento. Ad esempio, se l'abbonamento riceve eventi di 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 uno dei seguenti metodi:
      • Il valore del uid campo.
      • L'ID del nome della risorsa rappresentato nel name campo. Ad esempio, se il nome della risorsa è subscriptions/subscription-123, utilizza subscription-123.
  2. Nella directory di lavoro, assicurati di aver memorizzato le credenziali dell'ID client OAuth e di aver denominato il file credentials.json. L'esempio di codice utilizza questo file JSON per l'autenticazione con Google Workspace e per ottenere le credenziali utente. Per istruzioni, vedi Creare le credenziali dell'ID client OAuth.

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

    python3 get_subscription.py