Cursos do banco
Vínculo entre um banco de questões e um curso, com os critérios de aprovação das provas desse curso. Corresponde à aba Cursos do banco, da tela Banco de questões. Ao criar as provas de uma turma, a API usa o banco vinculado ao curso da turma (veja Avaliações).
Cada curso pode ser vinculado a apenas um banco de questões.
Endpoints
| Método | Caminho | Descrição |
|---|---|---|
| GET | /operational/question-banks/{question_bank_uuid}/courses | Lista os vínculos do banco |
| POST | /operational/question-banks/{question_bank_uuid}/courses | Vincula um curso ao banco |
| GET | /operational/question-banks/{question_bank_uuid}/courses/courses | Lista os cursos ativos para escolher no vínculo |
| GET | /operational/question-banks/{question_bank_uuid}/courses/{id} | Consulta um vínculo |
| PUT | /operational/question-banks/{question_bank_uuid}/courses/{id} | Altera um vínculo |
| DELETE | /operational/question-banks/{question_bank_uuid}/courses/{id} | Desfaz o vínculo do curso com o banco |
GET /operational/question-banks/{question_bank_uuid}/courses
Lista os vínculos de cursos do banco.
Parâmetros de URL
| Parâmetro | Descrição |
|---|---|
| question_bank_uuid | uuid do banco de questões |
Parâmetros de URL (query)
| Parâmetro | Descrição |
|---|---|
| search | Busca pelo título do banco, pelo nome ou pela sigla do curso |
| course_id | id numérico do curso |
| course_uuid | uuid do curso |
| per_page | Quantidade de registros por página |
| page | Número da página, quando per_page é informado |
| column e order | Ordenação pela coluna informada, na direção asc ou desc |
Resposta: 200 OK, uma lista (ou lista paginada, com per_page). Campos: id, question_bank_id, course_id, passing_score, passing_percentage, randomize_questions, number_of_questions, question_bank_uuid, question_bank_title, course_uuid, course_name, course_short_name, course_code, course_workload, course_validity, user_create_name, created_at, user_update_name e updated_at.
POST /operational/question-banks/{question_bank_uuid}/courses
Vincula um curso ao banco de questões.
Parâmetros de URL
| Parâmetro | Descrição |
|---|---|
| question_bank_uuid | uuid do banco de questões |
Corpo
| Campo | Obrigatório | Tipo | Descrição |
|---|---|---|---|
| course_id | Sim | número inteiro | id do curso. O curso precisa existir e não pode estar vinculado a outro banco |
| passing_score | Não | número, zero ou maior | Nota de aprovação das provas do curso |
| passing_percentage | Não | número, de 0 a 100 | Porcentagem de acerto para aprovação |
| randomize_questions | Não | booleano | Sorteia as questões da prova a partir do banco |
| number_of_questions | Não | número inteiro, maior ou igual a 1 | Quantidade de questões de cada prova |
Resposta: 201 Created, com o vínculo criado. Dados inválidos: 422. Se o vínculo não puder ser gravado, a resposta é 400, com message.
curl -X POST "https://api.pedagogo.app/operational/question-banks/<uuid-do-banco>/courses" \
-H "Authorization: Bearer <token-de-sessao>" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"course_id": 10, "passing_percentage": 70, "randomize_questions": true, "number_of_questions": 20}'
GET /operational/question-banks/{question_bank_uuid}/courses/courses
Lista os cursos do cliente que estão ativos, para escolher o curso do vínculo. Usa a mesma listagem de cursos do módulo Comercial, limitada aos cursos ativos. Aceita os parâmetros de busca e de paginação dessa listagem (search, per_page, page, column e order).
Resposta: 200 OK, uma lista de cursos. Cada curso traz o id (usado em course_id) e o uuid.
GET /operational/question-banks/{question_bank_uuid}/courses/{id}
Consulta um vínculo de curso.
Parâmetros de URL
| Parâmetro | Descrição |
|---|---|
| question_bank_uuid | uuid do banco de questões |
| id | id do vínculo |
Resposta: 200 OK, com o vínculo e as relações questionBank, course, userCreate e userUpdate. Vínculo não encontrado: 404, com message igual a Question bank course not found.
PUT /operational/question-banks/{question_bank_uuid}/courses/{id}
Altera o vínculo e os critérios de aprovação. Envie apenas os campos que devem mudar.
Parâmetros de URL
| Parâmetro | Descrição |
|---|---|
| question_bank_uuid | uuid do banco de questões |
| id | id do vínculo |
Corpo
| Campo | Obrigatório | Tipo | Descrição |
|---|---|---|---|
| course_id | Não | número inteiro | id do curso. Se enviado, precisa existir e não pode estar vinculado a outro banco |
| passing_score | Não | número, zero ou maior | Nota de aprovação das provas do curso |
| passing_percentage | Não | número, de 0 a 100 | Porcentagem de acerto para aprovação |
| randomize_questions | Não | booleano | Sorteia as questões da prova a partir do banco. Sem regra de validação nesta ação |
| number_of_questions | Não | número inteiro | Quantidade de questões de cada prova. Sem regra de validação nesta ação |
Resposta: 200 OK, com o vínculo alterado. Vínculo não encontrado: 404. Falha ao gravar: 400, com message.
DELETE /operational/question-banks/{question_bank_uuid}/courses/{id}
Desfaz o vínculo do curso com o banco, por exclusão lógica.
Parâmetros de URL
| Parâmetro | Descrição |
|---|---|
| question_bank_uuid | uuid do banco de questões |
| id | id do vínculo |
Resposta: 200 OK, com a mensagem Question bank course deleted successfully. Vínculo não encontrado: 404. Falha ao apagar: 400, com message.