Notificações do Amazon SNS para produtos de SaaS
Para receber notificações, assine tópicos do Amazon Simple Notification Service (Amazon SNS) do AWS Marketplace fornecidos durante a criação do produto. Os tópicos fornecem notificações sobre alterações nas assinaturas e nos direitos contratuais dos clientes para seus produtos. Isso permite que você saiba quando fornecer e revogar o acesso de clientes específicos.
nota
Durante o processo de criação do produto, você receberá o nome do recurso da Amazon (ARN) para o tópico do SNS. Por exemplo: arn:aws:sns:us-east-1:123456789012:aws-mp-subscription-notification-PRODUCTCODE
Os seguintes tópicos do Amazon SNS estão disponíveis para produtos de software como serviço (SaaS):
-
Tópico do Amazon SNS: aws-mp-entitlement-notification: este tópico notifica você quando os compradores criam um novo contrato, o atualizam, o renovam ou ele expira. Isso só está disponível para produtos com modelos de preços que incluem um contrato (também conhecido como Contratos de SaaS e Contratos de SaaS com consumo (excedentes)).
-
Tópico do Amazon SNS: aws-mp-subscription-notification: este tópico notifica você quando um comprador assina ou cancela a assinatura de um produto e inclui o
offer-identifier
para ofertas privadas e um sinalizador de avaliações gratuitas de SaaS. Isso está disponível para todos os modelos de preços, incluindo contratos e assinaturas (também conhecidos como Assinaturas de SaaS, Contratos de SaaS e Contratos de SaaS com consumo (excedentes).
Para saber mais sobre os cenários nos quais você responde a essas notificações, consulte os seguintes tópicos:
Tópico do Amazon SNS: aws-mp-entitlement-notification
Cada mensagem no tópico aws-mp-entitlement-notification
tem o formato a seguir.
{ "action": "
<action-name>
", "customer-identifier": "X01EXAMPLEX
", "product-code": "n0123EXAMPLEXXXXXXXXXXXX
", }
O <nome da ação>
sempre será
entitlement-updated
.
nota
-
Para mensagens de autorização, independentemente da ação (nova, atualização, renovação ou expirada), a mensagem é a mesma. É necessária uma chamada subsequente para
GetEntitlement
para descobrir o conteúdo da atualização. -
Para Contratos de SaaS com consumo (excedentes), os vendedores recebem o tópico do SNS aws-mp-subscription-notification. Essa é uma notificação extra que o vendedor recebe quando adiciona preços excedentes. Quando um vendedor adquire novos clientes, em vez de apenas obter
entitlement-updated
(o que pode se referir a qualquer tipo de ação), o vendedor recebe uma mensagem de assinatura indicando que se trata de um novo cliente. -
Para contratos com data futura (FDAs), este tópico é iniciado na data de início do contrato (e não na data de assinatura do contrato). Também é iniciado quando ocorrem alterações subsequentes no direito, como cancelamento, substituição, renovação ou expiração do contrato.
Produtos com preços contratuais (incluindo contratos com pagamento conforme o uso) devem responder a essas mensagens. Para obter mais informações sobre como responder, consulte Cenário: monitorar as alterações nas assinaturas dos usuários.
Tópico do Amazon SNS: aws-mp-subscription-notification
Cada mensagem no tópico aws-mp-subscription-notification
tem o formato a seguir.
{ "action": "
<action-name>
", "customer-identifier": "X01EXAMPLEX
", "product-code": "n0123EXAMPLEXXXXXXXXXXXX
", "offer-identifier": "offer-abcexample123
", "isFreeTrialTermPresent":"true" }
O offer-identifier
só vai aparecer na notificação se a oferta for privada.
A propriedade isFreeTrialTermPresent
indica se a assinatura do comprador é uma avaliação gratuita. O valor JSON dessa propriedade não é um tipo de dados booleano. Em vez disso, o valor é convertido em um tipo de dados de string. Para obter mais informações, consulte Avaliações gratuitas de SaaS.
<nome da ação>
variará de acordo com a notificação. As ações possíveis são:
-
subscribe-success
: a mensagemsubscribe-success
indica quando o vendedor pode começar a enviar registros de medição. Se uma oferta baseada em contrato for aceita pelo comprador, essa mensagem será enviada novamente com o novooffer-identifier
. -
subscribe-fail
: se a mensagemsubscribe-fail
for gerada, o pagamento pode ter falhado, mesmo que o comprador já tenha feito a transição do AWS Marketplace para a página de destino de SaaS do vendedor. O vendedor deve aguardar a mensagemsubscribe-success
antes de permitir o consumo do produto. -
unsubscribe-pending
: quando um comprador cancela a assinatura, uma mensagemunsubscribe-pending
é enviada primeiro. Isso indica que o vendedor tem um tempo limitado (cerca de uma hora) para enviar os registros finais de medição antes que o comprador seja totalmente cancelado. -
unsubscribe-success
: a mensagemunsubscribe-success
sinaliza a conclusão do cancelamento, após o qual nenhum outro registro de medição será aceito.
nota
-
Se um comprador cancelar a assinatura e se inscrever novamente imediatamente antes do envio da mensagem
unsubscribe-success
final, a mensagemunsubscribe-success
final não será enviada e, em vez disso, uma mensagemsubscribe-success
será enviada. -
Para contratos com data futura (FDAs), a ação
subscribe-success
é iniciada na data de início do contrato (e não na data de assinatura do contrato).
Produtos com preços de assinatura (incluindo contratos com pagamento conforme o uso) devem responder a essas mensagens. Para obter mais informações sobre como responder, consulte os tópicos a seguir:
Assinar uma fila do SQS no tópico do SNS
Recomendamos assinar uma fila do Amazon SQS nos tópicos do SNS fornecidos. Para obter instruções detalhadas sobre como criar uma fila do SQS e assinar a fila em um tópico, consulte Assinatura de uma fila do Amazon SQS em um tópico do Amazon SNS no Guia do desenvolvedor do Amazon Simple Notification Service.
nota
Você só pode assinar nos tópicos do SNS do AWS Marketplace na Conta da AWS usada para vender os produtos. No entanto, você pode encaminhar as mensagens para uma conta diferente. Para obter mais informações, consulte Envio de mensagens do Amazon SNS para uma fila do Amazon SQS em uma conta diferente no Guia do desenvolvedor do Amazon Simple Notification Service.
Pesquisar notificações na fila do SQS
Depois de assinar a fila do SQS em um tópico do SNS, as mensagens são armazenadas no SQS. Defina um serviço que continuamente sonde a fila, procure mensagens e manipule-as da forma adequada.