Quando usar
O fluxo padrão de ativação exige que o operador abra o navegador, faça login (Magic Link ou OAuth) e aguarde o registro completar. Para o primeiro registro de um e-mail, isso é necessário. Para toda instalação subsequente do mesmo operador (mesmo e-mail), você pode pular o navegador inteiro e ativar a licença em uma única chamada HTTP. Ideal para:- Deploy automatizado (CI/CD, Terraform, Ansible)
- Múltiplas instâncias do mesmo produto em servidores diferentes
- Containers efêmeros que sobem e morrem com frequência
- Provisionamento programático (multi-tenant, multi-região)
A primeira ativação ainda precisa ser feita pelo fluxo manual (navegador + Magic Link/OAuth). Só depois disso o e-mail fica “conhecido” pelo servidor de licenciamento e a ativação automática passa a funcionar.
Endpoint
Resposta de sucesso (200):
api_key retornada está pronta para uso imediato — não é necessário chamar /v1/activate em seguida. A instância já entra como active no servidor.
Se a chamada for repetida com o mesmo (email, instance_id), a resposta inclui "reused": true e devolve a mesma api_key da chamada anterior. Isso torna a chamada idempotente — seguro para retry em scripts de boot.
Modelo de confiança
O servidor de licenciamento aceita a chamada usando apenas o e-mail como prova de identidade. Não há segundo fator, não há captcha, não há rate limit. Por quê:- O e-mail já foi verificado uma vez (no registro manual inicial, via Magic Link ou OAuth)
- Emitir uma licença para um customer não é uma ação destrutiva — todas as instâncias ficam visíveis no portal do customer
- O customer pode revogar
api_keys a qualquer momento se detectar uso não autorizado - O customer pode desabilitar a ativação automática (
auto_activation_enabled = false) no portal caso suspeite que o e-mail vazou
Códigos de erro
A resposta
CUSTOMER_NOT_FOUND é o sinal canônico para o cliente cair para o fluxo manual. Sempre implemente esse fallback — primeiro deploy de um e-mail novo precisa passar pelo manual.
Fluxo recomendado no client
Variável de ambiente padrão
Os produtos Evolution leem o e-mail do operador da variávelEVOLUTION_OPERATOR_EMAIL:
Idempotência detalhada
A chamada é idempotente em(email, instance_id):
Isso é o que torna seguro chamar a rota no startup do container — se o container já registrou antes, recebe a mesma key; se é nova, recebe key nova.
Containers que sempre geram UUID novo a cada boot acumulam APIKeys (uma por boot) sob o mesmo customer. Se quiser comportamento idempotente real, persista o
instance_id em volume montado (/data/instance-id) entre reinicializações.Como desabilitar para meu customer
No portal do customer (https://license.evolutionfoundation.com.br/portal), há um toggle “Ativação Automática por E-mail”.
Quando desabilitado:
- Todas as chamadas a
/v1/register/autocom seu e-mail retornam403 AUTO_ACTIVATION_DISABLED - Novos deploys obrigatoriamente passam pelo fluxo manual (navegador + Magic Link/OAuth)
- Suas
api_keys existentes continuam funcionando normalmente
- Operam em ambiente regulado e querem trilha de auditoria em cada ativação
- Têm o e-mail conhecido publicamente e querem reduzir superfície de ataque
- Suspeitam de uso indevido do e-mail
Auditoria
Cada chamada a/v1/register/auto gera uma linha em activation_logs com alert_type = 'auto_activation'. O portal do customer mostra:
- Data/hora de cada auto-ativação
- IP do servidor que solicitou
- Localização aproximada (país/cidade via GeoIP)
- Resultado (
createdoureused)
Próximos passos
Fluxo manual
Fluxo completo do
/v1/register/init — necessário no primeiro registroTelemetria
O que é enviado em cada chamada de licença
FAQ
Perguntas frequentes
Visão Geral
Resumo do sistema de licenciamento