Cette page a été traduite par l'API Cloud Translation.
Switch to English

Intégrer votre assistance

Cette section décrit le workflow d'assistance lorsque vous souhaitez fournir une assistance dans le cadre de votre produit.

Votre système doit être intégré à nos solutions pour que vous puissiez fournir une assistance aux clients qui ont acheté vos produits via Google. L'intégration est basée sur la fourniture des éléments suivants de la part de Google :

  • Une clé qui vous permettra de vérifier l'éligibilité à l'assistance d'un utilisateur dans le cadre du processus d'inscription.

  • Une API (l'API Subscriptions) à laquelle vous pouvez transmettre la clé pour interroger périodiquement l'état d'éligibilité à l'assistance d'un utilisateur.

Obtenir l'ID d'assistance de l'utilisateur

L'intégration de l'assistance s'articule autour d'un ID de compte externe, qui correspond à l'ID d'assistance de vos utilisateurs.

Les utilisateurs peuvent vous fournir leur ID d'assistance de plusieurs manières :

  • Vous créez un flux de travail pour l'assistance et spécifiez une URL au début de celui-ci. Google vous envoie ensuite l'ID de compte externe dans l'URL.
  • Lorsque vous créez votre produit dans le portail Partners, vous pouvez sélectionner l'option permettant d'afficher un bouton sur lequel les utilisateurs peuvent cliquer pour consulter leur ID d'assistance. Il pourra ensuite copier et vous envoyer l'ID d'assistance par e-mail, le saisir dans un formulaire Web ou le lire par e-mail à un représentant du service d'assistance.

Si vous mettez en œuvre un flux de travail pour l'assistance, celui-ci doit accepter l'ID de compte externe dans l'URL. L'ID de compte externe peut faire partie du chemin de l'URL, ou apparaître sous la forme d'une valeur de paramètre de requête, comme le montrent les exemples ci-dessous :

# External account ID in path
http://example.com/mysupportpage/{external_account_id}?someparameter=yes

# External account ID as a query parameter
http://example.com/mysupportpage?eid={external_account_id}&something_else

Le texte {external_account_id} de l'URL est remplacé par l'ID de compte externe. Si plusieurs produits sont répertoriés dans Google Cloud Marketplace, vous pouvez inclure un paramètre de requête afin d'identifier le produit concerné par l'URL.

Utiliser l'API d'abonnements

Après avoir obtenu l'ID de compte externe de l'utilisateur, vous pouvez vérifier à tout moment l'éligibilité à l'assistance de son compte à l'aide de l'API Subscriptions fournie par Google. L'éligibilité est suivie en recherchant les entités appelées "abonnements".

Chaque abonnement est associé à un ID d'abonnement unique et un abonnement unique est créé par client pour chaque produit répertorié dans Cloud Marketplace. Vous pouvez également interroger un abonnement par ID d'abonnement pour obtenir des informations supplémentaires. sur l'historique d'un client avec votre produit, tel que sa date de début, sa date de fin, etc.

Accès à l'API d'abonnements

L'API Subscriptions est une API non publique. Par conséquent, les développeurs et les projets nécessitant un accès doivent être répertoriés dans la liste.

Pour être autorisé et configuré, procédez comme suit:

  1. Envoyez une liste d'adresses e-mail pour les développeurs qui ont besoin d'accéder à la documentation de l'API à votre ingénieur partenaire Google Cloud Marketplace, ou à cloud-partner-onboarding@google.com. Il doit s'agir des adresses e-mail exactes que les développeurs utiliseront pour se connecter à http://console.developers.google.com. Ces développeurs seront ajoutés au groupe qui accorde l'autorisation d'accéder à la documentation de l'API d'abonnements.

  2. Envoyez l'ID du projet de votre produit à votre ingénieur partenaire Google Cloud Marketplace pour demander l'autorisation d'appeler l'API. Vous pouvez autoriser plusieurs projets si nécessaire.

  3. Activez l'API Cloud Billing en développant le menu dans le coin supérieur gauche de https://console.developers.google.com, en cliquant sur API et services, puis en recherchant et en activant l'API Cloud Billing.

  4. Créez un compte de service OAuth2 associé à votre projet, puis envoyez l'adresse e-mail de ce compte à votre ingénieur partenaire Google Cloud Marketplace. Cet utilisateur, autorisé à lire tous les abonnements, sera utilisé pour autoriser toutes les requêtes, à l'exception de les demandes effectuées par la demande d'autorisation du client via une boîte de dialogue OAuth.

Comme l'API Subscriptions n'est pas une API publique, elle n'est pas comprise par défaut dans la bibliothèque cliente Python. Si vous envisagez d'utiliser la bibliothèque cliente Python avec cette API, vous devez également contacter votre ingénieur partenaire Google afin d'obtenir de l'aide pour accéder au fichier de découverte.

Dans l'exemple d'initialisation ci-dessous, le nom du fichier de découverte correspond au chemin vers lequel il a été téléchargé.

   # Load the local copy of the discovery document
   f = file(os.path.join(os.path.dirname(__file__),
         "cloudbilling-subscriptions_discovery.json"), "r")
   discovery = f.read()
   f.close()

   # Construct a service from the local documents
   service = build_from_document(discovery,
         base="https://www.googleapis.com/",
         http=http)

La bibliothèque cliente est également compatible avec l'authentification OAuth à l'aide des identifiants client et des comptes de service OAuth2. Pour en savoir plus, consultez la documentation OAuth 2.0 dans la bibliothèque cliente des API Google pour Python.

Interroger l'API des abonnements

Pour pouvoir accéder aux données d'abonnement, vous devez créer un compte de service OAuth2 et nous indiquer le compte avec lequel vous souhaitez autoriser les requêtes d'API. Google permettra ensuite à ce compte de service de consulter les abonnements de tous vos clients. Pour en savoir plus, reportez-vous à la page Utiliser OAuth 2.0 pour l'authentification serveur à serveur.

L'API est une API RESTful en lecture seule qui renvoie des ressources d'abonnement, qui peuvent être utilisées pour obtenir les informations suivantes :

  • name : identifiant associé à une seule ressource d'abonnement.
  • externalAccountId : identifiant associé à un seul compte de facturation.
  • version : numéro de version mis à jour à chaque modification de l'enregistrement. Cela permet de détecter facilement les modifications depuis la dernière lecture.
  • statut : correspond à l'une des valeurs suivantes :
    • ACTIVE : l'abonnement est actuellement actif et le client devrait pouvoir recevoir une assistance de votre part. Un abonnement est considéré comme actif si le compte a eu une machine virtuelle active au cours des 30 derniers jours.
    • COMPLETE : l'abonnement n'est plus actif, car le client ne dispose d'aucune VM active en cours d'exécution avec votre produit et n'a pas enregistré de VM au cours des 30 derniers jours.

  • subscribedResources : liste des ressources couvertes par l'abonnement.
  • startDate : date à laquelle l'abonnement a commencé. Apparaît sous forme de chaîne au format RFC 3339.
  • endDate : date à laquelle l'abonnement a pris fin (s'il a pris fin), formatée sous forme de chaîne au format RFC 3339.
  • Libellé du dernier horodatage de pulsation (avec clé) : la valeur de ce libellé indique l'horodatage de la dernière pulsation de toute VM exécutant le produit. Exemple : cloudmarketplacepartner.googleapis.com/last_heartbeat_us.

