Central de Ajuda
Idioma
Idioma
Idioma
Tema
Configurações

Webhooks

Avisos automáticos ao seu sistema quando algo acontece na plataforma: eventos, filtros, dados pessoais, histórico de entregas e falhas do destino.

Um webhook avisa o seu sistema quando algo acontece na plataforma. Por exemplo: um aluno concluiu uma aula, e a Cademí manda um aviso ao seu CRM. O webhook é o endereço do seu sistema (ou do Zapier, Make, n8n) que recebe esses avisos. Você configura tudo em Configurações → Webhooks. O formato de cada evento, para quem vai programar o receptor, está em https://cademi.dev/webhooks.

A ideia em um minuto

  • Um evento é um fato que a Cademí registra na conta: um aluno ganhou acesso, foi aprovado numa prova, concluiu uma aula.
  • Um webhook é um endereço inscrito em alguns eventos.
  • Uma entrega é cada aviso que a Cademí manda a esse endereço.

Uma entrega de webhook não tem relação com uma entrega de vendas (Entregas).

A regra mais importante: o webhook ouve o acesso, não a venda. Uma venda do gateway não é um evento. O que chega ao seu sistema é o acesso que a venda produziu.

A tela tem duas abas:

  • Endpoints: a lista dos webhooks. Cada linha mostra Evento / escopo, Endpoint e Status. O Status é Ativo ou Inativo, e você troca na própria linha. Os filtros Eventos e Status e a busca por endereço recortam a lista.
  • Histórico: as entregas.

Há dois formatos de webhook:

  • Cademí v3, o formato atual. Um webhook recebe vários eventos, cada um com o seu filtro, e cada envio vai assinado. É o que Novo webhook cria, e é o que este artigo explica.
  • Legado v2 e Legado v1 (descontinuado), o formato antigo, com um evento por webhook. Serve só para um sistema que já recebe esse formato. Novo webhook legado cria um. Numa integração nova, use Novo webhook.

Criar um webhook

  1. Abra Configurações → Webhooks.
  2. Clique em Novo webhook.
  3. Em Para onde enviar, cole o Endpoint: o endereço do seu sistema, começando com https://.
  4. Se quiser, preencha a Descrição. Ela ajuda a reconhecer o webhook na lista e não vai no envio.
  5. Em Quando enviar, marque os eventos.
  6. Nos eventos que aceitam filtro, preencha o bloco Enviar só quando, que aparece logo abaixo. Vazio quer dizer "sempre que acontecer".
  7. Em O que cada envio leva, escolha o nível de dados pessoais (veja abaixo).
  8. Confira o Resumo, ao lado.
  9. Clique em Criar webhook.
  10. Na janela Segredo de assinatura, copie e guarde o segredo.

O segredo não aparece de novo. Com ele, o seu servidor confere que cada envio saiu da Cademí.

Para escolher os eventos, a tela tem duas abas:

  • Jornada do aluno agrupa os momentos mais usados.
  • Sincronização (avançado) lista todos os eventos da plataforma, por grupo, com o nome técnico. É para quem mantém outro sistema sempre em dia com a Cademí.

Buscar evento procura nas duas abas. Marcar todos e Desmarcar valem por grupo. Ver exemplo do envio mostra o que chega ao seu endereço, com dados de exemplo.

Os momentos da jornada do aluno

MomentoEventos
CadastroAluno criado, Tags do aluno atualizadas, Campo personalizado atualizado
AcessoAcesso liberado, Primeiro acesso, Acesso suspenso ou reativado, Acesso revogado, Acesso restaurado
ProgressoCurso iniciado, Aula concluída, Marco de progresso atingido, Progresso atualizado, Curso concluído
ProvasProva concluída, Tentativa de prova reaberta
CertificadosCertificado emitido, Certificado revogado
TermosTermo aceito
PontosPontos creditados, Pontos ajustados
AtendimentoChamado aberto, Chamado respondido, Chamado encerrado, Dúvida enviada, Dúvida respondida, Comentário enviado, Comentário respondido

