Uma licença no Bluube representa o direito de um usuário final usar seu software. Você pode emitir licenças manualmente pelo dashboard ou de forma programática pela API, dependendo do seu fluxo de venda.
Criar uma licença
Abra a aplicação
No menu lateral, clique em Aplicações e selecione a aplicação para a qual deseja criar a licença.
Acesse a seção Licenças
Dentro da aplicação, clique na aba Licenças e depois em Nova Licença no canto superior direito.
Configure a licença
Preencha as opções disponíveis:
- Tipo:
standard, trial ou um tipo personalizado que você tenha criado.
- Data de expiração: deixe em branco para licença perpétua ou informe uma data de vencimento.
- É trial: marque essa opção para licenças de avaliação gratuita.
- Máximo de ativações: número de dispositivos que podem ativar essa licença simultaneamente. Use
0 para ilimitado.
- Metadata: pares chave-valor opcionais para associar informações ao comprador (ex.: e-mail, ID do pedido).
Confirme e copie a chave
Clique em Criar Licença. A chave de licença gerada será exibida no formato XXXX-XXXX-XXXX-XXXX. Copie e envie ao seu usuário.
Construa o payload
Prepare o corpo da requisição com as configurações desejadas. Todos os campos são opcionais, exceto quando indicado.{
"type": "standard",
"expires_at": "2027-04-06T00:00:00Z",
"is_trial": false,
"max_activations": 3,
"metadata": {
"customer_email": "[email protected]",
"order_id": "ORD-98765"
}
}
Envie a requisição
curl --request POST \
--url https://api.bluube.com/v1/apps/app_01j9k2m3n4p5q6r7s8t9/licenses \
--header "Authorization: Bearer blv1_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" \
--header "Content-Type: application/json" \
--data '{
"type": "standard",
"expires_at": "2027-04-06T00:00:00Z",
"is_trial": false,
"max_activations": 3,
"metadata": {
"customer_email": "[email protected]",
"order_id": "ORD-98765"
}
}'
Verifique a resposta
Uma criação bem-sucedida retorna 201 Created com os dados da nova licença:{
"license_id": "lic_0a1b2c3d4e5f",
"license_key": "A1B2-C3D4-E5F6-G7H8",
"app_id": "app_01j9k2m3n4p5q6r7s8t9",
"type": "standard",
"status": "active",
"is_trial": false,
"max_activations": 3,
"activations_count": 0,
"expires_at": "2027-04-06T00:00:00Z",
"created_at": "2026-04-06T12:00:00Z",
"metadata": {
"customer_email": "[email protected]",
"order_id": "ORD-98765"
}
}
Consultar status de uma licença
Para verificar o status atual de uma licença, faça uma requisição GET com a chave de licença:
curl --request GET \
--url "https://api.bluube.com/v1/apps/app_01j9k2m3n4p5q6r7s8t9/licenses/A1B2-C3D4-E5F6-G7H8" \
--header "Authorization: Bearer blv1_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
O campo status indica o estado atual:
| Valor | Descrição |
|---|
active | Licença válida e em uso. |
expired | A data de expiração foi ultrapassada. |
suspended | Suspensa manualmente pelo administrador. |
revoked | Revogada permanentemente. Não pode ser reativada. |
Suspender ou revogar uma licença
Use a suspensão quando precisar bloquear o acesso temporariamente (ex.: pagamento pendente). Use a revogação para cancelamentos definitivos.
curl --request PATCH \
--url "https://api.bluube.com/v1/apps/app_01j9k2m3n4p5q6r7s8t9/licenses/A1B2-C3D4-E5F6-G7H8" \
--header "Authorization: Bearer blv1_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" \
--header "Content-Type: application/json" \
--data '{"status": "suspended"}'
Uma licença suspensa pode ser reativada a qualquer momento enviando {"status": "active"} no mesmo endpoint.curl --request DELETE \
--url "https://api.bluube.com/v1/apps/app_01j9k2m3n4p5q6r7s8t9/licenses/A1B2-C3D4-E5F6-G7H8" \
--header "Authorization: Bearer blv1_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
A revogação é permanente e irreversível. Uma licença revogada retorna status: "revoked" em todas as validações subsequentes. Se precisar reemitir o acesso ao usuário, crie uma nova licença.
Renovar ou estender uma licença
Para renovar uma licença expirada ou estender seu prazo, atualize o campo expires_at:
curl --request PATCH \
--url "https://api.bluube.com/v1/apps/app_01j9k2m3n4p5q6r7s8t9/licenses/A1B2-C3D4-E5F6-G7H8" \
--header "Authorization: Bearer blv1_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" \
--header "Content-Type: application/json" \
--data '{"expires_at": "2028-04-06T00:00:00Z", "status": "active"}'
Ao renovar uma licença expirada, envie também "status": "active" para reativá-la, caso ela tenha sido desativada automaticamente após o vencimento.
Próximos passos
Com o gerenciamento de licenças configurado, consulte o guia de Integrar API para adicionar a validação de licenças diretamente na sua aplicação.