Obtenir des informations sur un abonnement Google Workspace

Cette page explique comment obtenir des informations sur un abonnement Google Workspace à l'aide de la méthode subscriptions.get().

Lorsque vous appelez cette méthode avec l'authentification de l'utilisateur, elle renvoie des informations sur un abonnement autorisé par l'utilisateur. Lorsque vous utilisez l'authentification d'application, la méthode peut renvoyer des détails sur n'importe quel abonnement à l'application.

Prérequis

Apps Script ;

  • Un projet Apps Script:
    • Utilisez votre projet Google Cloud au lieu de celui par défaut créé automatiquement par Apps Script.
    • Tous les champs d'application que vous avez ajoutés pour configurer l'écran de consentement OAuth doivent également être inclus dans le fichier appsscript.json de votre projet Apps Script. Exemple :
    • "oauthScopes": [
        "https://www.googleapis.com/auth/chat.messages.readonly"
      ]
          
    • Activez le service avancé Google Workspace Events.

Python

  • Python 3.6 ou version ultérieure
  • L'outil de gestion des packages pip
  • Les dernières bibliothèques clientes Google pour Python. Pour les installer ou les mettre à jour, exécutez la commande suivante dans votre interface de ligne de commande :
      pip3 install --upgrade google-api-python-client google-auth-oauthlib
      
  • Vous devez disposer d'un abonnement Google Workspace. Pour en créer un, consultez la section Créer un abonnement.

  • Authentification requise:

    • Pour l'authentification des utilisateurs, nécessite un champ d'application compatible avec au moins l'un des types d'événements pour l'abonnement. Pour identifier un champ d'application, consultez Portées par type d'événement.
    • Pour l'authentification des applications, nécessite le champ d'application chat.bot (applications Google Chat uniquement).

Obtenir un abonnement autorisé par un utilisateur

L'exemple de code suivant permet d'obtenir des informations sur une ressource Subscription à l'aide de l'authentification des utilisateurs. Une fois authentifié en tant qu'utilisateur, la méthode renvoie un abonnement que l'utilisateur a autorisé à créer par l'application.

Pour obtenir un abonnement autorisé par un utilisateur:

Apps Script ;

  1. Dans votre projet Apps Script, créez un fichier de script nommé getSubscription et ajoutez le code suivant:

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

    Remplacez les éléments suivants :

    • SUBSCRIPTION_ID: ID de l'abonnement. Pour obtenir l'ID, vous pouvez utiliser l'une des méthodes suivantes :
      • Valeur du champ uid.
      • ID du nom de ressource représenté dans le champ name. Par exemple, si le nom de la ressource est subscriptions/subscription-123, utilisez subscription-123.
  2. Pour obtenir l'abonnement, exécutez la fonction getSubscription dans votre projet Apps Script.

Python

  1. Dans votre répertoire de travail, créez un fichier nommé get_subscription.py et ajoutez le code suivant:

    """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('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'
    subscription = service.subscriptions().get(name=NAME).execute()
    print(subscription)
    

    Remplacez les éléments suivants :

    • SCOPE: champ d'application OAuth compatible avec au moins un type d'événement de l'abonnement. Par exemple, si votre abonnement reçoit des événements pour un espace Chat mis à jour, https://www.googleapis.com/auth/chat.spaces.readonly.
    • SUBSCRIPTION_ID: ID de l'abonnement. Pour obtenir l'ID, vous pouvez utiliser l'une des méthodes suivantes :
      • Valeur du champ uid.
      • ID du nom de ressource représenté dans le champ name. Par exemple, si le nom de la ressource est subscriptions/subscription-123, utilisez subscription-123.
  2. Dans votre répertoire de travail, vérifiez que vous avez stocké les identifiants de votre ID client OAuth et que vous avez nommé le fichier client_secrets.json. L'exemple de code utilise ce fichier JSON pour s'authentifier auprès de Google Workspace et obtenir les identifiants de l'utilisateur. Pour obtenir des instructions, consultez Créer des identifiants d'ID client OAuth.

  3. Pour obtenir l'abonnement, exécutez la commande suivante dans votre terminal:

    python3 get_subscription.py