En règle générale, votre application doit gérer le scénario suivant :
Un utilisateur effectue une requête ou une modification dans Cloud Marketplace, par exemple en souscrivant à votre produit.
Cloud Marketplace envoie à votre application une notification via Pub/Sub contenant des informations sur la requête dans le champ
eventType
. Par exemple, si un utilisateur change son droit, le champeventType
est défini surENTITLEMENT_PLAN_CHANGED
.Consultez la liste complète des
eventType
s possibles.Pour approuver la requête, votre application envoie une requête
HTTP POST
à l'API Partner Procurement.
Les sections suivantes décrivent les types de requêtes que les utilisateurs peuvent effectuer et ce que votre application doit faire pour gérer ces requêtes.
Pour les appels d'API décrits dans cette section, utilisez ce point de terminaison :
https://cloudcommerceprocurement.googleapis.com/
Avant de commencer
- Configurez l'accès à l'API partenaire Procurement pour Cloud Commerce comme décrit à la page Intégrer votre application.
Créer un compte pour un nouvel utilisateur
Lorsqu'un utilisateur achète votre produit pour la première fois, Cloud Marketplace crée une ressource de compte qui suit la relation de l'utilisateur avec vous. Pour les achats ultérieurs de produits dont vous êtes propriétaire, la même ressource de compte sera réutilisée. Chaque fois qu'un utilisateur achète l'un de vos produits pour la première fois, si vous avez activé les notifications de compte pour ce produit, vous recevez une notification via le sujet Pub/Sub créé pour vous. Le message Pub/Sub est au format suivant :
{ "eventId": "...", "providerId": "YOUR_PARTNER_ID", "account": { "id": "USER_ACCOUNT_ID", "updateTime": "..." } }
où USER_ACCOUNT_ID est l'ID de compte créé par Cloud Marketplace et YOUR_PARTNER_ID est un ID qui vous est attribué lorsque l'ingénieur partenaire permet l'accès à l'API Partner Procurement.
Simultanément, l'utilisateur est dirigé vers votre page d'inscription, où il crée un compte dans votre système. Pour en savoir plus sur la création de la page d'inscription, consultez la page Intégrer l'interface de votre application.
Approuver le compte d'un utilisateur
Une fois l'utilisateur inscrit, votre application doit appeler l'API Partner Procurement et indiquer que le compte a été approuvé.
Les comptes sont créés dans l'état ACCOUNT_ACTIVE
, mais une entrée PENDING
est présente dans le champ approvals
nommé signup
, ce qui indique que l'utilisateur ne s'est pas encore inscrit. Pour approuver le compte après l'inscription de l'utilisateur, utilisez la requête HTTP POST
suivante :
POST v1/providers/YOUR_PARTNER_ID/accounts/USER_ACCOUNT_ID:approve {'approvalName': 'signup'}
Vérifier l'état du compte d'un utilisateur
Pour vérifier l'état d'un compte associé, utilisez la demande HTTP GET
suivante :
GET v1/providers/YOUR_PARTNER_ID/accounts/USER_ACCOUNT_ID
La réponse est au format suivant :
{ "name": "providers/YOUR_PARTNER_ID/accounts/USER_ACCOUNT_ID", "provider": "acme-services", "state": "ACCOUNT_ACTIVE", "approvals": [{ "name": "signup", "state": "APPROVED", "updateTime": "...", }], "updateTime": "...", "createTime": "..." }
Pour obtenir la liste des états de compte possibles, consultez la référence API providers.accounts
.