Aulas
Os endpoints de aulas permitem consultar os registros de aulas criados pelas escolas, incluindo título, descrição, links, professor responsável e data de publicação.
O modelo aula
O modelo aula representa um registro de aula criado por um professor em uma escola.
id
string (uuid)
Identificador único da aula.
title
string
Título da aula.
description
string
Descrição do conteúdo da aula.
links
array | null
Lista de links associados à aula (materiais, vídeos, etc.).
is_approved
boolean
Indica se a aula foi aprovada pela coordenação.
published_at
date | null
Data de publicação da aula no formato Y-m-d.
teacher_name
string | null
Nome do professor responsável pela aula.
school_cnpj
string
CNPJ da escola à qual a aula pertence.
created_at
datetime
Data e hora de criação no formato Y-m-d H:i:s.
{ "id": "a1b2c3d4-e5f6-7890-ab12-cd34ef567890", "title": "Introdução à Matemática", "description": "Revisão de operações básicas.", "links": ["https://exemplo.com/material.pdf"], "is_approved": true, "published_at": "2025-04-15", "teacher_name": "Maria Souza", "school_cnpj": "26019466000122", "created_at": "2025-04-10 14:00:00" }
/v1/partners/school/{cnpj}/lesson/all
Listar aulas por escola
Retorna a lista paginada de aulas vinculadas a uma escola. Os resultados vêm dentro do campo
data, com metadados de
paginação nos campos links
e meta.
Parâmetros de rota
cnpj
string
obrigatório
CNPJ da escola (14 dígitos).
Códigos de resposta
200
Sucesso.
401
Autenticação inválida.
-H "X-Authorization: {api_token}" \
-H "X-Partner: {partner_token}" \
-H "X-Client: {client_slug}"
use GuzzleHttp\Client; $client = new Client(); $response = $client->get('https://toakiescola.com.br/api/v1/partners/school/26019466000122/lesson/all', [ 'headers' => [ 'X-Authorization' => '{api_token}', 'X-Partner' => '{partner_token}', 'X-Client' => '{client_slug}', ], ]);
const response = await fetch('https://toakiescola.com.br/api/v1/partners/school/26019466000122/lesson/all', { headers: { 'X-Authorization': '{api_token}', 'X-Partner': '{partner_token}', 'X-Client': '{client_slug}', }, });
{ "data": [ { "id": "a1b2c3d4-e5f6-7890-ab12-cd34ef567890", "title": "Introdução à Matemática", "description": "Revisão de operações básicas.", "links": ["https://exemplo.com/material.pdf"], "is_approved": true, "published_at": "2025-04-15", "teacher_name": "Maria Souza", "school_cnpj": "26019466000122", "created_at": "2025-04-10 14:00:00" } ], "links": { ... }, "meta": { ... } }
{ "message": "Autenticação inválida." }
{ "message": "Recurso não encontrado." }
/v1/partners/school/{cnpj}/lesson/{id}
Obter uma aula
Retorna os dados de uma aula específica vinculada à escola informada.
Parâmetros de rota
cnpj
string
obrigatório
CNPJ da escola (14 dígitos).
id
string (uuid)
obrigatório
Identificador único da aula.
Códigos de resposta
200
Sucesso.
401
Autenticação inválida.
404
Recurso não encontrado.
-H "X-Authorization: {api_token}" \
-H "X-Partner: {partner_token}" \
-H "X-Client: {client_slug}"
use GuzzleHttp\Client; $client = new Client(); $response = $client->get('https://toakiescola.com.br/api/v1/partners/school/26019466000122/lesson/a1b2c3d4-e5f6-7890-ab12-cd34ef567890', [ 'headers' => [ 'X-Authorization' => '{api_token}', 'X-Partner' => '{partner_token}', 'X-Client' => '{client_slug}', ], ]);
const response = await fetch('https://toakiescola.com.br/api/v1/partners/school/26019466000122/lesson/a1b2c3d4-e5f6-7890-ab12-cd34ef567890', { headers: { 'X-Authorization': '{api_token}', 'X-Partner': '{partner_token}', 'X-Client': '{client_slug}', }, });
{ "data": { "id": "a1b2c3d4-e5f6-7890-ab12-cd34ef567890", "title": "Introdução à Matemática", "description": "Revisão de operações básicas.", "links": ["https://exemplo.com/material.pdf"], "is_approved": true, "published_at": "2025-04-15", "teacher_name": "Maria Souza", "school_cnpj": "26019466000122", "created_at": "2025-04-10 14:00:00" } }
{ "message": "Autenticação inválida." }
{ "message": "Recurso não encontrado." }
{ "success": false, "message": "Aula não encontrada." }
{ "message": "Autenticação inválida." }
{ "message": "Recurso não encontrado." }
/v1/partners/school/{cnpj}/lesson/{id}
Excluir uma aula
Exclui uma aula específica vinculada à escola informada. A operação é irreversível.
Parâmetros de rota
cnpj
string
obrigatório
CNPJ da escola (14 dígitos).
id
string (uuid)
obrigatório
Identificador único da aula.
Códigos de resposta
200
Sucesso.
401
Autenticação inválida.
404
Recurso não encontrado.
-X DELETE \
-H "X-Authorization: {api_token}" \
-H "X-Partner: {partner_token}" \
-H "X-Client: {client_slug}"
use GuzzleHttp\Client; $client = new Client(); $response = $client->delete('https://toakiescola.com.br/api/v1/partners/school/26019466000122/lesson/a1b2c3d4-e5f6-7890-ab12-cd34ef567890', [ 'headers' => [ 'X-Authorization' => '{api_token}', 'X-Partner' => '{partner_token}', 'X-Client' => '{client_slug}', ], ]);
const response = await fetch('https://toakiescola.com.br/api/v1/partners/school/26019466000122/lesson/a1b2c3d4-e5f6-7890-ab12-cd34ef567890', { method: 'DELETE', headers: { 'X-Authorization': '{api_token}', 'X-Partner': '{partner_token}', 'X-Client': '{client_slug}', }, });
{ "success": true }
{ "message": "Autenticação inválida." }
{ "message": "Recurso não encontrado." }
{ "success": false, "message": "Aula não encontrada." }
{ "message": "Autenticação inválida." }
{ "message": "Recurso não encontrado." }
/v1/partners/school/{cnpj}/lesson
Criar aula
Cria uma nova aula para uma escola. O professor informado deve pertencer à escola.
Parâmetros do corpo
teacher_id
string (uuid)
obrigatório
UUID do professor responsável pela aula. O professor deve pertencer à escola informada.
title
string
obrigatório
Título da aula (até 200 caracteres).
description
string
obrigatório
Descrição do conteúdo da aula.
links
array | null
opcional
Lista de URLs associadas à aula (materiais, vídeos, etc.).
is_approved
boolean | null
opcional
Indica se a aula foi aprovada pela coordenação.
published_at
date | null
opcional
Data de publicação no formato Y-m-d.
Códigos de resposta
200
Aula criada com sucesso.
400
Erros de validação.
404
Escola ou professor não encontrado.
-X POST \
-H "X-Authorization: {api_token}" \
-H "Content-Type: application/json" \
-d '{"teacher_id":"...","title":"Introdução à Matemática","description":"Revisão de operações básicas."}'
$client->post('.../lesson', [ 'json' => [ 'teacher_id' => '{teacher_uuid}', 'title' => 'Introdução à Matemática', 'description' => 'Revisão de operações básicas.', ], ]);
await fetch('.../lesson', { method: 'POST', body: JSON.stringify({ teacher_id: '{teacher_uuid}', title: 'Introdução à Matemática', description: 'Revisão de operações básicas.', }), });
{ "data": { "id": "a1b2c3d4-e5f6-7890-ab12-cd34ef567890", "title": "Introdução à Matemática", "description": "Revisão de operações básicas.", "links": null, "is_approved": null, "published_at": null, "teacher_name": "Maria Souza", "school_cnpj": "26019466000122", "created_at": "2025-04-10 14:00:00" } }
{ "success": false, "errors": [ /* mensagens de validação */ ] }
{ "message": "Escola ou professor não encontrado." }
/v1/partners/school/{cnpj}/lesson/{id}
Editar aula
Atualiza os dados de uma aula. Todos os campos são opcionais; envie apenas os que deseja alterar.
Parâmetros do corpo
title
string
opcional
Novo título da aula (até 200 caracteres).
description
string
opcional
Nova descrição do conteúdo da aula.
links
array | null
opcional
Nova lista de URLs associadas. Envie null para remover todos os links.
is_approved
boolean | null
opcional
Atualiza o status de aprovação da aula.
published_at
date | null
opcional
Nova data de publicação no formato Y-m-d. Envie null para remover.
Códigos de resposta
200
Sucesso.
400
Erros de validação.
404
Aula não encontrada.
-X PUT \
-H "X-Authorization: {api_token}" \
-H "Content-Type: application/json" \
-d '{"is_approved":true,"published_at":"2025-04-20"}'
$client->put('.../lesson/{id}', [ 'json' => [ 'is_approved' => true, 'published_at' => '2025-04-20', ], ]);
await fetch('.../lesson/{id}', { method: 'PUT', body: JSON.stringify({ is_approved: true, published_at: '2025-04-20' }), });
{ "data": { "id": "a1b2c3d4-e5f6-7890-ab12-cd34ef567890", "title": "Introdução à Matemática", "is_approved": true, "published_at": "2025-04-20", "school_cnpj": "26019466000122", "created_at": "2025-04-10 14:00:00" } }
{ "success": false, "errors": [ /* mensagens de validação */ ] }
{ "message": "Aula não encontrada." }