Webhooks: envie eventos para os seus outros sistemas
Um webhook é uma mensagem automática que a elastudio envia para um endereço seu no momento em que algo acontece: um novo aluno, uma reserva, um pagamento, um check-in. Adicione um endpoint em Configurações, Desenvolvedores, Webhooks, escolha os eventos e copie a chave de assinatura. Incluído no Pro, adicional no Growth.
O que é um webhook
Um webhook é uma mensagem automática que a elastudio envia para um endereço seu no momento em que algo acontece: um novo aluno, uma reserva, um pagamento, um check-in. O seu desenvolvedor, ou uma ferramenta como Make, n8n ou a etapa de webhook do Zapier, recebe a mensagem e faz o resto, por exemplo colocar o aluno no seu CRM ou uma linha numa planilha.
Quem pode usar
- Os webhooks vêm com o plano Pro.
- No Growth, você pode adicioná-los por US$21,90 por mês (US$219 por ano no plano anual), cobrados junto com o plano, em R$, CA$ ou US$, conforme a moeda em que o estúdio paga a elastudio. O dono adiciona na aba Adicionais (Configurações > Plano e uso > Adicionais). Veja Adicionais no seu plano da elastudio.
- O dono do estúdio e os admins abrem a página. Só o dono adiciona ou remove o adicional.
Observação: Se o seu estúdio já usava a elastudio antes de 27 de outubro de 2026, os webhooks começam desligados. O dono ou um admin liga em Configurações > Ferramentas > Recursos: ligue Webhooks de saída.
Adicionar um endpoint
Um endpoint é o endereço que recebe os eventos.
- Abra Configurações e escolha Webhooks, em Desenvolvedores. Toque em Adicionar endpoint.
- Em Endereço do endpoint, cole o endereço que recebe os eventos. Ele precisa começar com
https://e ser público na internet: endereços de rede privada, um endereço IP, um nome local ou outra porta são recusados. - Em Eventos para enviar, marque os eventos que quer, ou Todos os eventos. Uma Observação (opcional) ajuda a lembrar quem recebe.
- Toque em Adicionar endpoint. A sua Chave de assinatura aparece: copie agora para o sistema que recebe e toque em Já copiei. Ela aparece só desta vez.
- Toque em Enviar teste. O seu sistema deve receber um evento
webhook.teste responder com um status 2xx.
Você pode ter até 10 endpoints. Cada um tem Editar, Desligar ou Ligar, Excluir e Registro de entregas.
Os eventos
| Evento | Nome na administração | Enviado quando |
|---|---|---|
member.created |
Novo aluno | um perfil de aluno é criado (pelo aluno, no balcão ou por uma importação) |
member.updated |
Aluno atualizado | o perfil de um aluno muda |
booking.created |
Reserva feita | um aluno tem uma vaga confirmada numa aula (depois do pagamento, ou vinda da lista de espera) |
booking.cancelled |
Reserva cancelada | uma reserva de aula é cancelada pelo aluno ou pelo estúdio |
checkin.created |
Check-in | um aluno é marcado como presente numa aula, ou faz check-in num evento |
order.paid |
Venda paga | uma venda é paga por completo, on-line ou no balcão |
order.refunded |
Reembolso | um valor é devolvido numa venda, por inteiro ou em parte |
membership.started |
Plano iniciado | um plano mensal começa |
membership.renewed |
Plano renovado | um plano é pago por mais um período |
membership.paused |
Plano pausado | uma pausa do plano é marcada |
membership.ended |
Plano encerrado | um plano é cancelado ou vence |
event_ticket.sold |
Ingresso vendido | ingressos de um evento são pagos |
appointment.confirmed |
Aula particular confirmada | uma aula particular é confirmada |
Cada evento leva os ids e só os poucos campos de que precisa. Os eventos de aluno levam o nome, o e-mail e o idioma; os outros levam ids (aluno, aula, venda, plano). A elastudio nunca envia dados de cartão, telefones, endereços, datas de nascimento, CPF, informações de saúde ou observações.
A assinatura, em palavras simples
Qualquer pessoa que souber o endereço do seu endpoint poderia mandar uma mensagem falsa para ele. A chave de assinatura impede isso. A elastudio assina cada entrega com ela, como um lacre numa carta, e o seu sistema confere o lacre antes de confiar na mensagem. Só a elastudio e o seu sistema conhecem a chave.
Se a chave pode ter vazado, toque em Trocar a chave. Você recebe uma nova na hora; durante 24 horas cada entrega é assinada com as duas, para dar tempo de atualizar o seu sistema.
Se o seu sistema estiver fora do ar
O seu sistema tem 10 segundos para responder com um status 2xx. Se não responder, a elastudio tenta de novo depois de 1 minuto, 5 minutos, 30 minutos, 2 horas, 6 horas, 12 horas e 24 horas: 8 tentativas em cerca de 2 dias.
Se nada passar por 3 dias, a elastudio desliga o endpoint e manda um e-mail ao dono do estúdio. Antes disso, o endpoint aparece Com falhas. Corrija o sistema, toque em Ligar e envie um teste. Os testes não contam para o desligamento.
O registro de entregas
Toque em Registro de entregas num endpoint para ver os últimos 30 dias, os mais novos primeiro: cada evento, se foi Entregue, está Esperando ou Falhou, quantas tentativas, a resposta do seu sistema (o status e o começo da mensagem) e quando é a próxima tentativa. Reenviar envia de novo com o mesmo id. A elastudio guarda a resposta, nunca o que enviou.
Se você mudar de plano
Num plano sem webhooks, ou quando o adicional termina, nada mais é enviado, e nada fica guardado para enviar depois. Os seus endpoints e o registro continuam, e você pode desligá-los ou excluí-los. Antes de o adicional ou um plano com webhooks terminar, a página Webhooks mostra Os webhooks param em com a data, e o dono recebe um e-mail.
Para desenvolvedores
Cada entrega é um POST com um corpo JSON:
{
"id": "8b0c6c1e-...",
"type": "order.paid",
"createdAt": "2026-10-27T12:00:00.000Z",
"studioId": "e1a00000-...",
"apiVersion": "2026-10-27",
"data": { "object": { "object": "order", "id": "...", "memberId": "...", "total": { "amount": 7000, "currency": "BRL" }, "method": "pix", "complimentary": false } }
}
- Os valores estão em centavos (7000 são R$70,00). Os horários estão em ISO 8601 em UTC; as datas são as datas locais do estúdio.
- Cabeçalhos:
webhook-id(o mesmo em todas as tentativas de uma entrega),webhook-timestamp(em segundos) ewebhook-signature. - A assinatura é
v1,seguida do HMAC-SHA256 em base64 dewebhook-id.webhook-timestamp.corpo, usando como chave a parte da sua chave depois dewhsec_, decodificada de base64. Durante uma troca de chave o cabeçalho traz duas assinaturas, separadas por um espaço; aceite qualquer uma. - É o formato Standard Webhooks, e as bibliotecas gratuitas dele conferem isso para você.
- Recuse um timestamp com mais de 5 minutos e ignore um
webhook-idque você já tratou. - Redirecionamentos nunca são seguidos.
Atualizado em 28 de outubro de 2026