Atenção: é aqui que mais acontece erro. Cada evento tem um momento certo:

  • Venda: o aluno recebe uma entrega e dispara Acesso liberado. O reembolso, o atraso e o pagamento de volta disparam Acesso suspenso ou reativado.
  • Curso iniciado é a primeira aula concluída, não o acesso concedido. Para boas-vindas, use Aluno criado ou Primeiro acesso.
  • Prova concluída dispara com aprovado ou reprovado. Para só um deles, filtre por Resultado da prova.
  • Chegar a 100% não emite certificado. Certificado emitido só acontece quando alguém pede o certificado.
  • O aviso de um comentário ou de uma dúvida não leva o texto que o aluno escreveu.
  • Um administrador que vê a área como aluno de teste não gera nenhum desses eventos.

Os filtros

FiltroNos eventos deO que faz
Produtoprogresso, provas, certificados, comentários e dúvidasUm produto só, ou Qualquer produto
Aula e Provaaula concluída, comentários, dúvidas e provasAparecem depois que você escolhe o produto. Você pode marcar várias
Resultado da provaProva concluídaAprovado ou reprovado, Só aprovado ou Só reprovado
Ao chegar emMarco de progresso atingido50%, 75% ou 90%
A partir deProgresso atualizadoUma porcentagem mínima. Depois que o aluno passa dela, toda aula seguinte dispara de novo. Para um aviso único, prefira o marco
Tipo de cadastroAluno criadoCadastro pago ou Cadastro gratuito. O cadastro pelo Google e o da importação não são nem um nem outro. Com uma das duas escolhas, eles ficam de fora
OfertaAcesso liberadoSó os acessos daquela entrega: os compradores desta oferta
Tag que o aluno ganhouTags do aluno atualizadasSó quando aquela tag é adicionada. Uma tag que o aluno já tinha, ou que só foi removida, não dispara
Campo personalizado e Só quando ficar preenchidoCampo personalizado atualizadoUm campo. Se quiser, só quando ele deixa de estar vazio
TermoTermo aceitoUm termo específico
Pontos porPontos creditadosO motivo dos pontos (aula, marco, prova, comentário)

Quantos dados pessoais vão

O nível vale para todos os eventos do mesmo webhook.

NívelO que chegaUse quando
Só identificadores, sem dados pessoais (o padrão)Os códigos do aluno e do que aconteceu, sem nome nem contato. O seu sistema busca o resto pela APIO receptor consulta o aluno, ou só precisa contar
Com dados pessoais mascaradosOs códigos, mais nome, e-mail e telefone parcialmente escondidos. Ainda é dado pessoalA ferramenta precisa de uma pista de quem é, sem guardar o contato real
Completo, com dados pessoaisOs dados como estão no cadastroO sistema precisa escrever, ligar ou faturar para o aluno. E ele é confiável para guardar esses dados

Só um administrador autorizado a ver os dados dos alunos pode escolher o nível completo. Se o webhook inclui chamados, ele precisa ver também o atendimento. A Cademí confere cada envio contra quem criou o webhook. Se essa pessoa perde a autorização, os envios saem mascarados até ela voltar, e a tela avisa.

A página de um webhook

Clique na linha para abrir o webhook. No alto ficam o status, Ver histórico deste webhook, Enviar teste e Gerar novo segredo.

O painel de saúde mostra:

  • o Último envio entregue;
  • as Últimas 24 horas: entregues, falhas e na fila;
  • o estado do Endereço: Recebendo normalmente, Envios pausados por falhas seguidas ou Testando o endereço de novo.

Enviar teste manda agora ao seu endereço um exemplo do evento escolhido. O exemplo tem dados fictícios, vai assinado com o segredo atual e é marcado como teste. Você vê o Status HTTP, o Tempo e a Resposta. O teste não entra no histórico e não conta para a saúde do webhook.

Gerar novo segredo cria um segredo novo e o mostra uma vez. O anterior continua assinando por 24 horas. Assim, você troca o segredo no receptor sem parada.

Histórico

A aba Histórico lista as entregas dos últimos 60 dias, em quatro visões: Todos, Sucesso, Pendentes e Com falha. Só Com falha tem contagem, porque é a fila que pede ação. O filtro Webhook recorta por destino.

Cada linha mostra Enviado em, Evento, Código (a resposta do destino), Endpoint e Status. Se houve mais de uma tentativa, a linha mostra o número.

