- Eventos de mensagens push (enviadas, recebidas, clicadas, falharam, cancelamento de inscrição)
- Eventos de email (enviados, abertos, clicados, rejeitados, cancelamento de inscrição, etc.)
- Eventos de SMS (enviados, falharam, cancelamento de inscrição, etc.)
- Eventos de mensagens in-app (impressão, clicadas, etc.)
- Eventos de Live Activity (enviadas, entregues, entrega confirmada, falharam, cancelamento de inscrição, clicadas)
Casos de uso comuns
- Centralizar dados de engajamento — Transmita eventos para um CRM, CDP ou data warehouse para que a atividade entre canais (aberturas, cliques, rejeições) fique em um único lugar em vez de distribuída entre ferramentas desconectadas.
- Análises, relatórios e conformidade — Armazene cada evento de mensagem em um warehouse para análise de tendências, auditoria ou manutenção de registros regulatórios.
- Monitorar o desengajamento — Acompanhe cancelamentos de inscrição, rejeições e dispensas em seus próprios sistemas para detectar riscos de retenção cedo.
- Acionar fluxos de trabalho externos — Dispare automações em outras ferramentas quando um usuário abre ou clica em uma mensagem (p. ex., atualizar uma pontuação de lead, iniciar uma sequência de acompanhamento).
- Substituir sincronizações em lote e integrações extras — Reaja a eventos em tempo real e conecte o OneSignal diretamente ao seu destino, reduzindo ferramentas intermediárias e custos de manutenção.
Iniciando sua equipe técnica
Configurar Event Streams é um esforço conjunto entre o proprietário de marketing/produto (que decide quais eventos importam e para onde vão) e a equipe de engenharia (que constrói o endpoint receptor e configura o stream). Veja o que envolve o lado da engenharia:- Decidir sobre um destino e escopo — Concordar sobre onde os eventos devem chegar (sua própria API, um data warehouse, um CDP, etc.), quais tipos de eventos transmitir (push, email, SMS, IAM, Live Activity) e uma estimativa do volume de mensagens para que o endpoint tenha o dimensionamento adequado.
- Configurar um endpoint HTTP — Construir ou configurar um endpoint acessível publicamente que aceite solicitações POST. Ele deve registrar eventos rapidamente sem processamento pesado para manter os tempos de resposta baixos. Consulte Tentativas / Desabilitação para expectativas de desempenho e o que acontece quando o endpoint fica para trás.
- Configurar o Event Stream no OneSignal — Em Dados > Event Streams, selecione eventos, defina a URL e os cabeçalhos de autenticação e defina o corpo JSON usando campos de Dados de Event Streams com sintaxe Liquid.
- Testar de ponta a ponta — Use webhook.site para verificar o formato do payload e os cabeçalhos antes de mudar para seu endpoint de produção (consulte Testes).
Configuração
Você pode configurar um novo event stream para seu aplicativo OneSignal em Dados > Event Streams > Novo Event Stream.
- Uma URL ou endereço IP válido para um endpoint HTTP(S) acessível publicamente
- URLs e endereços IP devem ser publicamente roteáveis
- Domínios devem incluir um domínio de nível superior reconhecido (por exemplo, “.com”, “.net”)
Seleção de Evento
Nomeie seu Event Stream e clique em Selecionar Eventos.

Filtros de event stream
Você pode opcionalmente refinar ainda mais os eventos especificando os identificadores de uma ou mais mensagens ou modelos, permitindo que você receba apenas eventos relacionados a mensagens específicas.

Configurar o Event Stream
Selecione o método HTTP, a URL e adicione cabeçalhos para o event stream. É aqui que a autenticação deve ser configurada para garantir comunicação segura entre o OneSignal e seus sistemas. A URI e os Cabeçalhos podem conter sintaxe liquid que virá tanto das propriedades do usuário quanto das propriedades do event stream.Cabeçalhos de Autenticação
Você pode adicionar cabeçalhos de autenticação para validar que as solicitações ao seu endpoint são genuinamente do OneSignal. Métodos comuns de autenticação incluem:- Cabeçalho de Autorização: Adicione um cabeçalho
Authorization, ondeYOUR_TOKENé fornecido pelo seu sistema ou terceiros como:Basic {{YOUR_TOKEN}}Bearer {{YOUR_TOKEN}}ApiKey {{YOUR_API_KEY}}
- Cabeçalhos Personalizados: Você também pode adicionar cabeçalhos personalizados como:
X-API-Key: {{YOUR_API_KEY}}
Testando Sua Configuração
Se você está procurando uma maneira fácil de testar, use webhook.site. Encontre “Your unique URL” no centro da página. Copie essa URL e use-a no campo URL da configuração do seu event stream.
Cabeçalhos não permitidos
Os seguintes cabeçalhos são restritos e não podem ser definidos.content-lengthreferermetadata-flavorx-google-metadata-requesthostx-onesignal*
Corpo
O corpo de um event stream será JSON. O JSON do corpo pode ser definido como pares chave/valor individuais ou como um bloco de código editável. Para alterar o método de entrada, use o primeiro menu suspenso sob o título do corpo e selecione o corpo personalizado.

Personalização
Você pode personalizar todos os campos no seu Event Stream com Dados de Event Streams predefinidos. Esses dados podem ser adicionados usando Sintaxe Liquid. Isso dá a você a flexibilidade de usar event streams para praticamente qualquer caso de uso.Consulte Dados de Event Streams para uma lista de todos os dados de evento, mensagem e evento de usuário disponíveis para personalização.
Exemplo de corpo
Selecione o “Corpo Personalizado” no menu suspenso:JSON

