Questões do banco
Questões do banco de questões e as opções de resposta de cada questão. Corresponde à aba Questões do banco, da tela Banco de questões. Os valores de tipo, pontuação, feedback e tempo de feedback são informados pelos ids das listas de apoio.
Endpoints
| Método | Caminho | Descrição |
|---|---|---|
| POST | /operational/question-banks/{question_bank_uuid}/questions | Cadastra uma questão no banco |
| GET | /operational/question-banks/{question_bank_uuid}/questions/{id} | Consulta uma questão, com as opções |
| PUT | /operational/question-banks/{question_bank_uuid}/questions/{id} | Altera uma questão |
| DELETE | /operational/question-banks/{question_bank_uuid}/questions/{id} | Apaga uma questão |
| GET | /operational/question-banks/{question_bank_uuid}/questions/{question_id}/options | Lista as opções de uma questão |
| POST | /operational/question-banks/{question_bank_uuid}/questions/{question_id}/options | Cadastra uma opção na questão |
| GET | /operational/question-banks/{question_bank_uuid}/questions/{question_id}/options/{id} | Consulta uma opção |
| PUT | /operational/question-banks/{question_bank_uuid}/questions/{question_id}/options/{id} | Altera uma opção |
| DELETE | /operational/question-banks/{question_bank_uuid}/questions/{question_id}/options/{id} | Apaga uma opção |
POST /operational/question-banks/{question_bank_uuid}/questions
Cadastra uma questão no 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 |
|---|---|---|---|
| question_text | Sim | texto | Texto da questão |
| question_type_id | Sim | número inteiro | Tipo da questão (lista de tipos) |
| scoring_mode_id | Sim | número inteiro | Modo de pontuação (lista de modos de pontuação) |
| feedback_mode_id | Sim | número inteiro | Modo de feedback (lista de modos de feedback) |
| feedback_timing_id | Sim | número inteiro | Tempo de feedback (lista de tempos de feedback) |
| shuffle_options | Não | booleano | Embaralha a ordem das opções para o aluno |
| max_score | Não | número, de 0 a 999999,99 | Pontuação máxima da questão |
| feedback_text | Não | texto | Texto de feedback geral da questão |
| explanation_text | Não | texto | Texto explicativo da questão |
Resposta: 200 OK, com a questão criada. Dados inválidos: 422, com message e errors.
curl -X POST "https://api.pedagogo.app/operational/question-banks/<uuid-do-banco>/questions" \
-H "Authorization: Bearer <token-de-sessao>" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"question_text": "Questão exemplo", "question_type_id": 1, "scoring_mode_id": 1, "feedback_mode_id": 1, "feedback_timing_id": 1, "max_score": 10}'
GET /operational/question-banks/{question_bank_uuid}/questions/{id}
Consulta uma questão do banco.
Parâmetros de URL
| Parâmetro | Descrição |
|---|---|
| question_bank_uuid | uuid do banco de questões |
| id | id da questão |
Resposta: 200 OK, com os campos da questão e as relações questionBank, questionType, scoringMode, feedbackMode, feedbackTiming, options, userCreate e userUpdate.
PUT /operational/question-banks/{question_bank_uuid}/questions/{id}
Altera uma questã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 da questão |
Corpo
| Campo | Obrigatório | Tipo | Descrição |
|---|---|---|---|
| question_text | Não | texto | Texto da questão. Se enviado, não pode ficar vazio |
| question_type_id | Não | número inteiro | Tipo da questão. Se enviado, precisa ser um id válido |
| scoring_mode_id | Não | número inteiro | Modo de pontuação. Se enviado, precisa ser um id válido |
| feedback_mode_id | Não | número inteiro | Modo de feedback. Se enviado, precisa ser um id válido |
| feedback_timing_id | Não | número inteiro | Tempo de feedback. Se enviado, precisa ser um id válido |
| shuffle_options | Não | booleano | Embaralha a ordem das opções para o aluno |
| max_score | Não | número, de 0 a 999999,99 | Pontuação máxima da questão |
| feedback_text | Não | texto | Texto de feedback geral da questão |
| explanation_text | Não | texto | Texto explicativo da questão |
Resposta: 200 OK, com a questão alterada.
DELETE /operational/question-banks/{question_bank_uuid}/questions/{id}
Apaga uma questão do banco.
Parâmetros de URL
| Parâmetro | Descrição |
|---|---|
| question_bank_uuid | uuid do banco de questões |
| id | id da questão |
Resposta: 200 OK. O corpo traz apenas o resultado da exclusão, sem mensagem.
GET /operational/question-banks/{question_bank_uuid}/questions/{question_id}/options
Lista as opções de uma questão.
Parâmetros de URL
| Parâmetro | Descrição |
|---|---|
| question_bank_uuid | uuid do banco de questões |
| question_id | id da questão |
Parâmetros de URL (query)
| Parâmetro | Descrição |
|---|---|
| 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_id, option_key, option_text, order, is_correct, score_delta e created_at.
POST /operational/question-banks/{question_bank_uuid}/questions/{question_id}/options
Cadastra uma opção de resposta na questão.
Parâmetros de URL
| Parâmetro | Descrição |
|---|---|
| question_bank_uuid | uuid do banco de questões |
| question_id | id da questão |
Corpo
| Campo | Obrigatório | Tipo | Descrição |
|---|---|---|---|
| option_text | Sim | texto | Texto da opção |
| order | Sim | número inteiro, zero ou maior | Posição da opção |
| option_key | Não | texto, até 10 caracteres | Letra ou identificação da opção, por exemplo A, B, C, T ou F |
| is_correct | Não | booleano | Marca se a opção é a resposta correta |
| score_delta | Não | número, de -999999,99 a 999999,99 | Pontos da opção |
| feedback_text | Não | texto | Feedback da opção |
| explanation_text | Não | texto | Explicação da opção |
Resposta: 200 OK, com a opção criada.
GET /operational/question-banks/{question_bank_uuid}/questions/{question_id}/options/{id}
Consulta uma opção da questão.
Parâmetros de URL
| Parâmetro | Descrição |
|---|---|
| question_bank_uuid | uuid do banco de questões |
| question_id | id da questão |
| id | id da opção |
Resposta: 200 OK, com os campos da opção e as relações question, userCreate e userUpdate.
PUT /operational/question-banks/{question_bank_uuid}/questions/{question_id}/options/{id}
Altera uma opção da questã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 |
| question_id | id da questão |
| id | id da opção |
Corpo
| Campo | Obrigatório | Tipo | Descrição |
|---|---|---|---|
| option_text | Não | texto | Texto da opção. Se enviado, não pode ficar vazio |
| order | Não | número inteiro, zero ou maior | Posição da opção. Se enviado, não pode ficar vazio |
| option_key | Não | texto, até 10 caracteres | Letra ou identificação da opção |
| is_correct | Não | booleano | Marca se a opção é a resposta correta |
| score_delta | Não | número, de -999999,99 a 999999,99 | Pontos da opção |
| feedback_text | Não | texto | Feedback da opção |
| explanation_text | Não | texto | Explicação da opção |
Resposta: 200 OK, com a opção alterada.
DELETE /operational/question-banks/{question_bank_uuid}/questions/{question_id}/options/{id}
Apaga uma opção da questão.
Parâmetros de URL
| Parâmetro | Descrição |
|---|---|
| question_bank_uuid | uuid do banco de questões |
| question_id | id da questão |
| id | id da opção |
Resposta: 200 OK. O corpo traz apenas o resultado da exclusão, sem mensagem.