Pular para o conteúdo principal

Criar Evento

Este guia explica como criar e configurar eventos no NotifyChain.

Acessando o Modulo

  1. No menu lateral, clique em Eventos
  2. Clique no botao Novo Evento

Informacoes Basicas

Nome do Evento

Digite um nome descritivo seguindo o padrao [Objeto] + [Acao]:

Exemplos:
- Compra Realizada
- Usuario Cadastrado
- Carrinho Abandonado
- Pagina Visitada

Descricao

Explique quando e por que este evento e disparado:

Exemplo:
"Disparado quando o usuario finaliza uma compra com sucesso.
Inclui dados do pedido, produtos e pagamento."

Configurando Propriedades

Propriedades sao os dados adicionais enviados com o evento.

Adicionar Propriedade

  1. Clique em Adicionar Propriedade
  2. Preencha os campos:
    • Nome: Identificador (camelCase)
    • Tipo: Tipo de dado
    • Obrigatorio: Se deve sempre estar presente
    • Descricao: Explicacao do campo

Tipos de Propriedade

TipoDescricaoExemplo
stringTexto"SKU-12345"
numberNumero99.90
booleanVerdadeiro/Falsotrue
objectObjeto JSON{"name": "..."}
arrayLista["a", "b", "c"]
dateData/hora"2024-01-15"

Exemplo de Configuracao

Evento: "Compra Realizada"

PropriedadeTipoObrigatorioDescricao
orderIdstringSimID unico do pedido
totalnumberSimValor total em reais
itemsarraySimLista de produtos
paymentMethodstringSimMetodo de pagamento
discountnumberNaoDesconto aplicado
couponstringNaoCodigo do cupom

Propriedades Aninhadas

Para objetos complexos, defina a estrutura:

{
"items": [
{
"productId": "SKU-123",
"name": "Camiseta",
"price": 79.90,
"quantity": 2
}
],
"shipping": {
"method": "express",
"cost": 15.00,
"address": {
"city": "Sao Paulo",
"state": "SP"
}
}
}

Configurando Destinos

Selecione para onde o evento sera enviado.

NotifyChain (Padrao)

Sempre ativo. Permite:

  • Usar em jornadas
  • Criar segmentos
  • Definir metas
  • Analytics interno

Google Analytics

  1. Marque Google Analytics
  2. Configure o mapeamento:
    • Nome do evento no GA
    • Parametros a enviar

Mixpanel

  1. Marque Mixpanel
  2. Configure:
    • Token do projeto
    • Propriedades a enviar

Webhook

  1. Marque Webhook
  2. Configure:
    • URL de destino
    • Headers (autenticacao)
    • Formato do payload

Exemplo de Webhook:

URL: https://api.seusite.com/webhooks/events
Headers:
Authorization: Bearer seu-token
Content-Type: application/json

Gerando Codigo de Rastreamento

Apos criar o evento, gere o codigo para implementacao.

Ver Codigo

  1. Na lista de eventos, clique no icone de codigo
  2. Selecione a linguagem/plataforma
  3. Copie o codigo

JavaScript (Web)

NotifyChain.track('Compra Realizada', {
orderId: 'ORD-12345',
total: 299.90,
items: [
{ productId: 'SKU-001', name: 'Produto A', price: 99.90, quantity: 1 },
{ productId: 'SKU-002', name: 'Produto B', price: 200.00, quantity: 1 }
],
paymentMethod: 'cartao'
});

API REST

curl -X POST https://api.notifychain.io/v1/events \
-H "Authorization: Bearer SUA_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"event": "Compra Realizada",
"userId": "user-123",
"properties": {
"orderId": "ORD-12345",
"total": 299.90
}
}'

Validacao de Eventos

Propriedades Obrigatorias

O sistema valida se propriedades obrigatorias estao presentes:

// Erro: faltando propriedade obrigatoria
NotifyChain.track('Compra Realizada', {
total: 299.90
// orderId esta faltando!
});

Tipos de Dados

Propriedades sao validadas pelo tipo:

// Erro: tipo incorreto
NotifyChain.track('Compra Realizada', {
orderId: 'ORD-123',
total: '299.90' // Deveria ser number, nao string
});

Modo de Validacao

Configure o comportamento em caso de erro:

ModoComportamento
StrictRejeita eventos invalidos
WarnAceita com aviso no log
PermissiveAceita qualquer evento

Editando Eventos

Adicionar Propriedades

Voce pode adicionar novas propriedades a qualquer momento.

Remover Propriedades

Cuidado

Remover propriedades pode quebrar:

  • Segmentos que usam a propriedade
  • Jornadas que filtram por ela
  • Templates que a exibem

Renomear Eventos

Nao e possivel renomear eventos em uso. Crie um novo e migre gradualmente.

Testando Eventos

Modo Debug

Ative o modo debug no tracker:

NotifyChain.debug(true);
NotifyChain.track('Teste', { foo: 'bar' });
// Console: [NotifyChain] Event tracked: Teste { foo: 'bar' }

Verificar Recebimento

  1. Dispare o evento
  2. Acesse Eventos > Logs
  3. Verifique se o evento aparece
  4. Confira as propriedades

Enviar Evento de Teste

Na pagina do evento:

  1. Clique em Enviar Teste
  2. Preencha as propriedades
  3. Selecione um usuario de teste
  4. Clique em Enviar
  5. Verifique nos logs

Boas Praticas

Planejamento

Antes de criar eventos:

  1. Liste as acoes importantes do usuario
  2. Defina quais dados sao necessarios
  3. Identifique onde sera implementado
  4. Documente o plano

Consistencia

Mantenha padroes:

✅ Consistente:
- Compra Realizada (total: number)
- Assinatura Criada (valor: number)

❌ Inconsistente:
- Compra Realizada (total: number)
- Assinatura Criada (value: string)

Documentacao

Para cada evento, documente:

  • Quando e disparado
  • Quem dispara (frontend, backend, ambos)
  • Propriedades e seus significados
  • Destinos configurados

Exemplos de Eventos Comuns

E-commerce

Produto Visualizado
- productId, productName, price, category

Produto Adicionado ao Carrinho
- productId, productName, price, quantity

Checkout Iniciado
- cartTotal, itemCount

Compra Realizada
- orderId, total, items, paymentMethod, shipping

Pedido Entregue
- orderId, deliveryDate

SaaS

Usuario Cadastrado
- source, plan, referrer

Login Realizado
- method (email, google, etc)

Feature Usada
- featureName, context

Plano Atualizado
- oldPlan, newPlan, mrr

Cancelamento Solicitado
- reason, feedback

Conteudo

Artigo Visualizado
- articleId, title, category, author

Video Assistido
- videoId, duration, percentWatched

Conteudo Compartilhado
- contentId, platform

Newsletter Assinada
- source, interests