StatusO que quer dizer
Na filaEsperando o próximo envio
EnviandoSaindo agora
SucessoO destino recebeu e respondeu com sucesso
ErroO destino recusou de um jeito que não adianta repetir (endereço inexistente ou bloqueado). Só sai de novo por reenvio manual
EsgotadoAs tentativas acabaram sem sucesso. Só sai de novo por reenvio manual ou ao reativar o webhook
CanceladoNão vai mais ser enviada. O webhook foi desativado ou excluído antes de ela sair, ou o sistema abandonou o endereço

Clique na linha para abrir Detalhes da entrega. A janela mostra a Resposta do destino e o Payload enviado. Nas entregas que falharam, ela tem o botão Reenviar. Reenviar coloca a mesma entrega na fila de novo. Ele não cria um evento novo.

Quando o destino falha

Se o endereço não aceita uma entrega, a Cademí tenta de novo sozinha:

  • A espera entre as tentativas cresce de 2 minutos até 6 horas.
  • A Cademí tenta cerca de 10 vezes, ou por 72 horas.
  • Se o destino pede para esperar, ou está instável, o adiamento não gasta tentativa.
  • Uma recusa definitiva não é repetida.

O caminho de uma entrega até o status final, com as novas tentativas e as voltas à fila:

Carregando diagrama…

Com o webhook Inativo, a entrega espera na fila e não é cancelada. Reativar e reenviar devolve só o que esgotou ou foi cancelado pela desativação nas últimas 48 horas. Uma entrega cancelada porque o webhook foi excluído não volta.

SituaçãoO que aconteceComo volta
Você deixa o webhook InativoAs entregas ficam retidas. Esperar não é falhaLigue de novo e elas saem
O endereço falha em vários envios diferentes em 24 horasO sistema desativa o webhook e cancela o que ainda esperava. Ele avisa por e-mail os administradores que gerenciam webhooksNa página do webhook, Reativar ou Reativar e reenviar as últimas 48 horas
O endereço fica muito tempo sem responderTodo webhook que aponta para esse endereço é desativado. Isso vale também em outras contas que o usamReative cada um

A lista e a página do webhook mostram o motivo da desativação. Salvar o webhook não o reativa. Corrija o endereço, se for o caso, e use Reativar. Nada com mais de 48 horas volta sozinho.

Bom saber

O receptor precisa tolerar repetição.

Reenvios e reativações entregam o mesmo evento de novo. Se o seu sistema não reconhece o evento repetido, um CRM cria dois contatos e uma ferramenta de e-mail escreve duas vezes ao aluno.

Excluir cancela o que esperava.

Excluir um webhook cancela as entregas pendentes. As concluídas ficam no histórico. O suporte pode recuperar o webhook excluído.

Mudar o nível não reescreve o passado.

Um nível mais rico vale para o que acontece depois. O que já foi preparado sai como estava.

Webhook não é histórico.

Ele pode ser pausado e desligado. Para olhar para trás ou montar um relatório, use a lista de eventos da API, não um webhook numa planilha.

Diamante.

As mensagens de etapa dos funis Diamante ficam nas telas do Diamante (Funis Diamante), não aqui.

Antigo e novo no mesmo sistema.

Um webhook legado e um webhook v3 apontados para a mesma ferramenta avisam o mesmo momento duas vezes, com dois nomes.

Perguntas frequentes

Quero avisar meu CRM a cada compra.

No momento Acesso, marque Acesso liberado e Acesso suspenso ou reativado. Se for uma entrega específica, filtre por Oferta. O webhook ouve o acesso, não a venda.

O evento aconteceu e nada chegou.

Abra o Histórico e procure a entrega:

  • Na fila: a plataforma ainda vai tentar.
  • Erro ou Esgotado: veja a Resposta do destino, corrija e reenvie.
  • Nenhuma entrega: o evento não está marcado, ou o filtro excluiu o caso.

Se a lista mostra o webhook desativado, reative.

Meu webhook foi desativado sozinho.

O endereço falhou em vários envios seguidos. Corrija o destino e teste com Enviar teste. Depois, clique em Reativar e reenviar as últimas 48 horas para recuperar o que ficou para trás.

Recebi o mesmo aviso duas vezes.

Um reenvio ou uma reativação entrega o mesmo evento de novo. O seu sistema precisa reconhecer o evento repetido.

Nesta página