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 une notification à votre application via Pub/Sub, qui contient des informations sur la requête
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 dans la section Intégrez 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 un ressource de compte qui suit la relation de l'utilisateur avec vous. Lorsque la ressource de compte est créée, vous recevez une notification via le sujet Pub/Sub qui a été 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
.