📈 Tipo de dados do payload:

typedata3.json
    Institution:
	ID: number
Course:
	ID: number
	Nome: string
Enrollment:
	ID: number
	Data de Expiração: null ou string (formato: "yyyy-MM-dd")
	ID do Curso: number
	Ativada: boolean (1 para ativada, 0 para desativada)
	Status: number (1 para ativa, 0 para inativa)
User:
	ID: number
	Nome: string
  CPF: string
  Apelido: null ou string
	Email: string
	UUID: null ou string

Detalhes do Evento

  • Nome: Nome do evento em formato de texto.
  • Slug: Identificador único do evento em formato de texto.
  • Enviar em: Data e hora do evento no formato “yyyy-MM-dd HH:mm:ss”..

Dados da Instituição:

  • ID: Identificador numérico da instituição..

Dados do Curso:

  • ID: Identificador numérico do curso.
  • Nome: Nome do curso em formato de texto.

Dados da Matrícula:

  • ID: Identificador numérico da matrícula.
  • Data de Expiração: Valor nulo (null) ou data de expiração da matrícula no formato “yyyy-MM-dd”.
  • ID do Curso: Identificador numérico do curso associado à matrícula.
  • Ativada: Valor booleano indicando se a matrícula está ativada (true) ou desativada (false).
  • Status: Número indicando o status da matrícula (1 para ativa, 0 para inativa).

Dados do Usuário:

  • ID: Identificador numérico do usuário.
  • Nome: Nome do usuário em formato de texto.
  • Email: Endereço de email do usuário em formato de texto.
  • CPF: Número de CPF do usuário em formato de texto.
  • Apelido: Valor nulo (null) ou apelido do usuário em formato de texto.
  • UUID: Valor nulo (null) ou identificador único universal do usuário em formato de texto.

📈 Dados do evento:

Nome: Atividades - Nova matrícula
Slug: activities.course.enrollment
Enviar em: Data do envio


Ação para disparar o evento:

  • Quando o usuário clicar no botão iniciar no card do catálogo (novo e velho)
  • Quando o usuário Clicar em iniciar/matricular-se no detalhes do curso (novo e velho)
  • Quando o usuário Clicar em um conteúdo no detalhes do curso (novo e velho)
  • Convidar um aluno na turma
  • Matrícula via api

Payload/Exemplo de resposta:

O sistema deve responder com um código HTTP 200 OK se a operação for bem-sucedida. Se houver algum erro, o sistema deve responder com um código HTTP 4xx ou 5xx e uma mensagem de erro.

payload2.json
{
  "event": {
    "name": "Atividades - Nova matrícula",
    "slug": "activities.course.enrollment",
    "send_at": "2023-07-03 12:53:41"
  },
  "data": {
    "institution": {
      "id": 12345
    },
    "course": {
      "id": 123456,
      "name": "Nome do curso"
    },
    "enrollment": {
      "id": 11,
      "date_expire": null,
      "course_id": 123456789,
      "actived": 1,
      "status": 1
    },
    "user": {
      "id": 987654321,
      "name": "Aluno",
      "email": "aluno@toolzz.com",
      "cpf": "123.456.789-99",
      "nickname": null,
      "uuid": null
    }
  }
} 

🔒 Segurança:

Certifique-se de que a URL de destino esteja correta antes de começar a enviar payloads. Verifique se os parâmetros enviados estão corretos e completos. Certifique-se de que os destinatários do webhook estejam corretos e sejam válidos. Registre e monitore todas as chamadas de webhook para fins de auditoria e rastreamento de problemas.


⚠️ Códigos de Erro:

O sistema deve responder com um código HTTP 200 OK se a operação for bem-sucedida. Se houver algum erro, o sistema deve responder com um código HTTP 4xx ou 5xx e uma mensagem de erro.


💬 Glossário:

  • Payload: dados que são enviados para o webhook.
  • Slug: um identificador único para o evento.
  • Autenticação: processo de verificação da identidade do remetente de uma solicitação.