Usando Sintaxe Liquid em JSON
Ao usar sintaxe Liquid dentro de JSON, a citação adequada depende do tipo de dados: Diretrizes para Formatação JSON- Strings → Devem ser envolvidas em aspas.
- Números → Não envolver em aspas.
- Objetos → Não devem ser envolvidos em aspas.
As linhas de comentário
// nos exemplos Corretos abaixo são apenas para legibilidade. Remova-as no corpo real do seu Event Stream — o JSON estrito não permite comentários //.- Strings
- Números e Booleanos
- Objetos
✅ Correto — envolver em aspas:❌ Incorreto — a falta de aspas produz JSON inválido:
JSON
JSON
- Use Verificações Diretas de Idioma: Sempre verifique
user.languagediretamente em condicionais, não em variáveis comouserLang, para melhor compatibilidade. - Comece Simples: Comece com frases básicas e, em seguida, adicione complexidade gradualmente.
- Evite Aninhamento Excessivo: Mantenha as condicionais planas para evitar problemas de análise.
- Teste a Pontuação Básica Primeiro: Comece com frases e pontuação simples antes de usar caracteres especiais.
- Use Valores Padrão: Garanta um idioma padrão (por exemplo, inglês) em caso de traduções ausentes.
- Atenha-se às Chaves Padrão: Use chaves padrão do OneSignal como
content/title/enpara confiabilidade.
Para detalhes e opções sobre como personalizar suas mensagens usando sintaxe Liquid, confira nosso Guia de Uso de Sintaxe Liquid.
Resultados e Depuração
Monitorando o desempenho do seu Event Stream e solucionando problemas: Aba de Relatório — Exibe totais de todos os tempos, o status atual do seu event stream e um gráfico de séries temporais de códigos de resposta HTTP ao longo do tempo.| Resposta | Significado |
|---|---|
| 2xx | O evento foi recebido com sucesso pelo seu endpoint. |
| 4xx / 5xx | Seu endpoint retornou um erro. Verifique a aba de Logs para o código de status específico e o corpo da resposta. |
| Timeout | Seu endpoint não respondeu dentro da janela permitida. O OneSignal fechou a conexão e tratou a entrega como falha. |

Tentativas / Desabilitação
Comportamento de tentativas — Quando uma solicitação falha com um status recuperável (p. ex.429), o OneSignal tenta novamente com atrasos crescentes. Se as tentativas para um único evento continuarem falhando, esse evento é marcado como permanentemente falho e não é mais tentado.
Desabilitação automática — Se seu endpoint retornar falhas sustentadas em muitos eventos, o OneSignal pode desabilitar todo o event stream. Quando isso acontece:
- Administradores de aplicativos e de organizações recebem um email quando o volume de falhas se torna significativo (antes de desabilitar) e novamente quando o stream é desabilitado.
- Um banner também aparece na página de índice de Event Streams no painel.
- Corrija o problema subjacente, teste com a aba Logs ou webhook.site, e reabilite o stream.
- Registre eventos rapidamente — Escreva o evento recebido em uma fila ou armazenamento de dados sem processamento inline pesado.
- Evite respostas lentas e 429s — Tempos de resposta consistentemente lentos ou respostas de limite de taxa fazem com que os eventos se acumulem, o que leva o OneSignal a desabilitar o stream.
- Dimensione para seu volume de envio — Se você enviar 100k mensagens, espere até 100k eventos por tipo de evento selecionado. Revise o volume de mensagens do seu plano e provisione adequadamente.
event.id único. Inclua-o em um cabeçalho ou no corpo JSON para que seu sistema possa deduplicar se o mesmo evento for tentado novamente ou reproduzido.
Dicas para Sucesso
- Aponte streams para seus próprios servidores primeiro. Você pode conectar diretamente a uma API de terceiros, mas depuração, tratamento de limites de taxa e gerenciamento de volume são mais difíceis quando você não controla a extremidade receptora.
- Faça buffer antes de encaminhar para terceiros. O OneSignal envia eventos tão rápido quanto os usuários os acionam — um envio grande pode produzir um pico que sobrecarrega os limites de taxa externos ou aumenta os custos (especialmente com provedores de SMS). Construa um serviço leve que aceite eventos, os coloque em fila e os encaminhe para APIs externas em um ritmo que você controla.
- Verifique os docs de API de terceiros. Muitos serviços expõem APIs HTTP públicas que você pode direcionar com um event stream. Procure a documentação sobre autenticação, formato de payload aceito e limites de taxa antes de configurar seu stream.
Limitações de dados de eventos de mensagem
Os dados de mensagens enviadas por nossas Journeys ou API estão disponíveis no OneSignal apenas por 30 dias. Isso significa que quaisquer eventos de mensagem (como cliques, aberturas, cancelamentos de inscrição, etc.) que aconteçam 30+ dias após a mensagem de Journey ou API ser enviada, não estarão disponíveis no event stream. Isso pode aparecer como dados em branco ou ausentes em suas análises. Para contornar essa limitação, você pode correlacionar omessage.id desses eventos de clique/abertura/cancelamento de inscrição com o evento sent original que tem o mesmo message.id. O evento sent original deve ter os dados de mensagem relevantes (título, modelo, etc).
Testes
Guia de testes de ponta a ponta usando webhook.site. Cole Your unique URL no campo URL do Event Stream com o método POST.


- Host: o endereço IP de onde a solicitação veio. Consulte Visão geral da API REST para uma lista de IPs possíveis.
- Request Content: os dados enviados dentro do corpo do event stream.