Webhooks
Os webhooks permitem que a plataforma Lumen ERP notifique sua aplicação em tempo real sobre eventos
como registros de frequência, verificações de acesso e envios de foto. Quando um evento ocorre, a
plataforma envia uma requisição POST
com um payload JSON para a URL configurada: a do cliente, nas integrações anteriores ao Portal do Parceiro, ou os endpoints do seu app no portal.
Configuração
Integrações anteriores ao Portal do Parceiro recebem eventos numa URL única por cliente, cadastrada pela
gestão do cliente nas configurações de API da escola no Lumen. Cada evento é entregue a essa URL via HTTP POST com corpo JSON. Apps do Portal
do Parceiro configuram os próprios endpoints; veja a seção seguinte.
- Filtro de eventos: a configuração pode limitar a entrega a uma lista de eventos. Sem lista, todos os eventos abaixo são entregues.
- Token de acesso: se configurado, cada entrega leva o cabeçalho
lumen-access-tokencom esse valor. Compare-o no seu endpoint para recusar chamadas de outra origem. - Novas tentativas: a entrega é assíncrona, por fila. Qualquer resposta fora de
2xxé uma falha: a plataforma repete na hora até 3 vezes e, se ainda falhar, agenda novas tentativas após 1, 5, 15 e 30 minutos (até 5 rodadas, cerca de 50 minutos) antes de desistir. - Idempotência: uma mesma entrega pode chegar mais de uma vez. O envelope não tem identificador; use
event,timestampe os identificadores emdatapara descartar repetições.
Estrutura do envelope
event
string
Nome do evento disparado, ex: attendance.check_in.
timestamp
string (ISO 8601)
Data e hora em que o evento foi gerado, no formato ISO 8601.
data
object
Objeto com os dados específicos do evento. Varia conforme o tipo de evento.
{ "event": "<event_name>", "timestamp": "2026-04-30T08:30:00-03:00", "data": { // dados específicos do evento } }
Webhooks de apps do Portal do Parceiro
Apps criados no Portal do Parceiro configuram os endpoints no próprio portal: um de teste (eventos do sandbox) e um de produção (eventos dos clientes conectados ao app). É possível escolher quais eventos receber, enviar eventos de teste e reenviar entregas.
Cada entrega segue o padrão Standard Webhooks: os cabeçalhos
webhook-id,
webhook-timestamp e
webhook-signature permitem validar
a origem. A assinatura é v1, seguido do
HMAC-SHA256 em base64 de {id}.{timestamp}.{corpo},
usando o segredo whsec_… do app
decodificado em base64. Rejeite timestamps com mais de 5 minutos e use o
webhook-id para descartar reenvios repetidos.
Além de event,
timestamp e
data, o envelope traz
id,
environment (test/live) e
client (slug do cliente). Entregas
que falham (resposta fora de 2xx ou sem resposta em 10 segundos) são tentadas até 5 vezes ao longo de cerca de 50 minutos (após 1, 5, 15 e 30 minutos),
e o portal mostra o resultado de cada tentativa. Redirecionamentos não são seguidos, e o endpoint precisa resolver para um IP público da internet: endereços locais ou de rede privada são recusados.
POST /seu-endpoint webhook-id: 0199…-uuid webhook-timestamp: 1790000000 webhook-signature: v1,K5oZfzN95Z9UVu1EsfQmfVNQhnkZ2pj9o9NDN/H/pI4= { "id": "0199…-uuid", "event": "student.created", "environment": "live", "client": "colegio-exemplo", "timestamp": "2026-09-28T08:30:00-03:00", "data": { … } }
Eventos suportados
A plataforma dispara os seguintes eventos para a URL configurada:
| Evento | Descrição |
|---|---|
attendance.check_in |
Disparado quando um aluno tem a entrada registrada pelo equipamento facial da escola. |
attendance.check_out |
Disparado quando um aluno tem a saída registrada pelo equipamento facial da escola. |
tssv.responsible_check_in |
Disparado quando um responsável realiza a verificação dupla para retirada de aluno. |
student.created |
Disparado quando um novo aluno é cadastrado na plataforma. |
student.updated |
Disparado quando os dados de um aluno são atualizados. |
student.deleted |
Disparado quando um aluno é removido da plataforma. |
student.photo_uploaded |
Disparado quando uma nova foto de aluno é enviada com sucesso via API. |
student.photo_status_updated |
Disparado quando o status da foto de um aluno é atualizado (aprovado ou rejeitado). |
student.photo_deleted |
Disparado quando a foto de um aluno é removida da plataforma. |
student.enrolled |
Disparado quando um aluno é matriculado em uma turma. |
student.enrollment_number_updated |
Disparado quando o número de matrícula de um aluno é atualizado. |
student.classroom_transferred |
Disparado quando um aluno é transferido internamente para outra turma da mesma escola. |
student.transferred_external |
Disparado quando um aluno é transferido para outra escola (transferência externa). |
student.enrollment_status_changed |
Disparado quando o status de uma matrícula é alterado após aprovação de autorização administrativa. |
student.enrollment_force_deleted |
Disparado quando uma matrícula é excluída de forma definitiva, após aprovação administrativa. |
student.enrollment_reactivated |
Disparado quando uma matrícula inativa é reativada após aprovação de autorização administrativa. |
student.responsible_linked |
Disparado quando um responsável primário é vinculado a um aluno. |
student.responsible_unlinked |
Disparado quando um responsável primário é desvinculado de um aluno. |
student.additional_responsible_linked |
Disparado quando um responsável adicional é vinculado a um aluno. |
student.additional_responsible_unlinked |
Disparado quando um responsável adicional é desvinculado de um aluno. |
responsible.created |
Disparado quando um novo responsável é cadastrado na plataforma. |
responsible.updated |
Disparado quando os dados de um responsável são atualizados. |
responsible.deleted |
Disparado quando um responsável é removido da plataforma. |
responsible.photo_uploaded |
Disparado quando uma nova foto de responsável é enviada com sucesso. |
responsible.photo_status_updated |
Disparado quando o status da foto de um responsável é atualizado (aprovado ou rejeitado). |
responsible.photo_deleted |
Disparado quando a foto de um responsável é removida da plataforma. |
responsible.student_linked |
Disparado quando um aluno é vinculado como responsável primário de um responsável. |
responsible.student_unlinked |
Disparado quando um aluno é desvinculado do responsável primário. |
responsible.additional_student_linked |
Disparado quando um aluno é vinculado como aluno adicional de um responsável. |
responsible.additional_student_unlinked |
Disparado quando um aluno adicional é desvinculado de um responsável. |
classroom.created |
Disparado quando uma nova turma é criada na plataforma. |
classroom.updated |
Disparado quando os dados de uma turma são atualizados. |
classroom.deleted |
Disparado quando uma turma é removida da plataforma. |
preenrollment.applied |
Disparado quando uma solicitação de pré-matrícula é realizada. |
preenrollment.allowed |
Disparado quando uma pré-matrícula é aprovada e o aluno é matriculado. |
preenrollment.denied |
Disparado quando uma pré-matrícula é recusada. |
preenrollment.denial_reverted |
Disparado quando a recusa de uma pré-matrícula é revertida. |
school_year.created |
Disparado quando um novo ano letivo é criado. |
school_year.updated |
Disparado quando os dados de um ano letivo são atualizados. |
school_year.deleted |
Disparado quando um ano letivo é removido. |
school_year.opened |
Disparado quando um ano letivo é aberto. |
school_year.closed |
Disparado quando um ano letivo é encerrado. |
school_year.preenrollment_toggled |
Disparado quando o status de pré-matrícula de um ano letivo é alternado. |
subject.created |
Disparado quando uma nova disciplina é criada. |
subject.updated |
Disparado quando os dados de uma disciplina são atualizados. |
subject.deleted |
Disparado quando uma disciplina é removida. |
grade_subject.attached |
Disparado quando uma disciplina é vinculada a uma série/ano. |
grade_subject.detached |
Disparado quando uma disciplina é desvinculada de uma série/ano. |
workload.created |
Disparado quando uma carga horária é criada. |
workload.updated |
Disparado quando uma carga horária é atualizada. |
workload.deleted |
Disparado quando uma carga horária é removida. |
curriculum_plan.created |
Disparado quando um plano de curso (BNCC) é criado. |
curriculum_plan.updated |
Disparado quando um plano de curso (BNCC) é atualizado. |
global_schedule.updated |
Disparado quando o horário global (entrada/saída/tolerância) é atualizado. |
weekly_schedule.updated |
Disparado quando o horário semanal é atualizado. |
coordinator.created |
Disparado quando um coordenador é cadastrado. |
coordinator.updated |
Disparado quando os dados de um coordenador são atualizados. |
coordinator.deleted |
Disparado quando um coordenador é removido. |
secretary.created |
Disparado quando um(a) secretário(a) é cadastrado(a). |
secretary.updated |
Disparado quando os dados de um(a) secretário(a) são atualizados. |
secretary.deleted |
Disparado quando um(a) secretário(a) é removido(a). |
teacher.created |
Disparado quando um professor é cadastrado. |
teacher.updated |
Disparado quando os dados de um professor são atualizados. |
teacher.deleted |
Disparado quando um professor é removido. |
agenda.created |
Disparado quando uma agenda é criada. |
agenda.updated |
Disparado quando uma agenda é atualizada. |
agenda.deleted |
Disparado quando uma agenda é removida. |
lesson.created |
Disparado quando uma aula é criada. |
lesson.updated |
Disparado quando uma aula é atualizada. |
lesson.deleted |
Disparado quando uma aula é removida. |
form_of_evaluation.created |
Disparado quando uma forma de avaliação é criada. |
form_of_evaluation.updated |
Disparado quando os dados de uma forma de avaliação são atualizados. |
form_of_evaluation.deleted |
Disparado quando uma forma de avaliação é removida. |
entrance.created |
Disparado quando uma portaria/entrada é criada. |
entrance.updated |
Disparado quando os dados de uma portaria/entrada são atualizados. |
entrance.deleted |
Disparado quando uma portaria/entrada é removida. |
assessment.saved |
Disparado quando uma nota de avaliação é criada ou atualizada. |
assessment.deleted |
Disparado quando uma nota de avaliação é removida. |
authorization.requested |
Disparado quando uma solicitação de autorização administrativa é criada (ex: alteração de status ou reativação de matrícula). |
authorization.approved |
Disparado quando uma autorização administrativa é aprovada e a ação correspondente é executada. |
authorization.rejected |
Disparado quando uma autorização administrativa é rejeitada. |
classroom_schedule.saved |
Disparado quando a grade de períodos (horários de cada aula na semana) de uma turma é salva via API. |
classroom_timetable.saved |
Disparado quando o quadro de horários de uma turma é salvo via API. |
classroom_timetable.cleared |
Disparado quando o quadro de horários de uma turma é limpo/removido via API. |
lesson_plan.saved |
Disparado quando um plano pedagógico é criado ou atualizado via API. |
diary_entry.updated |
Disparado quando uma entrada do diário de classe é atualizada via API. |
disciplinary_occurrence.created |
Disparado quando uma ocorrência disciplinar é registrada. |
disciplinary_occurrence.updated |
Disparado quando uma ocorrência disciplinar é atualizada. |
disciplinary_occurrence.deleted |
Disparado quando uma ocorrência disciplinar é removida. |
class_council.created |
Disparado quando um conselho de classe é criado. |
class_council.updated |
Disparado quando os dados de um conselho de classe são atualizados. |
class_council.deleted |
Disparado quando um conselho de classe é removido. |
class_council.closed |
Disparado quando um conselho de classe é encerrado. |
class_council.homologated |
Disparado quando um conselho de classe é homologado. |
Origem dos eventos
Todo evento é disparado quando a ação vem da API de parceiros. Alguns também são disparados quando a ação acontece fora da API; os demais vêm somente de chamadas à API.
Equipamentos de portaria (Control iD e Topdata)
Sistema web, aplicativos móveis, portais e formulários públicos da escola
Entrega assíncrona
Os webhooks são disparados via fila de jobs após a conclusão do evento. Sua URL deve responder
com um status 2xx para
confirmar o recebimento. Falhas consecutivas são registradas no log da plataforma.
attendance.check_in
Entrada de aluno
Disparado após o registro bem-sucedido de entrada de um aluno pelo equipamento facial (Control iD ou Topdata) da portaria, conectado diretamente ao Lumen — não há endpoint de API envolvido.
Campos do objeto data
school_cnpj
string
CNPJ da escola onde o check-in foi registrado.
enrollment_number
string
Número de matrícula do aluno.
checked_in_at
datetime
Data e hora da entrada no formato Y-m-d H:i:s.
{ "event": "attendance.check_in", "timestamp": "2026-04-30T08:30:00-03:00", "data": { "school_cnpj": "26019466000122", "enrollment_number": "7.553", "checked_in_at": "2026-04-30 08:29:55" } }
attendance.check_out
Saída de aluno
Disparado após o registro bem-sucedido de saída de um aluno pelo equipamento facial (Control iD ou Topdata) da portaria, conectado diretamente ao Lumen — não há endpoint de API envolvido.
Campos do objeto data
school_cnpj
string
CNPJ da escola onde o check-out foi registrado.
enrollment_number
string
Número de matrícula do aluno.
checked_out_at
datetime
Data e hora da saída no formato Y-m-d H:i:s.
{ "event": "attendance.check_out", "timestamp": "2026-04-30T17:45:00-03:00", "data": { "school_cnpj": "26019466000122", "enrollment_number": "7.553", "checked_out_at": "2026-04-30 17:44:42" } }
tssv.responsible_check_in
Verificação dupla — entrada do responsável
Disparado quando um responsável realiza a verificação dupla para retirada de aluno e há alunos aguardando custódia, seja pelo equipamento facial da escola, seja pelo app móvel.
Campos do objeto data
school_cnpj
string
CNPJ da escola onde a verificação ocorreu.
responsible_cpf
string
CPF do responsável que realizou a verificação.
checked_in_at
datetime
Data e hora da verificação no formato Y-m-d H:i:s.
{ "event": "tssv.responsible_check_in", "timestamp": "2026-04-30T17:40:00-03:00", "data": { "school_cnpj": "26019466000122", "responsible_cpf": "123.456.789-00", "checked_in_at": "2026-04-30 17:39:48" } }
student.created
Aluno criado
Disparado após o cadastro bem-sucedido de um novo aluno na plataforma.
Campos do objeto data
id
string (uuid)
ID único do aluno criado.
school_cnpj
string
CNPJ da escola onde o aluno foi cadastrado.
name
string
Nome completo do aluno cadastrado.
birthdate
date | null
Data de nascimento do aluno.
sex
string | null
Sexo do aluno.
race
string | null
Raça/cor do aluno.
nationality
string | null
Nacionalidade do aluno.
cpf
string | null
CPF do aluno (somente dígitos).
rg
string | null
RG do aluno.
rg_issuer
string | null
Órgão emissor do RG.
rg_issue_date
date | null
Data de emissão do RG.
filiation_1
string | null
Nome do primeiro responsável/filiação.
filiation_2
string | null
Nome do segundo responsável/filiação.
additional_info
string | null
Considerações adicionais sobre o aluno.
address
object | null
Endereço residencial do aluno. Contém: address_type, cep, address, number, complement, district, city_id, state_id.
{ "event": "student.created", "timestamp": "2026-04-30T09:00:00-03:00", "data": { "id": "9faea287-2f03-4b26-b234-c9e65a4e3f01", "school_cnpj": "26019466000122", "name": "João da Silva", "birthdate": "2015-03-14", "sex": "Masculino", "race": null, "nationality": "Brasileiro(a)", "cpf": null, "rg": null, "rg_issuer": null, "rg_issue_date": null, "filiation_1": "Maria da Silva", "filiation_2": null, "additional_info": null, "address": { "address_type": "Residencial", "cep": "20040020", "address": "Rua da Assembleia", "number": "10", "complement": null, "district": "Centro", "city_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890", "state_id": "b2c3d4e5-f6a7-8901-bcde-f12345678901" } } }
student.updated
Aluno editado
Disparado após a atualização bem-sucedida dos dados de um aluno na plataforma.
Campos do objeto data
id
string (uuid)
ID único do aluno.
school_cnpj
string
CNPJ da escola do aluno.
enrollment_number
string | null
Número de matrícula do aluno, ou null se não houver matrícula ativa.
name
string
Nome completo atualizado do aluno.
birthdate
date | null
Data de nascimento do aluno.
sex
string | null
Sexo do aluno.
race
string | null
Raça/cor do aluno.
nationality
string | null
Nacionalidade do aluno.
cpf
string | null
CPF do aluno (somente dígitos).
rg
string | null
RG do aluno.
rg_issuer
string | null
Órgão emissor do RG.
rg_issue_date
date | null
Data de emissão do RG.
filiation_1
string | null
Nome do primeiro responsável/filiação.
filiation_2
string | null
Nome do segundo responsável/filiação.
additional_info
string | null
Considerações adicionais sobre o aluno.
address
object | null
Endereço residencial do aluno. Contém: address_type, cep, address, number, complement, district, city_id, state_id.
{ "event": "student.updated", "timestamp": "2026-04-30T11:00:00-03:00", "data": { "id": "9faea287-2f03-4b26-b234-c9e65a4e3f01", "school_cnpj": "26019466000122", "enrollment_number": "7.553", "name": "João da Silva", "birthdate": "2015-03-14", "sex": "Masculino", "race": null, "nationality": "Brasileiro(a)", "cpf": null, "rg": null, "rg_issuer": null, "rg_issue_date": null, "filiation_1": "Maria da Silva", "filiation_2": null, "additional_info": null, "address": { "address_type": "Residencial", "cep": "20040020", "address": "Rua da Assembleia", "number": "10", "complement": null, "district": "Centro", "city_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890", "state_id": "b2c3d4e5-f6a7-8901-bcde-f12345678901" } } }
student.deleted
Aluno removido
Disparado após a remoção bem-sucedida de um aluno da plataforma. Só é disparado quando o aluno não possui matrículas ativas.
URLs que disparam o webhook
DELETE /v1/partners/school/{cnpj}/student/{enrollment_number}
Campos do objeto data
id
string (uuid)
ID único do aluno removido.
school_cnpj
string
CNPJ da escola do aluno removido.
name
string
Nome completo do aluno removido.
{ "event": "student.deleted", "timestamp": "2026-04-30T14:00:00-03:00", "data": { "id": "9faea287-2f03-4b26-b234-c9e65a4e3f01", "school_cnpj": "26019466000122", "name": "João da Silva" } }
student.enrolled
Aluno matriculado
Disparado após a matrícula bem-sucedida de um aluno em uma turma.
URLs que disparam o webhook
POST /v1/partners/school/{cnpj}/student/{enrollment_number}/enroll
Campos do objeto data
id
string (uuid)
ID único do aluno.
school_cnpj
string
CNPJ da escola do aluno matriculado.
enrollment_number
string|null
Número de matrícula do aluno.
name
string
Nome completo do aluno.
{ "event": "student.enrolled", "timestamp": "2026-04-30T10:50:00-03:00", "data": { "id": "9faea287-2f03-4b26-b234-c9e65a4e3f01", "school_cnpj": "26019466000122", "enrollment_number": "2025001", "name": "Maria da Silva" } }
student.enrollment_number_updated
Número de matrícula atualizado
Disparado após a atualização bem-sucedida do número de matrícula de um aluno.
URLs que disparam o webhook
PATCH /v1/partners/school/{cnpj}/enrollment/{enrollment_id}/number
Campos do objeto data
id
string (uuid)
ID único do aluno.
school_cnpj
string
CNPJ da escola do aluno.
old_enrollment_number
string
Número de matrícula anterior.
new_enrollment_number
string
Novo número de matrícula do aluno.
{ "event": "student.enrollment_number_updated", "timestamp": "2026-04-30T10:50:00-03:00", "data": { "id": "9faea287-2f03-4b26-b234-c9e65a4e3f01", "school_cnpj": "26019466000122", "old_enrollment_number": "2024001", "new_enrollment_number": "2025001" } }
student.classroom_transferred
Aluno transferido de turma
Disparado quando um aluno é transferido internamente para outra turma da mesma escola.
Campos do objeto data
id
string (uuid)
ID único do aluno.
school_cnpj
string
CNPJ da escola do aluno.
enrollment_number
string|null
Número de matrícula do aluno (mantido na nova turma).
from_classroom_id
string (uuid)
ID da turma de origem.
to_classroom_id
string (uuid)
ID da turma de destino.
reason
string|null
Motivo da transferência, se informado.
{ "event": "student.classroom_transferred", "timestamp": "2026-04-30T10:50:00-03:00", "data": { "id": "9faea287-2f03-4b26-b234-c9e65a4e3f01", "school_cnpj": "26019466000122", "enrollment_number": "2025001", "from_classroom_id": "550e8400-e29b-41d4-a716-446655440000", "to_classroom_id": "7ba7b810-9dad-11d1-80b4-00c04fd430c8", "reason": "Mudança de período" } }
student.transferred_external
Aluno transferido para outra escola
Disparado quando um aluno é transferido para outra escola (transferência externa), encerrando sua matrícula na escola atual.
Campos do objeto data
id
string (uuid)
ID único do aluno.
school_cnpj
string
CNPJ da escola de origem.
enrollment_number
string|null
Número de matrícula do aluno.
destination
string|null
Nome da escola de destino, se informado.
partial_transcript
boolean
Indica se foi emitido histórico parcial.
reason
string|null
Motivo da transferência, se informado.
{ "event": "student.transferred_external", "timestamp": "2026-04-30T10:50:00-03:00", "data": { "id": "9faea287-2f03-4b26-b234-c9e65a4e3f01", "school_cnpj": "26019466000122", "enrollment_number": "2025001", "destination": "Escola Estadual Nova Esperança", "partial_transcript": false, "reason": "Mudança de endereço da família" } }
student.enrollment_status_changed
Status da matrícula alterado
Disparado quando o status de uma matrícula é alterado após aprovação de autorização administrativa.
Campos do objeto data
id
string (uuid)
ID único do aluno.
school_cnpj
string
CNPJ da escola do aluno.
enrollment_number
string|null
Número de matrícula do aluno.
from_status
string
Status anterior da matrícula.
to_status
string
Novo status da matrícula.
reason
string|null
Motivo da alteração de status, se informado.
{ "event": "student.enrollment_status_changed", "timestamp": "2026-04-30T10:50:00-03:00", "data": { "id": "9faea287-2f03-4b26-b234-c9e65a4e3f01", "school_cnpj": "26019466000122", "enrollment_number": "2025001", "from_status": "MATRICULADO", "to_status": "TRANCADO", "reason": "Pedido da família" } }
student.enrollment_force_deleted
Matrícula excluída definitivamente
Disparado quando uma matrícula é excluída de forma definitiva após aprovação administrativa, geralmente para desfazer uma transferência ou atualização de status incorreta.
Campos do objeto data
id
string (uuid)
ID único do aluno.
school_cnpj
string
CNPJ da escola do aluno.
enrollment_number
string|null
Número de matrícula que foi excluída.
previous_status
string
Status da matrícula antes da exclusão.
reason
string|null
Motivo da exclusão, se informado.
{ "event": "student.enrollment_force_deleted", "timestamp": "2026-04-30T10:50:00-03:00", "data": { "id": "9faea287-2f03-4b26-b234-c9e65a4e3f01", "school_cnpj": "26019466000122", "enrollment_number": "2025001", "previous_status": "TRANSFERIDO", "reason": "Transferência registrada incorretamente" } }
student.enrollment_reactivated
Matrícula reativada
Disparado quando uma matrícula inativa é reativada após aprovação de autorização administrativa.
Campos do objeto data
id
string (uuid)
ID único do aluno.
school_cnpj
string
CNPJ da escola do aluno.
enrollment_number
string|null
Número de matrícula reativada.
from_status
string
Status anterior da matrícula antes da reativação.
to_status
string
Novo status da matrícula (sempre MATRICULADO).
{ "event": "student.enrollment_reactivated", "timestamp": "2026-04-30T10:50:00-03:00", "data": { "id": "9faea287-2f03-4b26-b234-c9e65a4e3f01", "school_cnpj": "26019466000122", "enrollment_number": "2025001", "from_status": "TRANCADO", "to_status": "MATRICULADO" } }
student.photo_uploaded
Foto de aluno enviada
Disparado após o envio bem-sucedido de uma foto de aluno. Só é disparado quando o upload é processado com sucesso.
URL que dispara o webhook
PUT /v1/partners/school/{cnpj}/student/{enrollment_number}/photo
Campos do objeto data
id
string (uuid)
ID único do aluno.
school_cnpj
string
CNPJ da escola do aluno.
enrollment_number
string
Número de matrícula do aluno cuja foto foi enviada.
{ "event": "student.photo_uploaded", "timestamp": "2026-04-30T10:15:00-03:00", "data": { "id": "9faea287-2f03-4b26-b234-c9e65a4e3f01", "school_cnpj": "26019466000122", "enrollment_number": "7.553" } }
student.photo_status_updated
Status da foto de aluno atualizado
Disparado quando o equipamento facial da escola aceita (aprovado) ou recusa (rejeitado) a foto do aluno ao cadastrar a face, e o status da foto muda.
Campos do objeto data
school_cnpj
string
CNPJ da escola do aluno.
enrollment_number
string
Número de matrícula do aluno.
status
string
Novo status da foto: approved ou rejected.
{ "event": "student.photo_status_updated", "timestamp": "2026-04-30T11:25:00-03:00", "data": { "school_cnpj": "26019466000122", "enrollment_number": "7.553", "status": "approved" } }
student.photo_deleted
Foto de aluno removida
Disparado após a remoção bem-sucedida da foto de um aluno da plataforma.
Campos do objeto data
id
string (uuid)
ID único do aluno.
school_cnpj
string
CNPJ da escola do aluno.
enrollment_number
string
Número de matrícula do aluno cuja foto foi removida.
{ "event": "student.photo_deleted", "timestamp": "2026-04-30T10:20:00-03:00", "data": { "id": "9faea287-2f03-4b26-b234-c9e65a4e3f01", "school_cnpj": "26019466000122", "enrollment_number": "7.553" } }
responsible.created
Responsável criado
Disparado após o cadastro bem-sucedido de um novo responsável na plataforma.
URLs que disparam o webhook
POST /v1/partners/school/{cnpj}/responsible
Campos do objeto data
school_cnpj
string
CNPJ da escola associada ao responsável.
cpf
string
CPF do responsável cadastrado.
{ "event": "responsible.created", "timestamp": "2026-04-30T09:30:00-03:00", "data": { "school_cnpj": "26019466000122", "cpf": "123.456.789-00" } }
responsible.updated
Responsável editado
Disparado após a atualização bem-sucedida dos dados de um responsável na plataforma.
URLs que disparam o webhook
PUT /v1/partners/school/{cnpj}/responsible/{cpf}
Campos do objeto data
school_cnpj
string
CNPJ da escola associada ao responsável.
cpf
string
CPF do responsável atualizado.
{ "event": "responsible.updated", "timestamp": "2026-04-30T11:30:00-03:00", "data": { "school_cnpj": "26019466000122", "cpf": "123.456.789-00" } }
responsible.deleted
Responsável removido
Disparado após a remoção bem-sucedida de um responsável da plataforma. Só é disparado quando o responsável não possui alunos vinculados.
URLs que disparam o webhook
DELETE /v1/partners/school/{cnpj}/responsible/{cpf}
Campos do objeto data
school_cnpj
string
CNPJ da escola associada ao responsável removido.
cpf
string
CPF do responsável removido.
{ "event": "responsible.deleted", "timestamp": "2026-04-30T15:00:00-03:00", "data": { "school_cnpj": "26019466000122", "cpf": "123.456.789-00" } }
responsible.photo_uploaded
Foto de responsável enviada
Disparado após o envio bem-sucedido de uma foto de responsável: pela API, pelo cadastro ou edição do responsável no sistema web ou pelo app móvel. Só é disparado quando o upload é processado com sucesso.
URL que dispara o webhook
PUT /v1/partners/school/{cnpj}/responsible/{cpf}/photo
Campos do objeto data
school_cnpj
string
CNPJ da escola associada ao responsável.
cpf
string
CPF do responsável cuja foto foi enviada.
{ "event": "responsible.photo_uploaded", "timestamp": "2026-04-30T10:45:00-03:00", "data": { "school_cnpj": "26019466000122", "cpf": "123.456.789-00" } }
responsible.photo_status_updated
Status da foto de responsável atualizado
Disparado quando o equipamento facial da escola aceita (aprovado) ou recusa (rejeitado) a foto do responsável ao cadastrar a face, e o status da foto muda.
Campos do objeto data
school_cnpj
string
CNPJ da escola do responsável.
cpf
string
CPF do responsável.
status
string
Novo status da foto: approved ou rejected.
{ "event": "responsible.photo_status_updated", "timestamp": "2026-04-30T11:30:00-03:00", "data": { "school_cnpj": "26019466000122", "cpf": "123.456.789-00", "status": "rejected" } }
responsible.photo_deleted
Foto de responsável removida
Disparado após a remoção bem-sucedida da foto de um responsável da plataforma.
Campos do objeto data
school_cnpj
string
CNPJ da escola associada ao responsável.
cpf
string
CPF do responsável cuja foto foi removida.
{ "event": "responsible.photo_deleted", "timestamp": "2026-04-30T10:50:00-03:00", "data": { "school_cnpj": "26019466000122", "cpf": "123.456.789-00" } }
classroom.created
Turma criada
Disparado após a criação bem-sucedida de uma nova turma na plataforma.
URLs que disparam o webhook
POST /v1/partners/school/{cnpj}/classroom
Campos do objeto data
school_cnpj
string
CNPJ da escola à qual a turma pertence.
classroom_name
string
Nome da turma criada.
{ "event": "classroom.created", "timestamp": "2026-04-30T10:50:00-03:00", "data": { "school_cnpj": "26019466000122", "classroom_name": "3º Ano A" } }
classroom.updated
Turma atualizada
Disparado após a atualização bem-sucedida dos dados de uma turma.
URLs que disparam o webhook
PUT /v1/partners/school/{cnpj}/classroom/{id}
Campos do objeto data
school_cnpj
string
CNPJ da escola à qual a turma pertence.
classroom_name
string
Nome atualizado da turma.
{ "event": "classroom.updated", "timestamp": "2026-04-30T10:50:00-03:00", "data": { "school_cnpj": "26019466000122", "classroom_name": "3º Ano A" } }
classroom.deleted
Turma removida
Disparado após a remoção bem-sucedida de uma turma da plataforma.
URLs que disparam o webhook
DELETE /v1/partners/school/{cnpj}/classroom/{id}
Campos do objeto data
school_cnpj
string
CNPJ da escola à qual a turma pertencia.
classroom_name
string
Nome da turma removida.
{ "event": "classroom.deleted", "timestamp": "2026-04-30T10:50:00-03:00", "data": { "school_cnpj": "26019466000122", "classroom_name": "3º Ano A" } }
preenrollment.applied
Pré-matrícula solicitada
Disparado após o envio bem-sucedido de uma solicitação de pré-matrícula.
Campos do objeto data
school_cnpj
string
CNPJ da escola onde a pré-matrícula foi solicitada.
preenrollment_number
string
Número único gerado para a pré-matrícula.
student_name
string
Nome do aluno para o qual a pré-matrícula foi solicitada.
responsible_cpf
string
CPF do responsável que realizou a solicitação.
{ "event": "preenrollment.applied", "timestamp": "2026-04-30T10:50:00-03:00", "data": { "school_cnpj": "26019466000122", "preenrollment_number": "PRE-78901748900000", "student_name": "Maria da Silva", "responsible_cpf": "123.456.789-00" } }
preenrollment.allowed
Pré-matrícula aprovada
Disparado após a aprovação de uma pré-matrícula e a consequente matrícula do aluno na turma.
Campos do objeto data
school_cnpj
string
CNPJ da escola onde a pré-matrícula foi aprovada.
preenrollment_number
string
Número da pré-matrícula aprovada.
student_name
string
Nome do aluno matriculado.
{ "event": "preenrollment.allowed", "timestamp": "2026-04-30T10:50:00-03:00", "data": { "school_cnpj": "26019466000122", "preenrollment_number": "PRE-78901748900000", "student_name": "Maria da Silva" } }
preenrollment.denied
Pré-matrícula recusada
Disparado após a recusa de uma pré-matrícula pela escola.
Campos do objeto data
school_cnpj
string
CNPJ da escola onde a pré-matrícula foi recusada.
preenrollment_number
string
Número da pré-matrícula recusada.
{ "event": "preenrollment.denied", "timestamp": "2026-04-30T10:50:00-03:00", "data": { "school_cnpj": "26019466000122", "preenrollment_number": "PRE-78901748900000" } }
preenrollment.denial_reverted
Recusa de pré-matrícula revertida
Disparado após a reversão de uma recusa de pré-matrícula, retornando-a ao status pendente.
Campos do objeto data
school_cnpj
string
CNPJ da escola onde a recusa foi revertida.
preenrollment_number
string
Número da pré-matrícula cuja recusa foi revertida.
{ "event": "preenrollment.denial_reverted", "timestamp": "2026-04-30T10:50:00-03:00", "data": { "school_cnpj": "26019466000122", "preenrollment_number": "PRE-78901748900000" } }
responsible.student_linked
Aluno vinculado ao responsável
Disparado após o vínculo bem-sucedido de um aluno como responsável primário de um responsável.
Disparado em conjunto com o evento student.responsible_linked.
URLs que disparam o webhook
POST /v1/partners/school/{cnpj}/responsible/{cpf}/student/{enrollment_number}
POST /v1/partners/school/{cnpj}/student/{enrollment_number}/responsible/{cpf}
Campos do objeto data
school_cnpj
string
CNPJ da escola do responsável.
cpf
string
CPF do responsável ao qual o aluno foi vinculado.
enrollment_number
string
Número de matrícula do aluno vinculado.
{ "event": "responsible.student_linked", "timestamp": "2026-04-30T09:30:00-03:00", "data": { "school_cnpj": "26019466000122", "cpf": "123.456.789-00", "enrollment_number": "7.553" } }
responsible.student_unlinked
Aluno desvinculado do responsável
Disparado após o desvínculo bem-sucedido de um aluno do responsável primário.
Disparado em conjunto com o evento student.responsible_unlinked.
URLs que disparam o webhook
DELETE /v1/partners/school/{cnpj}/responsible/{cpf}/student/{enrollment_number}
DELETE /v1/partners/school/{cnpj}/student/{enrollment_number}/responsible/{cpf}
Campos do objeto data
school_cnpj
string
CNPJ da escola do responsável.
cpf
string
CPF do responsável do qual o aluno foi desvinculado.
enrollment_number
string
Número de matrícula do aluno desvinculado.
{ "event": "responsible.student_unlinked", "timestamp": "2026-04-30T09:30:00-03:00", "data": { "school_cnpj": "26019466000122", "cpf": "123.456.789-00", "enrollment_number": "7.553" } }
responsible.additional_student_linked
Aluno adicional vinculado ao responsável
Disparado após o vínculo bem-sucedido de um aluno como aluno adicional de um responsável.
URL que dispara o webhook
POST /v1/partners/school/{cnpj}/responsible/{cpf}/additional-student/{enrollment_number}
Campos do objeto data
school_cnpj
string
CNPJ da escola do responsável.
cpf
string
CPF do responsável ao qual o aluno adicional foi vinculado.
enrollment_number
string
Número de matrícula do aluno adicional vinculado.
{ "event": "responsible.additional_student_linked", "timestamp": "2026-04-30T09:30:00-03:00", "data": { "school_cnpj": "26019466000122", "cpf": "123.456.789-00", "enrollment_number": "7.553" } }
responsible.additional_student_unlinked
Aluno adicional desvinculado do responsável
Disparado após o desvínculo bem-sucedido de um aluno adicional de um responsável.
URL que dispara o webhook
DELETE /v1/partners/school/{cnpj}/responsible/{cpf}/additional-student/{enrollment_number}
Campos do objeto data
school_cnpj
string
CNPJ da escola do responsável.
cpf
string
CPF do responsável do qual o aluno adicional foi desvinculado.
enrollment_number
string
Número de matrícula do aluno adicional desvinculado.
{ "event": "responsible.additional_student_unlinked", "timestamp": "2026-04-30T09:30:00-03:00", "data": { "school_cnpj": "26019466000122", "cpf": "123.456.789-00", "enrollment_number": "7.553" } }
student.responsible_linked
Responsável primário vinculado ao aluno
Disparado junto ao evento responsible.student_linked quando um responsável primário é vinculado a um aluno.
Representa a mesma operação da perspectiva do aluno.
URLs que disparam o webhook
POST /v1/partners/school/{cnpj}/responsible/{cpf}/student/{enrollment_number}
POST /v1/partners/school/{cnpj}/student/{enrollment_number}/responsible/{cpf}
Campos do objeto data
school_cnpj
string
CNPJ da escola do aluno.
cpf
string
CPF do responsável primário vinculado.
enrollment_number
string
Número de matrícula do aluno ao qual o responsável foi vinculado.
{ "event": "student.responsible_linked", "timestamp": "2026-04-30T09:30:00-03:00", "data": { "school_cnpj": "26019466000122", "cpf": "123.456.789-00", "enrollment_number": "7.553" } }
student.responsible_unlinked
Responsável primário desvinculado do aluno
Disparado junto ao evento responsible.student_unlinked quando um responsável primário é desvinculado de um aluno.
Representa a mesma operação da perspectiva do aluno.
URLs que disparam o webhook
DELETE /v1/partners/school/{cnpj}/responsible/{cpf}/student/{enrollment_number}
DELETE /v1/partners/school/{cnpj}/student/{enrollment_number}/responsible/{cpf}
Campos do objeto data
school_cnpj
string
CNPJ da escola do aluno.
cpf
string
CPF do responsável primário desvinculado.
enrollment_number
string
Número de matrícula do aluno do qual o responsável foi desvinculado.
{ "event": "student.responsible_unlinked", "timestamp": "2026-04-30T09:30:00-03:00", "data": { "school_cnpj": "26019466000122", "cpf": "123.456.789-00", "enrollment_number": "7.553" } }
student.additional_responsible_linked
Responsável adicional vinculado ao aluno
Disparado após o vínculo bem-sucedido de um responsável adicional a um aluno.
URL que dispara o webhook
POST /v1/partners/school/{cnpj}/student/{enrollment_number}/additional-responsible/{cpf}
Campos do objeto data
school_cnpj
string
CNPJ da escola do aluno.
enrollment_number
string
Número de matrícula do aluno ao qual o responsável foi vinculado.
cpf
string
CPF do responsável adicional vinculado.
{ "event": "student.additional_responsible_linked", "timestamp": "2026-04-30T09:30:00-03:00", "data": { "school_cnpj": "26019466000122", "enrollment_number": "7.553", "cpf": "123.456.789-00" } }
student.additional_responsible_unlinked
Responsável adicional desvinculado do aluno
Disparado após o desvínculo bem-sucedido de um responsável adicional de um aluno.
URL que dispara o webhook
DELETE /v1/partners/school/{cnpj}/student/{enrollment_number}/additional-responsible/{cpf}
Campos do objeto data
school_cnpj
string
CNPJ da escola do aluno.
enrollment_number
string
Número de matrícula do aluno do qual o responsável foi desvinculado.
cpf
string
CPF do responsável adicional desvinculado.
{ "event": "student.additional_responsible_unlinked", "timestamp": "2026-04-30T09:30:00-03:00", "data": { "school_cnpj": "26019466000122", "enrollment_number": "7.553", "cpf": "123.456.789-00" } }
school_year.created
Ano letivo criado
Disparado após a criação bem-sucedida de um novo ano letivo.
URLs que disparam o webhook
POST /v1/partners/school/{cnpj}/school-year
Campos do objeto data
school_cnpj
string
CNPJ da escola.
name
string
Nome do ano letivo.
year
integer
Ano do ano letivo.
{ "event": "school_year.created", "timestamp": "2026-04-30T10:50:00-03:00", "data": { "school_cnpj": "26019466000122", "name": "Ano Letivo 2026", "year": 2026 } }
school_year.updated
Ano letivo atualizado
Disparado após a atualização dos dados de um ano letivo.
URLs que disparam o webhook
PUT /v1/partners/school/{cnpj}/school-year/{id}
Campos do objeto data
school_cnpj
string
CNPJ da escola.
name
string
Nome atualizado do ano letivo.
year
integer
Ano do ano letivo.
{ "event": "school_year.updated", "timestamp": "2026-04-30T10:50:00-03:00", "data": { "school_cnpj": "26019466000122", "name": "Ano Letivo 2026", "year": 2026 } }
school_year.deleted
Ano letivo removido
Disparado após a remoção bem-sucedida de um ano letivo.
URLs que disparam o webhook
DELETE /v1/partners/school/{cnpj}/school-year/{id}
Campos do objeto data
school_cnpj
string
CNPJ da escola.
name
string
Nome do ano letivo removido.
year
integer
Ano do ano letivo removido.
{ "event": "school_year.deleted", "timestamp": "2026-04-30T10:50:00-03:00", "data": { "school_cnpj": "26019466000122", "name": "Ano Letivo 2026", "year": 2026 } }
school_year.opened
Ano letivo aberto
Disparado quando um ano letivo é aberto.
URLs que disparam o webhook
PATCH /v1/partners/school/{cnpj}/school-year/{id}/open
Campos do objeto data
school_cnpj
string
CNPJ da escola.
name
string
Nome do ano letivo.
year
integer
Ano do ano letivo.
{ "event": "school_year.opened", "timestamp": "2026-04-30T10:50:00-03:00", "data": { "school_cnpj": "26019466000122", "name": "Ano Letivo 2026", "year": 2026 } }
school_year.closed
Ano letivo encerrado
Disparado quando um ano letivo é encerrado.
URLs que disparam o webhook
PATCH /v1/partners/school/{cnpj}/school-year/{id}/close
Campos do objeto data
school_cnpj
string
CNPJ da escola.
name
string
Nome do ano letivo.
year
integer
Ano do ano letivo.
{ "event": "school_year.closed", "timestamp": "2026-04-30T10:50:00-03:00", "data": { "school_cnpj": "26019466000122", "name": "Ano Letivo 2026", "year": 2026 } }
school_year.preenrollment_toggled
Pré-matrícula do ano letivo alternada
Disparado quando o status de pré-matrícula de um ano letivo é alternado.
URLs que disparam o webhook
PATCH /v1/partners/school/{cnpj}/school-year/{id}/preenrollment/toggle
Campos do objeto data
school_cnpj
string
CNPJ da escola.
name
string
Nome do ano letivo.
year
integer
Ano do ano letivo.
status
boolean
Novo status de pré-matrícula (true = habilitada, false = desabilitada).
{ "event": "school_year.preenrollment_toggled", "timestamp": "2026-04-30T10:50:00-03:00", "data": { "school_cnpj": "26019466000122", "name": "Ano Letivo 2026", "year": 2026, "status": true } }
subject.created
Disciplina criada
Disparado após a criação de uma nova disciplina.
URLs que disparam o webhook
POST /v1/partners/school/{cnpj}/subject
Campos do objeto data
school_cnpj
string
CNPJ da escola.
name
string
Nome da disciplina.
abbreviation
string
Abreviação da disciplina.
{ "event": "subject.created", "timestamp": "2026-04-30T10:50:00-03:00", "data": { "school_cnpj": "26019466000122", "name": "Matemática", "abbreviation": "MAT" } }
subject.updated
Disciplina atualizada
Disparado após a atualização dos dados de uma disciplina.
URLs que disparam o webhook
PUT /v1/partners/school/{cnpj}/subject/{id}
Campos do objeto data
school_cnpj
string
CNPJ da escola.
name
string
Nome atualizado da disciplina.
abbreviation
string
Abreviação atualizada da disciplina.
{ "event": "subject.updated", "timestamp": "2026-04-30T10:50:00-03:00", "data": { "school_cnpj": "26019466000122", "name": "Matemática", "abbreviation": "MAT" } }
subject.deleted
Disciplina removida
Disparado após a remoção de uma disciplina.
URLs que disparam o webhook
DELETE /v1/partners/school/{cnpj}/subject/{id}
Campos do objeto data
school_cnpj
string
CNPJ da escola.
name
string
Nome da disciplina removida.
{ "event": "subject.deleted", "timestamp": "2026-04-30T10:50:00-03:00", "data": { "school_cnpj": "26019466000122", "name": "Matemática" } }
grade_subject.attached
Disciplina vinculada à série/ano
Disparado quando uma disciplina é vinculada a uma série/ano.
URLs que disparam o webhook
POST /v1/partners/school/{cnpj}/grade/{gradeId}/subject
Campos do objeto data
school_cnpj
string
CNPJ da escola.
grade_id
integer
ID da série/ano.
subject_id
integer
ID da disciplina vinculada.
{ "event": "grade_subject.attached", "timestamp": "2026-04-30T10:50:00-03:00", "data": { "school_cnpj": "26019466000122", "grade_id": 12, "subject_id": 45 } }
grade_subject.detached
Disciplina desvinculada da série/ano
Disparado quando uma disciplina é desvinculada de uma série/ano.
URLs que disparam o webhook
DELETE /v1/partners/school/{cnpj}/grade/{gradeId}/subject/{subjectId}
Campos do objeto data
school_cnpj
string
CNPJ da escola.
grade_id
integer
ID da série/ano.
subject_id
integer
ID da disciplina desvinculada.
{ "event": "grade_subject.detached", "timestamp": "2026-04-30T10:50:00-03:00", "data": { "school_cnpj": "26019466000122", "grade_id": 12, "subject_id": 45 } }
workload.created
Carga horária criada
Disparado após a criação de uma carga horária.
URLs que disparam o webhook
POST /v1/partners/school/{cnpj}/workload
Campos do objeto data
school_cnpj
string
CNPJ da escola.
grade_id
integer
ID da série/ano.
subject_id
integer
ID da disciplina.
{ "event": "workload.created", "timestamp": "2026-04-30T10:50:00-03:00", "data": { "school_cnpj": "26019466000122", "grade_id": 12, "subject_id": 45 } }
workload.updated
Carga horária atualizada
Disparado após a atualização de uma carga horária.
URLs que disparam o webhook
PUT /v1/partners/school/{cnpj}/workload/{id}
Campos do objeto data
school_cnpj
string
CNPJ da escola.
grade_id
integer
ID da série/ano.
subject_id
integer
ID da disciplina.
{ "event": "workload.updated", "timestamp": "2026-04-30T10:50:00-03:00", "data": { "school_cnpj": "26019466000122", "grade_id": 12, "subject_id": 45 } }
workload.deleted
Carga horária removida
Disparado após a remoção de uma carga horária.
URLs que disparam o webhook
DELETE /v1/partners/school/{cnpj}/workload/{id}
Campos do objeto data
school_cnpj
string
CNPJ da escola.
grade_id
integer
ID da série/ano.
subject_id
integer
ID da disciplina.
{ "event": "workload.deleted", "timestamp": "2026-04-30T10:50:00-03:00", "data": { "school_cnpj": "26019466000122", "grade_id": 12, "subject_id": 45 } }
curriculum_plan.created
Plano de curso (BNCC) criado
Disparado após a criação de um plano de curso baseado na BNCC.
URLs que disparam o webhook
POST /v1/partners/school/{cnpj}/curriculum-plan
Campos do objeto data
school_cnpj
string
CNPJ da escola.
id
integer
ID do plano de curso criado.
school_year_id
integer
ID do ano letivo associado.
grade_id
integer
ID da série/ano associada.
{ "event": "curriculum_plan.created", "timestamp": "2026-04-30T10:50:00-03:00", "data": { "school_cnpj": "26019466000122", "id": 101, "school_year_id": 7, "grade_id": 12 } }
curriculum_plan.updated
Plano de curso (BNCC) atualizado
Disparado após a atualização de um plano de curso baseado na BNCC.
URLs que disparam o webhook
PUT /v1/partners/school/{cnpj}/curriculum-plan/{id}
Campos do objeto data
school_cnpj
string
CNPJ da escola.
id
integer
ID do plano de curso.
school_year_id
integer
ID do ano letivo associado.
grade_id
integer
ID da série/ano associada.
{ "event": "curriculum_plan.updated", "timestamp": "2026-04-30T10:50:00-03:00", "data": { "school_cnpj": "26019466000122", "id": 101, "school_year_id": 7, "grade_id": 12 } }
global_schedule.updated
Horário global atualizado
Disparado após a atualização do horário global da escola (entrada, saída e tolerância).
URLs que disparam o webhook
PUT /v1/partners/school/{cnpj}/global-schedule
Campos do objeto data
school_cnpj
string
CNPJ da escola.
{ "event": "global_schedule.updated", "timestamp": "2026-04-30T10:50:00-03:00", "data": { "school_cnpj": "26019466000122" } }
weekly_schedule.updated
Horário semanal atualizado
Disparado após a atualização do horário semanal da escola.
URLs que disparam o webhook
PUT /v1/partners/school/{cnpj}/weekly-schedule
Campos do objeto data
school_cnpj
string
CNPJ da escola.
{ "event": "weekly_schedule.updated", "timestamp": "2026-04-30T10:50:00-03:00", "data": { "school_cnpj": "26019466000122" } }
coordinator.created
Coordenador cadastrado
Disparado após o cadastro de um novo coordenador.
URLs que disparam o webhook
POST /v1/partners/school/{cnpj}/coordinator
Campos do objeto data
school_cnpj
string
CNPJ da escola.
email
string
E-mail do coordenador.
{ "event": "coordinator.created", "timestamp": "2026-04-30T10:50:00-03:00", "data": { "school_cnpj": "26019466000122", "email": "coordenador@escola.com" } }
coordinator.updated
Coordenador atualizado
Disparado após a atualização dos dados de um coordenador.
URLs que disparam o webhook
PUT /v1/partners/school/{cnpj}/coordinator/{id}
Campos do objeto data
school_cnpj
string
CNPJ da escola.
email
string
E-mail atual do coordenador.
{ "event": "coordinator.updated", "timestamp": "2026-04-30T10:50:00-03:00", "data": { "school_cnpj": "26019466000122", "email": "coordenador@escola.com" } }
coordinator.deleted
Coordenador removido
Disparado após a remoção de um coordenador.
URLs que disparam o webhook
DELETE /v1/partners/school/{cnpj}/coordinator/{id}
Campos do objeto data
school_cnpj
string
CNPJ da escola.
email
string
E-mail do coordenador removido.
{ "event": "coordinator.deleted", "timestamp": "2026-04-30T10:50:00-03:00", "data": { "school_cnpj": "26019466000122", "email": "coordenador@escola.com" } }
secretary.created
Secretário(a) cadastrado(a)
Disparado após o cadastro de um(a) novo(a) secretário(a).
URLs que disparam o webhook
POST /v1/partners/school/{cnpj}/secretary
Campos do objeto data
school_cnpj
string
CNPJ da escola.
email
string
E-mail do(a) secretário(a).
{ "event": "secretary.created", "timestamp": "2026-04-30T10:50:00-03:00", "data": { "school_cnpj": "26019466000122", "email": "secretaria@escola.com" } }
secretary.updated
Secretário(a) atualizado(a)
Disparado após a atualização dos dados de um(a) secretário(a).
URLs que disparam o webhook
PUT /v1/partners/school/{cnpj}/secretary/{id}
Campos do objeto data
school_cnpj
string
CNPJ da escola.
email
string
E-mail atual do(a) secretário(a).
{ "event": "secretary.updated", "timestamp": "2026-04-30T10:50:00-03:00", "data": { "school_cnpj": "26019466000122", "email": "secretaria@escola.com" } }
secretary.deleted
Secretário(a) removido(a)
Disparado após a remoção de um(a) secretário(a).
URLs que disparam o webhook
DELETE /v1/partners/school/{cnpj}/secretary/{id}
Campos do objeto data
school_cnpj
string
CNPJ da escola.
email
string
E-mail do(a) secretário(a) removido(a).
{ "event": "secretary.deleted", "timestamp": "2026-04-30T10:50:00-03:00", "data": { "school_cnpj": "26019466000122", "email": "secretaria@escola.com" } }
teacher.created
Professor cadastrado
Disparado após o cadastro de um novo professor.
URLs que disparam o webhook
POST /v1/partners/school/{cnpj}/teacher
Campos do objeto data
school_cnpj
string
CNPJ da escola.
email
string
E-mail do professor.
{ "event": "teacher.created", "timestamp": "2026-04-30T10:50:00-03:00", "data": { "school_cnpj": "26019466000122", "email": "professor@escola.com" } }
teacher.updated
Professor atualizado
Disparado após a atualização dos dados de um professor.
URLs que disparam o webhook
PUT /v1/partners/school/{cnpj}/teacher/{id}
Campos do objeto data
school_cnpj
string
CNPJ da escola.
email
string
E-mail atual do professor.
{ "event": "teacher.updated", "timestamp": "2026-04-30T10:50:00-03:00", "data": { "school_cnpj": "26019466000122", "email": "professor@escola.com" } }
teacher.deleted
Professor removido
Disparado após a remoção de um professor.
URLs que disparam o webhook
DELETE /v1/partners/school/{cnpj}/teacher/{id}
Campos do objeto data
school_cnpj
string
CNPJ da escola.
email
string
E-mail do professor removido.
{ "event": "teacher.deleted", "timestamp": "2026-04-30T10:50:00-03:00", "data": { "school_cnpj": "26019466000122", "email": "professor@escola.com" } }
agenda.created
Agenda criada
Disparado após a criação de uma nova agenda no sistema.
Origem do evento
Este evento é disparado quando uma agenda é criada pelo painel administrativo da escola.
Campos do objeto data
id
string (uuid)
ID da agenda criada.
school_cnpj
string
CNPJ da escola.
subject
string
Assunto da agenda.
description
string|null
Descrição da agenda.
{ "event": "agenda.created", "timestamp": "2026-04-30T10:50:00-03:00", "data": { "id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890", "school_cnpj": "26019466000122", "subject": "Reunião de pais e mestres", "description": "Informações sobre o calendário escolar." } }
agenda.updated
Agenda atualizada
Disparado após a atualização de uma agenda existente.
Origem do evento
Este evento é disparado quando uma agenda é editada pelo painel administrativo da escola.
Campos do objeto data
id
string (uuid)
ID da agenda atualizada.
school_cnpj
string
CNPJ da escola.
subject
string
Assunto atualizado da agenda.
description
string|null
Descrição atualizada da agenda.
{ "event": "agenda.updated", "timestamp": "2026-04-30T11:00:00-03:00", "data": { "id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890", "school_cnpj": "26019466000122", "subject": "Reunião de pais e mestres — atualizado", "description": "Detalhes atualizados do evento." } }
agenda.deleted
Agenda removida
Disparado após a remoção de uma agenda.
URLs que disparam o webhook
DELETE /v1/partners/school/{cnpj}/agenda/{id}
Campos do objeto data
school_cnpj
string
CNPJ da escola.
id
integer
ID da agenda removida.
{ "event": "agenda.deleted", "timestamp": "2026-04-30T10:50:00-03:00", "data": { "school_cnpj": "26019466000122", "id": 321 } }
lesson.created
Aula criada
Disparado após a criação de uma nova aula no sistema.
Origem do evento
Este evento é disparado quando uma aula é criada pelo painel administrativo da escola.
Campos do objeto data
id
string (uuid)
ID da aula criada.
school_cnpj
string
CNPJ da escola.
title
string
Título da aula.
description
string|null
Descrição da aula.
{ "event": "lesson.created", "timestamp": "2026-04-30T10:50:00-03:00", "data": { "id": "b2c3d4e5-f6a7-8901-bcde-f12345678901", "school_cnpj": "26019466000122", "title": "Introdução à Matemática", "description": "Conceitos básicos de aritmética." } }
lesson.updated
Aula atualizada
Disparado após a atualização de uma aula existente.
Origem do evento
Este evento é disparado quando uma aula é editada pelo painel administrativo da escola.
Campos do objeto data
id
string (uuid)
ID da aula atualizada.
school_cnpj
string
CNPJ da escola.
title
string
Título atualizado da aula.
description
string|null
Descrição atualizada da aula.
{ "event": "lesson.updated", "timestamp": "2026-04-30T11:00:00-03:00", "data": { "id": "b2c3d4e5-f6a7-8901-bcde-f12345678901", "school_cnpj": "26019466000122", "title": "Introdução à Matemática — revisado", "description": "Conceitos básicos revisados." } }
lesson.deleted
Aula removida
Disparado após a remoção de uma aula.
URLs que disparam o webhook
DELETE /v1/partners/school/{cnpj}/lesson/{id}
Campos do objeto data
school_cnpj
string
CNPJ da escola.
id
integer
ID da aula removida.
{ "event": "lesson.deleted", "timestamp": "2026-04-30T10:50:00-03:00", "data": { "school_cnpj": "26019466000122", "id": 987 } }
form_of_evaluation.created
Forma de avaliação criada
Disparado após a criação bem-sucedida de uma forma de avaliação.
URL que dispara o webhook
POST /v1/partners/school/{cnpj}/school-year/{school_year_id}/form-of-evaluation
Campos do objeto data
school_cnpj
string
CNPJ da escola.
id
integer
ID único da forma de avaliação criada.
school_year_id
integer
ID do ano letivo ao qual pertence a forma de avaliação.
name
string
Nome da forma de avaliação.
{ "event": "form_of_evaluation.created", "timestamp": "2026-04-30T10:55:00-03:00", "data": { "school_cnpj": "26019466000122", "id": 12, "school_year_id": 3, "name": "Bimestral" } }
form_of_evaluation.updated
Forma de avaliação atualizada
Disparado após a atualização bem-sucedida dos dados de uma forma de avaliação.
URL que dispara o webhook
PUT /v1/partners/school/{cnpj}/form-of-evaluation/{id}
Campos do objeto data
school_cnpj
string
CNPJ da escola.
id
integer
ID único da forma de avaliação atualizada.
school_year_id
integer
ID do ano letivo ao qual pertence a forma de avaliação.
name
string
Nome atualizado da forma de avaliação.
{ "event": "form_of_evaluation.updated", "timestamp": "2026-04-30T11:00:00-03:00", "data": { "school_cnpj": "26019466000122", "id": 12, "school_year_id": 3, "name": "Trimestral" } }
form_of_evaluation.deleted
Forma de avaliação removida
Disparado após a remoção bem-sucedida de uma forma de avaliação.
URL que dispara o webhook
DELETE /v1/partners/school/{cnpj}/form-of-evaluation/{id}
Campos do objeto data
school_cnpj
string
CNPJ da escola.
id
integer
ID da forma de avaliação removida.
name
string
Nome da forma de avaliação removida.
{ "event": "form_of_evaluation.deleted", "timestamp": "2026-04-30T11:05:00-03:00", "data": { "school_cnpj": "26019466000122", "id": 12, "name": "Bimestral" } }
entrance.created
Portaria/entrada criada
Disparado após a criação bem-sucedida de uma portaria/entrada da escola.
URL que dispara o webhook
POST /v1/partners/school/{cnpj}/entrance
Campos do objeto data
school_cnpj
string
CNPJ da escola.
id
integer
ID único da portaria/entrada criada.
name
string
Nome da portaria/entrada.
{ "event": "entrance.created", "timestamp": "2026-04-30T11:10:00-03:00", "data": { "school_cnpj": "26019466000122", "id": 5, "name": "Portaria Principal" } }
entrance.updated
Portaria/entrada atualizada
Disparado após a atualização bem-sucedida dos dados de uma portaria/entrada.
URL que dispara o webhook
PUT /v1/partners/school/{cnpj}/entrance/{id}
Campos do objeto data
school_cnpj
string
CNPJ da escola.
id
integer
ID único da portaria/entrada atualizada.
name
string
Nome atualizado da portaria/entrada.
{ "event": "entrance.updated", "timestamp": "2026-04-30T11:15:00-03:00", "data": { "school_cnpj": "26019466000122", "id": 5, "name": "Portaria Secundária" } }
entrance.deleted
Portaria/entrada removida
Disparado após a remoção bem-sucedida de uma portaria/entrada da escola.
URL que dispara o webhook
DELETE /v1/partners/school/{cnpj}/entrance/{id}
Campos do objeto data
school_cnpj
string
CNPJ da escola.
id
integer
ID da portaria/entrada removida.
name
string
Nome da portaria/entrada removida.
{ "event": "entrance.deleted", "timestamp": "2026-04-30T11:20:00-03:00", "data": { "school_cnpj": "26019466000122", "id": 5, "name": "Portaria Principal" } }
assessment.saved
Nota salva
Disparado após a criação ou atualização bem-sucedida de uma nota de avaliação.
URL que dispara o webhook
POST /v1/partners/school/{cnpj}/classroom/{classroom_id}/score
Campos do objeto data
school_cnpj
string
CNPJ da escola.
classroom_id
string (UUID)
ID da turma à qual a nota pertence.
subject_id
string (UUID)
ID da disciplina avaliada.
enrollment_number
string
Número de matrícula do aluno.
period
integer
Período (bimestre/trimestre) da avaliação.
evaluation_assessment_id
string|null (UUID)
ID da avaliação específica, quando aplicável.
is_recovery
boolean
Indica se a nota é de recuperação paralela.
score
number|null
Valor da nota. Pode ser null quando ainda não lançada.
{ "event": "assessment.saved", "timestamp": "2026-04-30T11:25:00-03:00", "data": { "school_cnpj": "26019466000122", "classroom_id": "550e8400-e29b-41d4-a716-446655440000", "subject_id": "6ba7b810-9dad-11d1-80b4-00c04fd430c8", "enrollment_number": "2024001", "period": 1, "evaluation_assessment_id": "7c9e6679-7425-40de-944b-e07fc1f90ae7", "is_recovery": false, "score": 8.5 } }
assessment.deleted
Nota removida
Disparado após a remoção bem-sucedida de uma nota de avaliação.
URL que dispara o webhook
DELETE /v1/partners/school/{cnpj}/classroom/{classroom_id}/score/{score_id}
Campos do objeto data
school_cnpj
string
CNPJ da escola.
score_id
string (UUID)
ID da nota removida.
classroom_id
string (UUID)
ID da turma à qual a nota pertencia.
subject_id
string (UUID)
ID da disciplina à qual a nota pertencia.
{ "event": "assessment.deleted", "timestamp": "2026-04-30T11:30:00-03:00", "data": { "school_cnpj": "26019466000122", "score_id": "550e8400-e29b-41d4-a716-446655440001", "classroom_id": "550e8400-e29b-41d4-a716-446655440000", "subject_id": "6ba7b810-9dad-11d1-80b4-00c04fd430c8" } }
classroom_schedule.saved
Grade de períodos da turma salva
Disparado após o salvamento da grade de períodos de uma turma (dia da semana, ordem, tipo e horário de início de cada período) via API. A grade é a base do quadro de horários.
URL que dispara o webhook
PUT /v1/partners/school/{cnpj}/classroom/{classroom_id}/schedule
Campos do objeto data
school_cnpj
string
CNPJ da escola.
classroom_id
string (UUID)
ID da turma cuja grade foi salva.
classroom_name
string
Nome da turma.
{ "event": "classroom_schedule.saved", "timestamp": "2026-05-22T08:55:00-03:00", "data": { "school_cnpj": "26019466000122", "classroom_id": "550e8400-e29b-41d4-a716-446655440000", "classroom_name": "3º Ano A" } }
classroom_timetable.saved
Quadro de horários salvo
Disparado após o salvamento bem-sucedido do quadro de horários de uma turma via API.
URL que dispara o webhook
PUT /v1/partners/school/{cnpj}/classroom/{classroom_id}/timetable
Campos do objeto data
school_cnpj
string
CNPJ da escola.
classroom_id
string (UUID)
ID da turma cujo quadro foi salvo.
classroom_name
string
Nome da turma.
entries_count
integer
Número de entradas salvas no quadro de horários.
{ "event": "classroom_timetable.saved", "timestamp": "2026-05-22T09:00:00-03:00", "data": { "school_cnpj": "26019466000122", "classroom_id": "550e8400-e29b-41d4-a716-446655440000", "classroom_name": "3º Ano A", "entries_count": 25 } }
classroom_timetable.cleared
Quadro de horários limpo
Disparado após a remoção bem-sucedida de todas as entradas do quadro de horários de uma turma via API.
URL que dispara o webhook
DELETE /v1/partners/school/{cnpj}/classroom/{classroom_id}/timetable
Campos do objeto data
school_cnpj
string
CNPJ da escola.
classroom_id
string (UUID)
ID da turma cujo quadro foi limpo.
classroom_name
string
Nome da turma.
{ "event": "classroom_timetable.cleared", "timestamp": "2026-05-22T09:10:00-03:00", "data": { "school_cnpj": "26019466000122", "classroom_id": "550e8400-e29b-41d4-a716-446655440000", "classroom_name": "3º Ano A" } }
lesson_plan.saved
Plano pedagógico salvo
Disparado após a criação ou atualização bem-sucedida de um plano pedagógico associado a uma aula via API.
URL que dispara o webhook
POST /v1/partners/school/{cnpj}/lesson/{lesson_id}/lesson-plan
Campos do objeto data
school_cnpj
string
CNPJ da escola.
classroom_lesson_id
string (UUID)
ID da aula à qual o plano pedagógico está vinculado.
lesson_plan_id
string (UUID)
ID do plano pedagógico criado ou atualizado.
{ "event": "lesson_plan.saved", "timestamp": "2026-05-22T10:00:00-03:00", "data": { "school_cnpj": "26019466000122", "classroom_lesson_id": "c3d4e5f6-a7b8-9012-cd34-ef56ab789012", "lesson_plan_id": "d4e5f6a7-b8c9-0123-de45-fa67bc890123" } }
diary_entry.updated
Entrada do diário de classe atualizada
Disparado após a atualização bem-sucedida de uma entrada no diário de classe via API. Entradas bloqueadas não disparam este evento.
URL que dispara o webhook
PUT /v1/partners/school/{cnpj}/classroom/{classroom_id}/diary/{entry_id}
Campos do objeto data
school_cnpj
string
CNPJ da escola.
classroom_id
string (UUID)
ID da turma à qual a entrada pertence.
entry_id
string (UUID)
ID da entrada do diário que foi atualizada.
{ "event": "diary_entry.updated", "timestamp": "2026-05-22T10:30:00-03:00", "data": { "school_cnpj": "26019466000122", "classroom_id": "b2c3d4e5-f6a7-8901-bc23-de45fa678901", "entry_id": "a1b2c3d4-e5f6-7890-ab12-cd34ef567890" } }
disciplinary_occurrence.created
Disparado quando uma nova ocorrência disciplinar é registrada para um aluno via API de parceiros.
Campos do data
idstring (UUID)Identificador único da ocorrência disciplinar.
school_cnpjstringCNPJ da escola onde a ocorrência foi registrada.
student_idstring (UUID)Identificador do aluno envolvido na ocorrência.
occurred_atstring (Y-m-d)Data em que a ocorrência aconteceu.
gravidadeinteger (1–5)Nível de gravidade: 1 = Leve, 2 = Moderada, 3 = Grave, 4 = Muito Grave, 5 = Crítica.
{ "event": "disciplinary_occurrence.created", "timestamp": "2026-05-24T09:00:00-03:00", "data": { "id": "a1b2c3d4-e5f6-7890-ab12-cd34ef567890", "school_cnpj": "26019466000122", "student_id": "b2c3d4e5-f6a7-8901-bc23-de45fa678901", "occurred_at": "2026-05-23", "gravidade": 2 } }
disciplinary_occurrence.updated
Disparado quando uma ocorrência disciplinar existente é atualizada via API de parceiros.
Campos do data
idstring (UUID)Identificador único da ocorrência disciplinar.
school_cnpjstringCNPJ da escola onde a ocorrência está registrada.
student_idstring (UUID)Identificador do aluno envolvido na ocorrência.
{ "event": "disciplinary_occurrence.updated", "timestamp": "2026-05-24T09:15:00-03:00", "data": { "id": "a1b2c3d4-e5f6-7890-ab12-cd34ef567890", "school_cnpj": "26019466000122", "student_id": "b2c3d4e5-f6a7-8901-bc23-de45fa678901" } }
disciplinary_occurrence.deleted
Disparado quando uma ocorrência disciplinar é removida via API de parceiros.
Campos do data
idstring (UUID)Identificador único da ocorrência disciplinar removida.
school_cnpjstringCNPJ da escola onde a ocorrência estava registrada.
{ "event": "disciplinary_occurrence.deleted", "timestamp": "2026-05-24T09:20:00-03:00", "data": { "id": "a1b2c3d4-e5f6-7890-ab12-cd34ef567890", "school_cnpj": "26019466000122" } }
class_council.created
Disparado quando um novo conselho de classe é criado via API de parceiros.
Campos do data
idstring (UUID)Identificador único do conselho de classe.
school_cnpjstringCNPJ da escola do conselho.
classroom_idstring (UUID)Identificador da turma referente ao conselho.
periodointeger (1–4)Período letivo do conselho (bimestre ou trimestre).
statusstringStatus do conselho. Ao ser criado, sempre rascunho.
{ "event": "class_council.created", "timestamp": "2026-05-24T10:00:00-03:00", "data": { "id": "c3d4e5f6-a7b8-9012-cd34-ef56ab789012", "school_cnpj": "26019466000122", "classroom_id": "d4e5f6a7-b8c9-0123-de45-fa67bc890123", "periodo": 2, "status": "rascunho" } }
class_council.updated
Disparado quando os dados de um conselho de classe são atualizados via API de parceiros.
Campos do data
idstring (UUID)Identificador único do conselho de classe.
school_cnpjstringCNPJ da escola do conselho.
classroom_idstring (UUID)Identificador da turma referente ao conselho.
{ "event": "class_council.updated", "timestamp": "2026-05-24T10:30:00-03:00", "data": { "id": "c3d4e5f6-a7b8-9012-cd34-ef56ab789012", "school_cnpj": "26019466000122", "classroom_id": "d4e5f6a7-b8c9-0123-de45-fa67bc890123" } }
class_council.deleted
Disparado quando um conselho de classe é removido via API de parceiros.
Campos do data
idstring (UUID)Identificador único do conselho de classe removido.
school_cnpjstringCNPJ da escola onde o conselho estava registrado.
{ "event": "class_council.deleted", "timestamp": "2026-05-24T10:45:00-03:00", "data": { "id": "c3d4e5f6-a7b8-9012-cd34-ef56ab789012", "school_cnpj": "26019466000122" } }
class_council.closed
Disparado quando um conselho de classe é encerrado (transição de rascunho para encerrado) via API de parceiros.
Campos do data
idstring (UUID)Identificador único do conselho de classe.
school_cnpjstringCNPJ da escola do conselho.
classroom_idstring (UUID)Identificador da turma referente ao conselho.
statusstringNovo status do conselho: encerrado.
encerrado_emstring (ISO 8601)Data e hora em que o conselho foi encerrado.
{ "event": "class_council.closed", "timestamp": "2026-05-24T11:00:00-03:00", "data": { "id": "c3d4e5f6-a7b8-9012-cd34-ef56ab789012", "school_cnpj": "26019466000122", "classroom_id": "d4e5f6a7-b8c9-0123-de45-fa67bc890123", "status": "encerrado", "encerrado_em": "2026-05-24T11:00:00-03:00" } }
class_council.homologated
Disparado quando um conselho de classe é homologado (transição de encerrado para homologado) via API de parceiros.
Campos do data
idstring (UUID)Identificador único do conselho de classe.
school_cnpjstringCNPJ da escola do conselho.
classroom_idstring (UUID)Identificador da turma referente ao conselho.
statusstringNovo status do conselho: homologado.
homologado_emstring (ISO 8601)Data e hora em que o conselho foi homologado.
{ "event": "class_council.homologated", "timestamp": "2026-05-24T11:30:00-03:00", "data": { "id": "c3d4e5f6-a7b8-9012-cd34-ef56ab789012", "school_cnpj": "26019466000122", "classroom_id": "d4e5f6a7-b8c9-0123-de45-fa67bc890123", "status": "homologado", "homologado_em": "2026-05-24T11:30:00-03:00" } }