> ## Documentation Index
> Fetch the complete documentation index at: https://docs.toolzz.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Matricule alunos em uma turma

> Indique uma turma e envie um ou mais objetos de alunos para registrá-los na turma.

## Parâmetros

<ParamField path="turma_id" type="string" required>
  Número identificador da turma na qual o aluno, ou os alunos, serão matriculados.
</ParamField>

<ParamField body="users" type="array" required>
  Lista de usuários a serem matriculados e registrados. Caso o usuário já exista, é possível vinculá-lo via ID, utilizando a chave "id" com o respectivo valor.
</ParamField>

<ParamField body="birth_date" type="string" format="date">
  Data de nascimento do usuário no formato YYYY-MM-DD.
</ParamField>

<ParamField body="cpf" type="string" format="digits">
  Número do CPF do usuário, contendo exatamente 11 dígitos numéricos.
</ParamField>

<ParamField body="registration_start_date" type="string" format="date">
  Data de início da matrícula do usuário, no formato YYYY-MM-DD.
</ParamField>

<ParamField body="registration_end_date" type="string" format="date">
  Data de término da matrícula do usuário, no formato YYYY-MM-DD. Deve ser igual ou posterior à data atual.
</ParamField>

<ParamField body="enrollment_renewal" type="boolean">
  Flag que indica se a matrícula será renovada.
</ParamField>

<ParamField body="id" type="int">
  Identificador ou código da turma para validação. Pode ser numérico ou alfanumérico.
</ParamField>

<Note>**Antes de utilizar este endpoint, certifique-se de possuir os seguintes parâmetros disponíveis:**</Note>

* **IDTurma:** Código da turma na qual você deseja matricular o(s) aluno(s). Deve ser passado na URL.

* **users:** Uma lista (array) de objetos contendo informações dos alunos a serem matriculados na turma ou apenas uma lista com os e-mails dos alunos já cadastrados na plataforma.

* **name:** `obrigatório para alunos não registrados`: Nome do aluno a ser matriculado.

* **email:** `obrigatório para alunos não registrados`: Endereço de e-mail do aluno a ser matriculado.

* **id:** `opcional, pode ser utilizado para usuários já registrados`: ID do aluno registrado na instituição.

## Descrição da Resposta

Abaixo está um exemplo da resposta retornada por este endpoint.

<ResponseField name="data" type="array">
  Lista de associações entre usuários e a turma.

  <Expandable title="items">
    <ResponseField name="user_id" type="number">
      Identificador único do usuário.
    </ResponseField>

    <ResponseField name="user_name" type="string">
      Nome do usuário.
    </ResponseField>

    <ResponseField name="school_id" type="number">
      Identificador único da escola associada.
    </ResponseField>

    <ResponseField name="class_id" type="string">
      Identificador único da turma.
    </ResponseField>

    <ResponseField name="class_name" type="string">
      Nome da turma.
    </ResponseField>

    <ResponseField name="birth_date" type="string" format="date">
      Data de nascimento do usuário no formato `YYYY-MM-DD`.
    </ResponseField>

    <ResponseField name="cpf" type="string">
      CPF do usuário, contendo exatamente 11 dígitos.
    </ResponseField>

    <ResponseField name="registration_start_date" type="string" format="date">
      Data de início da matrícula do usuário na turma.
    </ResponseField>

    <ResponseField name="registration_end_date" type="string" format="date">
      Data de término da matrícula do usuário na turma.
    </ResponseField>

    <ResponseField name="enrollment_renewal" type="boolean">
      Indica se a matrícula do usuário foi renovada (`true`) ou não (`false`).
    </ResponseField>

    <ResponseField name="id" type="string|integer">
      Identificador ou código da turma usado para validação. Pode ser numérico ou alfanumérico.
    </ResponseField>
  </Expandable>
</ResponseField>

## Segurança

Para acessar este endpoint, é necessário enviar um token de acesso válido através do cabeçalho de autorização (Authorization) da requisição. Além disso, a API é protegida por outras medidas de segurança para garantir a proteção dos dados dos usuários.