Lorsqu'un client clique sur le lien pour accéder à votre site à partir de Google Cloud Console, vous devez vérifier que le client est autorisé à utiliser le lien en effectuant les demandes suivantes :

  1. Répertoriez les abonnements associés à l'ID de compte externe
  2. Rechercher l'abonnement actif pour le produit
  3. Obtenez les informations d'abonnement grâce à l'ID d'abonnement

Si le client est un utilisateur autorisé, la requête aboutit. Si ce n'est pas le cas, l'appel renvoie un code d'erreur non autorisé (HTTP 403).

Pour effectuer cette démarche, vous devez demander au client l'autorisation de consulter ses données d'abonnement lors du processus d'inscription à l'aide d'un flux de demande OAuth standard.

Les requêtes ultérieures d'actualisation des données d'abonnement utilisent le compte de service créé précédemment.

Flux d'enregistrement du service client

Une fois qu'un client a déployé votre produit via Cloud Marketplace ou via des API Compute Engine, Google Cloud Console affiche un lien vers votre site pour terminer l'inscription à l'assistance. Le lien inclut l'ID de compte externe associé au compte.

Votre site doit permettre au client de créer un compte et comporter toutes les informations de contact nécessaires. Google ne vous fournit aucune information personnelle concernant le client. Il vous incombe également de maintenir un mappage entre le compte du client et l'ID de compte externe fourni par Google.