Quando um cliente compra uma oferta particular, o Google cria uma titularidade, que indica que ele comprou a oferta do Cloud Marketplace.
Neste artigo, mostramos como gerenciar direitos para suas ofertas privadas usando a API Partner Procurement.
Para saber como usar a API Partner Procurement para ofertas privadas, acesse a documentação de referência.
Aprovar um direito
Quando um cliente compra uma oferta privada, o Cloud Marketplace cria uma do produto e envia a seguinte mensagem do Pub/Sub para seu produto:
{ "eventId": "...", "eventType": "ENTITLEMENT_CREATION_REQUESTED", "entitlement": { "id": "ENTITLEMENT_ID", "updateTime": "...", "newOfferDuration": "P1Y6M", // Contract duration for the offer "newOfferEndTime": "", // Ending time for the offer }, }
Neste exemplo, ENTITLEMENT_ID é um ID criado pela no Cloud Marketplace.
Se a oferta foi criada com uma duração, a mensagem mostra a duração em
anos e meses, e o campo newOfferEndTime
está vazio. Se a oferta for
for criada com uma hora de término especificada, a mensagem exibirá o término da oferta
horário e o campo newOfferDuration
está vazio.
No seu sistema, atualize a conta do usuário para refletir a compra do
que oferecem. Em seguida, para aprovar o direito, faça uma solicitação HTTP POST
à
API Partner Procurement e envie o ENTITLEMENT_ID que
você está aprovando:
POST v1/providers/YOUR_PARTNER_ID/entitlements/ENTITLEMENT_ID:approve
Recusar um direito
Para rejeitar um direito, use o método reject
na solicitação HTTP POST
:
POST v1/providers/YOUR_PARTNER_ID/entitlements/ENTITLEMENT_ID:reject
Substituir uma oferta ativa
Dependendo de como você configura a oferta privada, o cliente pode substituir a oferta. Se um cliente selecionar uma nova oferta privada, você receberá uma mensagem do Pub/Sub no seguinte 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 }, }
Neste exemplo, OFFER2 é a oferta de substituição e ENTITLEMENT_ID é um ID criado pelo Cloud Marketplace. A oferta e a duração é fornecida em anos e meses.
Para aprovar a substituição da oferta, faça a seguinte solicitação HTTP POST
à
API Partner Procurement:
POST v1/providers/YOUR_PARTNER_ID/entitlements/ENTITLEMENT_ID:approvePlanChange
O corpo da solicitação precisa ter o plano da oferta que está sendo aprovada:
{ "pendingPlanName": PLAN_NAME }
Depois que a alteração for aprovada, você receberá outra mensagem do Pub/Sub quando a
alteração entrar em vigor. Na mensagem, o campo eventType
muda para ENTITLEMENT_PLAN_CHANGED
. Para verificar o status de um plano, faça o seguinte
Solicitação HTTP GET
para a API Partner Procurement:
GET v1/providers/YOUR_PARTNER_ID/entitlements/ENTITLEMENT_ID
A resposta é semelhante à seguinte, com o campo state indicando se a nova oferta está ativa ou se a alteração da oferta ainda está pendente.
{ "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": "", ... }
Concluir outras tarefas de direitos
Para outras tarefas de direitos que não sejam específicas de Ofertas privadas, consulte o Documentação pública do Cloud Marketplace:
Lista de tipos de evento para tarefas da conta de oferta particular
A tabela a seguir inclui eventType
s que o produto pode receber em
mensagens do Pub/Sub para ofertas privadas.
Para ver a lista completa, consulte Lista de tipos de eventos para tarefas da conta.
eventType | Descrição |
---|---|
ENTITLEMENT_OFFER_ENDED |
Indica que a oferta privada de um cliente terminou. A oferta
aciona um evento ENTITLEMENT_CANCELLED ou permanece ativo com
preços sem desconto. |
A seguir
- Crie uma oferta privada para um cliente específico.