Esse evento é disparado toda vez que um usuário aparece pela primeira vez no tenant, independente do canal de origem. É o gatilho ideal para provisionar o novo usuário em sistemas externos (CRM, marketing, billing).Documentation Index
Fetch the complete documentation index at: https://docs.cativa.digital/llms.txt
Use this file to discover all available pages before exploring further.
O nome interno do evento (usado nos cadastros de webhook do Console) é
user_created.Quando dispara
- Usuário se cadastra pelo formulário público da comunidade
- Admin cria o usuário manualmente no painel
- Usuário entra pela primeira vez via SSO (Google, Apple, OIDC)
- Importação em lote (bulk import) cria o usuário
- Você cria o usuário via API
Quando NÃO dispara
- Login de usuário já existente (não há criação)
- Atualização de perfil (nome, email, telefone)
- Reativação de usuário soft-deleted (o usuário já existia)
- Falha na criação (validação, email duplicado, etc.)
- Usuário não encontrado no enriquecimento do payload (entrega é pulada)
Payload
O payload é serializado em PascalCase e enviado no body doPOST com Content-Type: application/json:
Os campos do nível raiz (
UserId, Email, FirstName, …) e o objeto User aninhado existem lado a lado para manter paridade com a v1 da plataforma. Recomendamos consumir o objeto User aninhado em código novo — ele tem o mesmo shape de outros eventos (user_joined_group, user_received_badge, etc.) e simplifica handlers genéricos.Campos do payload
| Campo | Tipo | Descrição |
|---|---|---|
CustomerId | GUID | ID do tenant que originou o evento. Use para rotear quando seu endpoint recebe webhooks de múltiplos tenants. |
UserId | GUID | ID do usuário criado (igual a User.Id). |
Email | string | Email do usuário (igual a User.Email). |
FirstName | string | Primeiro nome. |
LastName | string | Sobrenome. |
DisplayName | string | Nome de exibição. |
Username | string | Nome de usuário (sem espaços). |
PhoneNumber | string | Telefone, quando informado. |
CreatedAt | ISO 8601 | Quando o usuário foi criado no tenant. |
User.Id | GUID | ID do usuário (espelho de UserId). |
User.Email | string | Email (espelho de Email). |
User.FirstName | string | Primeiro nome. |
User.LastName | string | Sobrenome. |
User.DisplayName | string | Nome de exibição. |
User.Username | string | Nome de usuário. |
User.PhoneNumber | string | Telefone. |
User.CreatedAt | ISO 8601 | Mesmo valor de CreatedAt. |
User.BadgeId | GUID | null | Badge principal — em user_created virá quase sempre null, já que o usuário ainda não tem badges. |
User.Badges | GUID[] | Lista de badges atribuídos ao usuário. Em user_created geralmente é []. |
Headers do request
| Header | Descrição |
|---|---|
X-Cativa-Signature | Assinatura HMAC-SHA256 do disparo, no formato t=<unixTs>,v1=<hex>. Verifique antes de processar o evento. |
X-Cativa-Execution-Id | ID único deste evento. Estável entre retries — use como chave de idempotência. |
X-Cativa-Automation-Id | ID do listener configurado no Console (mesmo valor para todos os disparos do mesmo cadastro). |
X-Cativa-Signature, lidar com retries e garantir idempotência (com exemplos em Node, Python, Go e C#) está em Cadastrando e verificando webhooks.
Casos de uso
- Provisionar no CRM — criar contato no HubSpot/Pipedrive/Salesforce com
Email,FirstName,LastNamee tag doCustomerIdpara segmentação cross-tenant. - Onboarding por email — disparar uma sequência de boas-vindas no seu provedor de email (Mailchimp, Customer.io, ActiveCampaign) usando o
Emailrecém-recebido. - Sincronizar com billing — criar o customer correspondente no Stripe/Asaas ou no seu próprio sistema interno, mesmo antes do primeiro pagamento.
Eventos relacionados
user_joined_group
Disparado quando o usuário entra num grupo da comunidade.
user_received_badge
Disparado quando o usuário ganha um badge (compra, atribuição manual ou automação).
Cadastrando webhooks
Como cadastrar listeners, verificar HMAC e lidar com retries.
Webhooks (visão geral)
Por que webhooks, garantias de entrega e formato dos payloads.
