Diário de Classe
O diário de classe registra, para cada aula de uma turma, o conteúdo ministrado,
a unidade temática e observações. Cada aula possui no máximo uma entrada no diário.
Entradas bloqueadas (is_locked = true) não podem ser editadas.
O modelo diário de classe
id
uuid
Identificador da entrada no diário.
classroom_id
uuid
UUID da turma.
classroom_lesson_id
uuid
UUID da aula vinculada.
teacher_id
uuid
UUID do professor responsável.
subject_id
uuid
UUID da disciplina.
conteudo_ministrado
text|null
Conteúdo ministrado na aula.
unidade_tematica
string|null
Unidade temática (max. 255 caracteres).
observations
text|null
Observações sobre a aula.
is_locked
boolean
Indica se a entrada está bloqueada para edição.
{ "id": "...", "classroom_id": "...", "classroom_lesson_id": "...", "teacher_id": "...", "subject_id": "...", "conteudo_ministrado": "Frações decimais...", "unidade_tematica": "Números e Operações", "observations": null, "is_locked": false }
/v1/partners/school/{cnpj}/classroom/{classroom_id}/diary
Listar Entradas do Diário
Lista todas as entradas do diário de classe de uma turma.
Parâmetros de rota
cnpj
string
obrigatório
CNPJ da escola (14 dígitos, sem formatação).
classroom_id
uuid
obrigatório
UUID da turma.
Códigos de resposta
200
Sucesso.
401
Autenticação inválida.
404
Escola, turma ou entrada não encontrada.
-H "X-Authorization: {api_token}" \
-H "X-Partner: {partner_token}" \
-H "X-Client: {client_slug}"
$client->get('.../v1/partners/school/{cnpj}/classroom/{classroom_id}/diary');
await fetch('.../v1/partners/school/{cnpj}/classroom/{classroom_id}/diary');
{ "data": [ { "id": "a1b2c3d4-e5f6-7890-ab12-cd34ef567890", "classroom_id": "b2c3d4e5-f6a7-8901-bc23-de45fa678901", "classroom_lesson_id": "c3d4e5f6-a7b8-9012-cd34-ef56ab789012", "teacher_id": "d4e5f6a7-b8c9-0123-de45-fa67bc890123", "subject_id": "e5f6a7b8-c9d0-1234-ef56-ab67cd890123", "conteudo_ministrado": "Frações decimais e equivalência.", "unidade_tematica": "Números e Operações", "observations": null, "is_locked": false } ], "links": { /* paginação */ }, "meta": { /* paginação */ } }
{ "message": "Autenticação inválida. Verifique os cabeçalhos X-Authorization, X-Partner e X-Client." }
{ "message": "Escola, turma ou entrada não encontrada." }
/v1/partners/school/{cnpj}/classroom/{classroom_id}/diary/{entry_id}
Obter Entrada do Diário
Retorna uma entrada específica do diário de classe.
Parâmetros de rota
cnpj
string
obrigatório
CNPJ da escola (14 dígitos, sem formatação).
classroom_id
uuid
obrigatório
UUID da turma.
entry_id
uuid
obrigatório
UUID da entrada no diário.
Códigos de resposta
200
Sucesso.
401
Autenticação inválida.
404
Escola, turma ou entrada não encontrada.
-H "X-Authorization: {api_token}" \
-H "X-Partner: {partner_token}" \
-H "X-Client: {client_slug}"
$client->get('.../v1/partners/school/{cnpj}/classroom/{classroom_id}/diary/{entry_id}');
await fetch('.../v1/partners/school/{cnpj}/classroom/{classroom_id}/diary/{entry_id}');
{ "data": { "id": "a1b2c3d4-e5f6-7890-ab12-cd34ef567890", "classroom_id": "b2c3d4e5-f6a7-8901-bc23-de45fa678901", "classroom_lesson_id": "c3d4e5f6-a7b8-9012-cd34-ef56ab789012", "teacher_id": "d4e5f6a7-b8c9-0123-de45-fa67bc890123", "subject_id": "e5f6a7b8-c9d0-1234-ef56-ab67cd890123", "conteudo_ministrado": "Frações decimais e equivalência.", "unidade_tematica": "Números e Operações", "observations": null, "is_locked": false } }
{ "message": "Autenticação inválida. Verifique os cabeçalhos X-Authorization, X-Partner e X-Client." }
{ "message": "Escola, turma ou entrada não encontrada." }
/v1/partners/school/{cnpj}/classroom/{classroom_id}/diary/{entry_id}
Atualizar Entrada do Diário
Atualiza uma entrada do diário de classe. Retorna HTTP 422 se a entrada estiver bloqueada (is_locked = true).
Parâmetros de rota
cnpj
string
obrigatório
CNPJ da escola (14 dígitos, sem formatação).
classroom_id
uuid
obrigatório
UUID da turma.
entry_id
uuid
obrigatório
UUID da entrada no diário.
Parâmetros do corpo
conteudo_ministrado
text
opcional
Conteúdo ministrado na aula.
unidade_tematica
string
opcional
Unidade temática (max. 255 caracteres).
observations
text
opcional
Observações sobre a aula.
Códigos de resposta
200
Sucesso.
422
Entrada bloqueada para edição.
400
Dados inválidos.
401
Autenticação inválida.
404
Escola, turma ou entrada não encontrada.
-X PUT \
-H "X-Authorization: {api_token}" \
-H "X-Partner: {partner_token}" \
-H "X-Client: {client_slug}" \
-H "Content-Type: application/json" \
-d '{ "conteudo_ministrado": "...", "unidade_tematica": "...", "observations": "..." }'
$client->put('.../v1/partners/school/{cnpj}/classroom/{classroom_id}/diary/{entry_id}', ['json' => [/* ... */]]);
await fetch('.../v1/partners/school/{cnpj}/classroom/{classroom_id}/diary/{entry_id}', {
method: 'PUT',
body: JSON.stringify({/* ... */})
});
{ "data": { "id": "a1b2c3d4-e5f6-7890-ab12-cd34ef567890", "classroom_id": "b2c3d4e5-f6a7-8901-bc23-de45fa678901", "classroom_lesson_id": "c3d4e5f6-a7b8-9012-cd34-ef56ab789012", "teacher_id": "d4e5f6a7-b8c9-0123-de45-fa67bc890123", "subject_id": "e5f6a7b8-c9d0-1234-ef56-ab67cd890123", "conteudo_ministrado": "Frações decimais e equivalência.", "unidade_tematica": "Números e Operações", "observations": null, "is_locked": false } }
{ "success": false, "message": "Esta entrada do diário está bloqueada para edição." }
{ "message": "Os dados fornecidos são inválidos.", "errors": { ... } }
{ "message": "Autenticação inválida. Verifique os cabeçalhos X-Authorization, X-Partner e X-Client." }
{ "message": "Escola, turma ou entrada não encontrada." }