Coordenadores

Coordenadores são usuários da escola com permissões de coordenação pedagógica. Cada coordenador possui uma conta de usuário (e-mail e senha) e um perfil com nome e data de nascimento.

O modelo coordenador

id uuid

Identificador do usuário.

email string

E-mail de acesso (único globalmente).

name string

Nome completo (do perfil).

birthdate date|null

Data de nascimento no formato YYYY-MM-DD.

role string

Sempre "coordinator".

school_cnpj string

CNPJ da escola.

Modelo coordenador
{
  "id": "...",
  "email": "coord@escola.com",
  "name": "Maria Silva",
  "birthdate": "1985-03-15",
  "role": "coordinator"
}
GET /v1/partners/school/{cnpj}/coordinators/all

Listar Coordenadores

Lista todos os coordenadores da escola.

Parâmetros de rota

cnpj string obrigatório

CNPJ da escola (14 dígitos, sem formatação).

Códigos de resposta

200

Sucesso.

401

Autenticação inválida.

404

Escola ou recurso não encontrado.

Requisição GET
GET /v1/partners/school/{cnpj}/coordinators/all
curl https://toakiescola.com.br/api/v1/partners/school/{cnpj}/coordinators/all \
  -H "X-Authorization: {api_token}" \
  -H "X-Partner: {partner_token}" \
  -H "X-Client: {client_slug}"
Resposta
{
  "data": [
    {
    "id": "a1b2c3d4-e5f6-7890-ab12-cd34ef567890",
      "email": "joao.silva@escola.com.br",
      "name": "João Silva",
      "birthdate": "1982-07-20",
      "role": "coordinator",
      "school_cnpj": "26019466000122"
    }
  ],
  "links": { /* paginação */ },
  "meta": { /* paginação */ }
}
GET /v1/partners/school/{cnpj}/coordinator/{id}

Obter Coordenador

Retorna um coordenador pelo UUID.

Parâmetros de rota

cnpj string obrigatório

CNPJ da escola (14 dígitos, sem formatação).

id uuid obrigatório

UUID do coordenador.

Códigos de resposta

200

Sucesso.

401

Autenticação inválida.

404

Escola ou recurso não encontrado.

Requisição GET
GET /v1/partners/school/{cnpj}/coordinator/{id}
curl https://toakiescola.com.br/api/v1/partners/school/{cnpj}/coordinator/{id} \
  -H "X-Authorization: {api_token}" \
  -H "X-Partner: {partner_token}" \
  -H "X-Client: {client_slug}"
Resposta
{
  "data": {
    "id": "a1b2c3d4-e5f6-7890-ab12-cd34ef567890",
    "email": "joao.silva@escola.com.br",
    "name": "João Silva",
    "birthdate": "1982-07-20",
    "role": "coordinator",
    "school_cnpj": "26019466000122"
  }
}
POST /v1/partners/school/{cnpj}/coordinator

Criar Coordenador

Cria um coordenador.

Parâmetros de rota

cnpj string obrigatório

CNPJ da escola (14 dígitos, sem formatação).

Parâmetros do corpo

name string obrigatório

Nome completo.

email string obrigatório

E-mail único na plataforma.

birthdate date opcional

Data de nascimento (YYYY-MM-DD).

Códigos de resposta

201

Recurso criado com sucesso.

400

Dados inválidos.

401

Autenticação inválida.

404

Escola ou recurso não encontrado.

Requisição POST
POST /v1/partners/school/{cnpj}/coordinator
curl https://toakiescola.com.br/api/v1/partners/school/{cnpj}/coordinator \
  -X POST \
  -H "X-Authorization: {api_token}" \
  -H "X-Partner: {partner_token}" \
  -H "X-Client: {client_slug}" \
  -H "Content-Type: application/json" \
  -d '{ "name"*: "...", "email"*: "...", "birthdate": "..." }'
Resposta
{
  "data": {
    "id": "a1b2c3d4-e5f6-7890-ab12-cd34ef567890",
    "email": "joao.silva@escola.com.br",
    "name": "João Silva",
    "birthdate": "1982-07-20",
    "role": "coordinator",
    "school_cnpj": "26019466000122"
  }
}
PUT /v1/partners/school/{cnpj}/coordinator/{id}

Editar Coordenador

Atualiza um coordenador.

Parâmetros de rota

cnpj string obrigatório

CNPJ da escola (14 dígitos, sem formatação).

id uuid obrigatório

UUID do coordenador.

Parâmetros do corpo

name string opcional

Nome completo.

email string opcional

Novo e-mail.

birthdate date opcional

Data de nascimento (YYYY-MM-DD).

Códigos de resposta

200

Sucesso.

400

Dados inválidos.

401

Autenticação inválida.

404

Escola ou recurso não encontrado.

Requisição PUT
PUT /v1/partners/school/{cnpj}/coordinator/{id}
curl https://toakiescola.com.br/api/v1/partners/school/{cnpj}/coordinator/{id} \
  -X PUT \
  -H "X-Authorization: {api_token}" \
  -H "X-Partner: {partner_token}" \
  -H "X-Client: {client_slug}" \
  -H "Content-Type: application/json" \
  -d '{ "name": "...", "email": "...", "birthdate": "..." }'
Resposta
{
  "data": {
    "id": "a1b2c3d4-e5f6-7890-ab12-cd34ef567890",
    "email": "joao.silva@escola.com.br",
    "name": "João Silva",
    "birthdate": "1982-07-20",
    "role": "coordinator",
    "school_cnpj": "26019466000122"
  }
}
DELETE /v1/partners/school/{cnpj}/coordinator/{id}

Excluir Coordenador

Remove um coordenador.

Parâmetros de rota

cnpj string obrigatório

CNPJ da escola (14 dígitos, sem formatação).

id uuid obrigatório

UUID do coordenador.

Códigos de resposta

200

Sucesso.

401

Autenticação inválida.

404

Escola ou recurso não encontrado.

Requisição DELETE
DELETE /v1/partners/school/{cnpj}/coordinator/{id}
curl https://toakiescola.com.br/api/v1/partners/school/{cnpj}/coordinator/{id} \
  -X DELETE \
  -H "X-Authorization: {api_token}" \
  -H "X-Partner: {partner_token}" \
  -H "X-Client: {client_slug}"
Resposta
{
  "message": "Recurso removido com sucesso."
}