Pular para o conteúdo principal

API de assinaturas

O aplicativo cliente trabalha com assinaturas por meio de três endpoints: criar uma assinatura, cancelar uma assinatura e obter a lista de assinaturas ativas do usuário atual.

Todos os endpoints são executados em nome do usuário autenticado. A assinatura sempre fica vinculada ao token usado na solicitação.

Criação de assinatura​

Cria uma nova assinatura para o usuário atual com o marcador especificado.

O comportamento depende do tipo de conta de pagamento vinculada à assinatura nas configurações do módulo (abre em uma nova aba):

  • stripe, midtrans: o registro da assinatura é criado e a resposta traz um link de pagamento. A assinatura fica ativa depois que o provedor processa a cobrança com sucesso.
  • custom: a assinatura é criada e já passa a ser considerada ativa. Nenhum link de pagamento é retornado; o administrador registra o pagamento manualmente pelo cartão do usuário (abre em uma nova aba).

Cancelamento de assinatura​

Cancela imediatamente a assinatura ativa do usuário.

O comportamento depende do tipo de conta de pagamento:

  • stripe, midtrans: a assinatura é cancelada pela API do provedor. As cobranças automáticas são interrompidas e o status da assinatura muda para canceled.
  • custom: o cancelamento pela API não está disponível. Somente o administrador pode cancelar essas assinaturas, pelo cartão do usuário (abre em uma nova aba).
info

Tentar cancelar uma assinatura custom pela API retorna um erro. Isso é intencional: assinaturas manuais são gerenciadas pelo administrador, porque os pagamentos delas acontecem fora do sistema.

Obtenção de assinaturas ativas​

Retorna um array com os marcadores das assinaturas ativas do usuário atual.

Uma assinatura é considerada ativa quando:

  • Foi criada com sucesso.
  • O período atual ainda não terminou.
  • Não foi cancelada (canceled).

Quando uma assinatura expira ou é cancelada, o marcador dela sai da lista automaticamente. No cliente, você pode usar esse endpoint para verificar o acesso ao conteúdo: se o marcador da assinatura necessária estiver no array, o acesso é concedido.