ipr.test.attempt.answer

Scope: ipr

Кто может вызывать: Сам пользователь попытки (userId == актор) либо тот, кто им управляет (canManageEmployee). Подробнее: Модель доступа

Сохраняет ответ на вопрос в рамках уже начатой попытки. Вопрос должен входить в состав попытки (создан при ipr.test.attempt.start). На каждый вопрос попытки можно ответить только один раз; оценка (correct, point) в ответе метода не возвращается и становится видна после завершения попытки.

HTTP: POST

Побочные эффекты: Записывает ответ и автоматическую оценку по вопросу (в ответе метода оценка скрыта до завершения попытки).

Параметры метода

Параметр Тип Обяз. Описание
attemptId (алиас id) int да ID попытки
questionId int да* ID вопроса
resultId int нет ID строки результата попытки — альтернатива questionId, если он уже известен
answer (алиас response) mixed да Ответ: строка — для типа T (текст); ID варианта или массив ID вариантов — для S/M/R

* Нужен хотя бы один из questionId/resultId.

Возвращаемые данные

Поле Тип Описание
attemptId int ID попытки
questionId int ID вопроса
resultId int ID строки результата
correct bool|null Всегда null: результат проверки скрыт до завершения попытки, см. ipr.test.result.get
point int|null Всегда null: балл скрыт до завершения попытки
ok bool true

Обработка ошибок

Справочник кодов: error-codes.md.

Код Описание
UNAUTHORIZED Пользователь не авторизован
VALIDATION_ERROR Не передан attemptId/questionId/answer; попытка уже завершена; на вопрос уже дан ответ
NOT_FOUND Попытка не найдена; вопрос не входит в состав попытки
PERMISSION_DENIED Нет прав на эту попытку
INTERNAL_ERROR Не удалось сохранить ответ

Пример запроса (POST)

curl -X POST "https://{портал}/rest/{user_id}/{webhook_code}/ipr.test.attempt.answer.json"
          -H "Content-Type: application/json"
          -H "Accept: application/json"
          --data '{
          "attemptId": 9001,
          "questionId": 501,
          "answer": [1]
        }'
        

Пример ответа

{
          "result": {
            "result": {
              "attemptId": 9001,
              "questionId": 501,
              "resultId": 30001,
              "correct": null,
              "point": null,
              "ok": true
            },
            "total": null,
            "next": null,
            "error": null
          }
        }
        

См. также

Предыдущая
Следующая