Webhooks

Os webhooks permitem que a plataforma To Aqui Escola 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 no seu cliente.

Configuração

Para receber eventos, configure o campo webhook_url no registro client_apis do seu cliente. Quando preenchida, todos os eventos suportados serão entregues a essa URL via HTTP POST.

A entrega é feita de forma assíncrona por uma fila de jobs. Em caso de falha, a plataforma tenta novamente até 3 vezes antes de registrar o erro no log.

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.

Envelope padrão
{
  "event": "<event_name>",
  "timestamp": "2026-04-30T08:30:00-03:00",
  "data": {
    // dados específicos do evento
  }
}

Eventos suportados

A plataforma dispara os seguintes eventos para a URL configurada:

Evento Descrição
attendance.check_in Disparado quando um aluno realiza check-in biométrico na escola.
attendance.check_out Disparado quando um aluno realiza check-out biométrico 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.unenrolled Disparado quando um aluno é desmatriculado de uma turma.
student.enrollment_number_updated Disparado quando o número de matrícula de um aluno é atualizado.
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.

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 biométrica de um aluno via.

URL que dispara o webhook

POST /v1/attendance/student/biometric/check/in

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.

Payload — attendance.check_in
{
  "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 biométrica de um aluno.

URL que dispara o webhook

POST /v1/attendance/student/biometric/check/out

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.

Payload — attendance.check_out
{
  "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.

URL que dispara o webhook

POST /v1/tssv/responsible/check/in

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.

Payload — tssv.responsible_check_in
{
  "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.

Payload — student.created
{
  "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.

Payload — student.updated
{
  "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.

Payload — student.deleted
{
  "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.

Payload — student.enrolled
{
  "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.unenrolled

Aluno desmatriculado

Disparado após a desmatrícula bem-sucedida de um aluno de uma turma.

URLs que disparam o webhook

DELETE /v1/partners/school/{cnpj}/student/{enrollment_number}/unenroll

Campos do objeto data

id string (uuid)

ID único do aluno.

school_cnpj string

CNPJ da escola do aluno desmatriculado.

name string

Nome completo do aluno desmatriculado.

Payload — student.unenrolled
{
  "event": "student.unenrolled",
  "timestamp": "2026-04-30T10:50:00-03:00",
  "data": {
    "id": "9faea287-2f03-4b26-b234-c9e65a4e3f01",
    "school_cnpj": "26019466000122",
    "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.

Payload — student.enrollment_number_updated
{
  "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.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.

Payload — student.photo_uploaded
{
  "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 após a atualização bem-sucedida do status da foto de um aluno (aprovado ou rejeitado).

URL que dispara o webhook

PATCH /v1/partners/school/{cnpj}/student/{enrollment_number}/photo/status

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.

Payload — student.photo_status_updated
{
  "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.

Payload — student.photo_deleted
{
  "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.

Payload — responsible.created
{
  "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.

Payload — responsible.updated
{
  "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.

Payload — responsible.deleted
{
  "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. 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.

Payload — responsible.photo_uploaded
{
  "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 após a atualização bem-sucedida do status da foto de um responsável (aprovado ou rejeitado).

URL que dispara o webhook

PATCH /v1/partners/school/{cnpj}/responsible/{cpf}/photo/status

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.

Payload — responsible.photo_status_updated
{
  "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.

Payload — responsible.photo_deleted
{
  "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.

Payload — classroom.created
{
  "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.

Payload — classroom.updated
{
  "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.

Payload — classroom.deleted
{
  "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.

Payload — preenrollment.applied
{
  "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.

Payload — preenrollment.allowed
{
  "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.

Payload — preenrollment.denied
{
  "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.

Payload — preenrollment.denial_reverted
{
  "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.

URL que dispara o webhook

POST /v1/partners/school/{cnpj}/responsible/{cpf}/student/{enrollment_number}/link

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.

Payload — responsible.student_linked
{
  "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.

URL que dispara o webhook

DELETE /v1/partners/school/{cnpj}/responsible/{cpf}/student/{enrollment_number}/link

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.

Payload — responsible.student_unlinked
{
  "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}/student/{enrollment_number}/additional/link

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.

Payload — responsible.additional_student_linked
{
  "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}/student/{enrollment_number}/additional/link

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.

Payload — responsible.additional_student_unlinked
{
  "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.

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.

Payload — student.responsible_linked
{
  "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.

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.

Payload — student.responsible_unlinked
{
  "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.

Payload — student.additional_responsible_linked
{
  "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.

Payload — student.additional_responsible_unlinked
{
  "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.

Payload — school_year.created
{
  "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.

Payload — school_year.updated
{
  "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.

Payload — school_year.deleted
{
  "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.

Payload — school_year.opened
{
  "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.

Payload — school_year.closed
{
  "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).

Payload — school_year.preenrollment_toggled
{
  "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.

Payload — subject.created
{
  "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.

Payload — subject.updated
{
  "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.

Payload — subject.deleted
{
  "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.

Payload — grade_subject.attached
{
  "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.

Payload — grade_subject.detached
{
  "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.

Payload — workload.created
{
  "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.

Payload — workload.updated
{
  "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.

Payload — workload.deleted
{
  "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.

Payload — curriculum_plan.created
{
  "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.

Payload — curriculum_plan.updated
{
  "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.

Payload — global_schedule.updated
{
  "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.

Payload — weekly_schedule.updated
{
  "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.

Payload — coordinator.created
{
  "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.

Payload — coordinator.updated
{
  "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.

Payload — coordinator.deleted
{
  "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).

Payload — secretary.created
{
  "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).

Payload — secretary.updated
{
  "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).

Payload — secretary.deleted
{
  "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.

Payload — teacher.created
{
  "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.

Payload — teacher.updated
{
  "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.

Payload — teacher.deleted
{
  "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.

Payload — agenda.created
{
  "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.

Payload — agenda.updated
{
  "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.

Payload — agenda.deleted
{
  "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.

Payload — lesson.created
{
  "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.

Payload — lesson.updated
{
  "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.

Payload — lesson.deleted
{
  "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.

Payload — form_of_evaluation.created
{
  "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.

Payload — form_of_evaluation.updated
{
  "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.

Payload — form_of_evaluation.deleted
{
  "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.

Payload — entrance.created
{
  "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.

Payload — entrance.updated
{
  "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.

Payload — entrance.deleted
{
  "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.

Payload — assessment.saved
{
  "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.

Payload — assessment.deleted
{
  "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"
  }
}
Eventos suportados