Quando un cliente acquista un'offerta privata, Google crea un diritto, che indica che il cliente ha acquistato l'offerta di Cloud Marketplace.
Questo articolo illustra come gestire i diritti per le tue offerte private utilizzando l'API Partner Procurement.
Per maggiori dettagli sull'utilizzo dell'API Partner Procurement per le offerte private, visita la documentazione di riferimento.
Approvare un diritto
Quando un cliente acquista un'offerta privata, Cloud Marketplace crea una e invia il seguente messaggio Pub/Sub al tuo prodotto:
{ "eventId": "...", "eventType": "ENTITLEMENT_CREATION_REQUESTED", "entitlement": { "id": "ENTITLEMENT_ID", "updateTime": "...", "newOfferDuration": "P1Y6M", // Contract duration for the offer "newOfferEndTime": "", // Ending time for the offer }, }
In questo esempio, ENTITLEMENT_ID è un ID creato da Google Cloud Marketplace.
Se l'offerta è stata creata con una durata, il messaggio mostra la durata in
anni e mesi e il campo newOfferEndTime
è vuoto. Se l'offerta era
creata con un'ora di fine specificata, il messaggio mostra la fine dell'offerta
e il campo newOfferDuration
è vuoto.
Nel tuo sistema, aggiorna l'account dell'utente in modo che rifletta l'acquisto dell'offerta. Per approvare il diritto, invia una richiesta HTTP POST
all'API Partner Procurement e invia il HTTP POST
che stai approvando:
POST v1/providers/YOUR_PARTNER_ID/entitlements/ENTITLEMENT_ID:approve
Rifiutare un diritto
Per rifiutare un diritto, utilizza il metodo reject
nella richiesta HTTP POST
:
POST v1/providers/YOUR_PARTNER_ID/entitlements/ENTITLEMENT_ID:reject
Sostituire un'offerta attiva
A seconda di come hai configurato l'offerta privata, il tuo cliente potrebbe essere in grado di a sostituire l'offerta. Se un cliente seleziona una nuova offerta privata, riceverai un Messaggio Pub/Sub, nel seguente formato:
{ "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 }, }
In questo esempio, OFFER2 è l'offerta sostitutiva e ENTITLEMENT_ID è un ID creato da Cloud Marketplace. La durata dell'offerta è indicata in anni e mesi.
Per approvare la sostituzione dell'offerta, invia la seguente richiesta HTTP POST
all'API Partner Procurement:
POST v1/providers/YOUR_PARTNER_ID/entitlements/ENTITLEMENT_ID:approvePlanChange
Il corpo della richiesta deve contenere il piano dell'offerta che deve essere approvata:
{ "pendingPlanName": PLAN_NAME }
Una volta approvata la modifica, ricevi un altro messaggio Pub/Sub quando la modifica diventa effettiva. Nel messaggio, il campo eventType
diventa
ENTITLEMENT_PLAN_CHANGED
. Per controllare lo stato di un piano:
Richiesta HTTP GET
all'API Partner Procurement:
GET v1/providers/YOUR_PARTNER_ID/entitlements/ENTITLEMENT_ID
La risposta è simile alla seguente, con il campo dello stato che indica se la nuova offerta è attiva o se la modifica dell'offerta è ancora in attesa:
{ "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": "", ... }
Completare altre attività relative ai diritti
Per altre attività relative ai diritti non specifiche per le offerte private, consulta la documentazione pubblica di Cloud Marketplace:
Elenco di tipi di evento per le attività dell'account di offerte private
La tabella seguente include i eventType
che il tuo prodotto potrebbe ricevere in
Messaggi Pub/Sub per le offerte private.
Per l'elenco completo, vedi Elenco dei tipi di eventi per le attività dell'account.
eventType | Descrizione |
---|---|
ENTITLEMENT_OFFER_ENDED |
Indica che l'offerta privata di un cliente è terminata. L'offerta
attiva un evento ENTITLEMENT_CANCELLED o rimane attivo con
prezzi non scontati. |
Passaggi successivi
- Crea un'offerta privata per un cliente specifico.