> ## 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.

# Matrículas de aluno

> Recupere as matrículas existentes para um aluno específico

## Parâmetros

<ParamField query="by" type="string" required>
  Pode ser "email" ou "id".
</ParamField>

<ParamField query="value" type="string" required>
  Valor de acordo com a opção "by". Pode ser o e-mail ou o ID de um usuário.
</ParamField>

<ParamField body="institution_code" type="string" required>
  Subdomínio da sua instituição, conforme aparece na URL original.
</ParamField>

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

* **by `obrigatório`:** Uma flag que define o tipo de busca que você deseja realizar. Os valores válidos são `email` ou `cpf`.
* **value `obrigatório`:** O valor do e-mail ou CPF que você deseja pesquisar.
* **institution\_code `obrigatório`:** Subdomínio da sua instituição, conforme aparece na URL original.

## Descrição da Resposta

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

<ResponseField name="data" type="object">
  Detalhes do perfil do usuário.

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

    <ResponseField name="uuid" type="string">
      Identificador único universal (UUID) do usuário.
    </ResponseField>

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

    <ResponseField name="email" type="string">
      Endereço de e-mail do usuário.
    </ResponseField>

    <ResponseField name="cpf" type="string">
      CPF (Cadastro de Pessoa Física).
    </ResponseField>

    <ResponseField name="enrollment_start_date" type="string">
      Data de início da matrícula do aluno (formato YYYY-MM-DD). Ignorada se o curso não suportar esse parâmetro.
    </ResponseField>

    <ResponseField name="enrollment_end_date" type="string">
      Data final da matrícula do aluno (formato YYYY-MM-DD). Gravada como `matriculas.data_validade`.
    </ResponseField>

    <ResponseField name="created_at" type="string">
      Data e hora de criação do usuário.
    </ResponseField>

    <ResponseField name="updated_at" type="string">
      Data e hora da última atualização do perfil.
    </ResponseField>

    <ResponseField name="ultima_atividade" type="string">
      Data e hora da última atividade do usuário.
    </ResponseField>

    <ResponseField name="school" type="object">
      Informações da escola.

      <Expandable title="properties">
        <ResponseField name="id" type="number">
          Identificador único da escola.
        </ResponseField>

        <ResponseField name="titulo" type="string">
          Nome da escola.
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="address" type="object">
      Detalhes do endereço do usuário.

      <Expandable title="properties">
        <ResponseField name="id" type="number">
          Identificador único do endereço.
        </ResponseField>

        <ResponseField name="address_id" type="number">
          Referência para o endereço.
        </ResponseField>

        <ResponseField name="cep" type="string">
          Código postal (CEP).
        </ResponseField>

        <ResponseField name="uf" type="string">
          Sigla do estado.
        </ResponseField>

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

        <ResponseField name="bairro" type="string">
          Nome do bairro.
        </ResponseField>

        <ResponseField name="logradouro" type="string">
          Nome da rua.
        </ResponseField>

        <ResponseField name="numero" type="string">
          Número da residência ou apartamento.
        </ResponseField>

        <ResponseField name="complemento" type="string">
          Complemento do endereço (ex.: apartamento, andar).
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="custom_form" type="array">
      Lista de perguntas e respostas personalizadas.

      <Expandable title="items">
        <ResponseField name="enunciado" type="string">
          Enunciado da pergunta.
        </ResponseField>

        <ResponseField name="pergunta_id" type="number">
          Identificador único da pergunta.
        </ResponseField>

        <ResponseField name="resposta" type="string">
          Resposta do usuário à pergunta.
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="institution" type="array">
      Lista de instituições associadas ao usuário.

      <Expandable title="items">
        <ResponseField name="id" type="number">
          Identificador único da instituição.
        </ResponseField>

        <ResponseField name="subdomain" type="string">
          Subdomínio da instituição.
        </ResponseField>

        <ResponseField name="titulo" type="string">
          Nome da instituição.
        </ResponseField>
      </Expandable>
    </ResponseField>
  </Expandable>
</ResponseField>

<Warning>A data de início **enrollment\_start\_date** será ignorada para cursos que não utilizam essa configuração. Só é aplicável a componentes específicos da plataforma.</Warning>

## ⚠️ Validações

Se enrollment\_end\_date for anterior a 'enrollment\_start\_date', a requisição será rejeitada com erro:

```json theme={null}
{
  "error": "End date cannot be previous to Start date"
}
```

## Segurança

Para acessar este endpoint, é necessário enviar um token de acesso válido no cabeçalho de autorização (Authorization) da requisição. Além disso, a API conta com outras medidas de segurança para proteger os dados dos usuários.
