Lorsqu'un client achète une offre privée, Google crée un droit, qui indique qu'il a acheté l'offre auprès de Cloud Marketplace.
Cet article explique comment gérer les droits d'accès à vos offres privées à l'aide de l'API Partner Procurement.
Pour en savoir plus sur l'utilisation de l'API Partner Procurement pour les offres privées, consultez la documentation de référence.
Approuver un droit d'accès
Lorsqu'un client achète une offre privée, Cloud Marketplace crée un droit d'accès et envoie le message Pub/Sub suivant à votre produit:
{ "eventId": "...", "eventType": "ENTITLEMENT_CREATION_REQUESTED", "entitlement": { "id": "ENTITLEMENT_ID", "updateTime": "...", "newOfferDuration": "P1Y6M", // Contract duration for the offer "newOfferEndTime": "", // Ending time for the offer }, }
Dans cet exemple, ENTITLEMENT_ID est un ID créé par Cloud Marketplace.
Si l'offre a été créée avec une durée, le message affiche la durée en années et en mois, et le champ newOfferEndTime
est vide. Si l'offre a été créée avec une heure de fin spécifiée, le message indique l'heure de fin de l'offre et le champ newOfferDuration
est vide.
Dans votre système, mettez à jour le compte de l'utilisateur pour indiquer qu'il a acheté l'offre. Pour approuver le droit, envoyez une requête HTTP POST
à l'API Partner Procurement et envoyez l'ID ENTITLEMENT_ID que vous approuvez :
POST v1/providers/YOUR_PARTNER_ID/entitlements/ENTITLEMENT_ID:approve
Refuser un droit d'accès
Pour refuser un droit d'accès, utilisez la méthode reject
dans votre requête HTTP POST
:
POST v1/providers/YOUR_PARTNER_ID/entitlements/ENTITLEMENT_ID:reject
Remplacer une offre active
Selon la configuration de votre offre privée, votre client pourra peut-être remplacer son offre. Si un client sélectionne une nouvelle offre privée, vous recevez un message Pub/Sub au format suivant :
{ "eventId": "...", "eventType": "ENTITLEMENT_PLAN_CHANGE_REQUESTED", "entitlement": { "id": "ENTITLEMENT_ID", "newPlan": "ultimate", // New plan for the offer, "newOffer": "OFFER2", // New offer, "updateTime": "...", "newOfferDuration": "P2Y", // Contract duration for the new offer }, }
Dans cet exemple, OFFER2 est l'offre de remplacement et ENTITLEMENT_ID est un ID créé par Cloud Marketplace. La durée de l'offre est indiquée en années et en mois.
Pour approuver le remplacement de l'offre, envoyez la requête HTTP POST
suivante à l'API Partner Procurement :
POST v1/providers/YOUR_PARTNER_ID/entitlements/ENTITLEMENT_ID:approvePlanChange
L'organisme demandeur doit avoir le plan de l'offre en cours d'approbation :
{ "pendingPlanName": PLAN_NAME }
Une fois la modification approuvée, vous recevez un autre message Pub/Sub lorsque la modification prend effet. Dans le message, le champ eventType
devient ENTITLEMENT_PLAN_CHANGED
. Pour vérifier l'état d'un plan, envoyez la requête HTTP GET
suivante à l'API Partner Procurement:
GET v1/providers/YOUR_PARTNER_ID/entitlements/ENTITLEMENT_ID
La réponse est semblable à la suivante, avec le champ d'état indiquant si la nouvelle offre est active ou si le changement d'offre est toujours en attente.
{ "name": "providers/PARTNER_ID/entitlements/ENTITLEMENT_ID", "provider": "PARTNER_ID", "account": "USER_ACCOUNT_ID", "product": "example-server", "Offer": "OFFER1", "plan": "pro", "state": "ENTITLEMENT_PENDING_PLAN_CHANGE", "newPendingOffer": "OFFER2", "newPendingPlan": "ultimate", "newOfferDuration": "P2Y", "newOfferEndTime": "", ... }
Effectuer d'autres tâches liées aux droits d'accès
Pour les autres tâches liées aux droits d'accès qui ne sont pas spécifiques aux offres privées, reportez-vous à la documentation publique de Cloud Marketplace:
Liste des types d'événements pour les tâches de compte avec offre privée
Le tableau suivant inclut les eventType
que votre produit peut recevoir dans des messages Pub/Sub pour les offres privées.
Pour obtenir la liste complète, consultez la liste des types d'événements pour les tâches de compte.
eventType | Description |
---|---|
ENTITLEMENT_OFFER_ENDED |
Indique que l'offre privée d'un client est arrivée à expiration. L'offre déclenche un événement ENTITLEMENT_CANCELLED ou reste active avec un tarif sans remise. |
Étapes suivantes
- Créez une offre privée pour un client spécifique.