Сохранить или изменить решение
/runs/{run_id}/feedbackВозьмите snapshot и finding_id из /findings. Для первого решения задайте version=0. Для изменения используйте текущую версию своего решения. request_key защищает от повторной записи. Новое решение требует новой метки. reason_code и employee_id доступны в подключениях с сотрудниками. Решение не изменяет замечание и не запускает проверку.
Передайте ключ организации в заголовке Authorization: Bearer <ключ>.
Пример запроса
Используйте NK_BASE и NK_KEY из быстрого старта. Переменные в пути, например RUN_ID, замените значениями из ваших ответов API.
curl --fail-with-body -X POST "$NK_BASE/runs/$RUN_ID/feedback" \
-H "Authorization: Bearer $NK_KEY" \
-H "Content-Type: application/json" \
--data-binary @request.jsonСохраните тело запроса в request.json. Его поля описаны ниже.
Параметры
| Параметр | Где / тип | Обязательный | Описание |
|---|---|---|---|
run_id | Путь строка | Да | Используйте идентификатор вашей организации. Идентификатор из ответа API. |
Тело запроса
application/json
snapshotстрока · обязательное- feedback_snapshot из актуального /findings.
finding_idстрока · обязательное- finding_id выбранного замечания.
decisionстрока · обязательное- accepted — одобрено. rejected — отклонено. withdrawn — отозвано. Значения: "accepted", "rejected", "withdrawn".
reasonстрока · необязательное- Комментарий, необязателен. До 2000 символов. По умолчанию: "".
versionцелое число · необязательное- Текущая версия своего решения. Для первого решения передайте 0. По умолчанию: 0.
request_keyстрока · обязательное- Уникальная метка отправки решения. Для повтора того же запроса используйте прежнюю метку. До 100 символов. От 8 символов.
reason_codeстрока / null · необязательное- Расширенная причина: только для rejected, в поддерживающих подключениях. Значения: "incorrect_facts", "already_resolved", "insufficient_data", null.
employee_idстрока / null · необязательное- Назначенный сотрудник. Поле доступно только в подключениях с сотрудниками.
Ответы и ошибки
200
Успешный ответ.
application/json
Поля ответа
feedback_idстрока · обязательное- Номер события решения.
run_idстрока · необязательное- Проверка.
tenant_idстрока · необязательное- Организация.
snapshotстрока · обязательное- Версия результата.
finding_idстрока · обязательное- Замечание.
actorстрока · необязательное- Автор интеграции, определяется ключом доступа.
decisionстрока · обязательное- accepted — одобрено. rejected — отклонено. withdrawn — отозвано. Значения: "accepted", "rejected", "withdrawn".
reasonстрока · необязательное- Комментарий.
versionцелое число · обязательное- Версия решения. Первое сохранённое решение имеет версию 1.
request_keyстрока · необязательное- Метка отправки решения.
created_atстрока · необязательное- Время решения.
reason_codeстрока / null · необязательное- Код причины отклонения в подключениях с расширенной обратной связью.
employee_idстрока / null · необязательное- Ответственный сотрудник, если назначен.
401
Ключ не передан, неверен или отозван.
application/json
Поля ответа
detailобъект / массив: объект / строка · обязательное- Обычно объект с error. При ошибке проверки параметров возможен список нарушений.
Вложенные поля
errorстрока · обязательное- Машинный код ошибки. Используйте его в обработчике.
messageстрока · необязательное- Пояснение для человека. Текст может меняться.
fileстрока · необязательное- Проблемный файл, если ошибка относится к нему.
Массив элементов:
locмассив: строка / целое число · необязательное- Путь до неверного поля.
msgстрока · необязательное- Причина нарушения.
typeстрока · необязательное- Код нарушения.
inputобъект · необязательное- Переданное значение.
Текст ошибки, если сервер не вернул объект.
403
Доступ закрыт или действие не разрешено.
application/json
Поля ответа
detailобъект / массив: объект / строка · обязательное- Обычно объект с error. При ошибке проверки параметров возможен список нарушений.
Вложенные поля
errorстрока · обязательное- Машинный код ошибки. Используйте его в обработчике.
messageстрока · необязательное- Пояснение для человека. Текст может меняться.
fileстрока · необязательное- Проблемный файл, если ошибка относится к нему.
Массив элементов:
locмассив: строка / целое число · необязательное- Путь до неверного поля.
msgстрока · необязательное- Причина нарушения.
typeстрока · необязательное- Код нарушения.
inputобъект · необязательное- Переданное значение.
Текст ошибки, если сервер не вернул объект.
404
Объект не найден, результат ещё не опубликован либо дополнительный метод недоступен в подключении.
application/json
Поля ответа
detailобъект / массив: объект / строка · обязательное- Обычно объект с error. При ошибке проверки параметров возможен список нарушений.
Вложенные поля
errorстрока · обязательное- Машинный код ошибки. Используйте его в обработчике.
messageстрока · необязательное- Пояснение для человека. Текст может меняться.
fileстрока · необязательное- Проблемный файл, если ошибка относится к нему.
Массив элементов:
locмассив: строка / целое число · необязательное- Путь до неверного поля.
msgстрока · необязательное- Причина нарушения.
typeстрока · необязательное- Код нарушения.
inputобъект · необязательное- Переданное значение.
Текст ошибки, если сервер не вернул объект.
409
Конфликт версии или метки отправки. Возможная причина для отчёта: нет привязки к запрошенному разделу.
application/json
Поля ответа
detailобъект / массив: объект / строка · обязательное- Обычно объект с error. При ошибке проверки параметров возможен список нарушений.
Вложенные поля
errorстрока · обязательное- Машинный код ошибки. Используйте его в обработчике.
messageстрока · необязательное- Пояснение для человека. Текст может меняться.
fileстрока · необязательное- Проблемный файл, если ошибка относится к нему.
Массив элементов:
locмассив: строка / целое число · необязательное- Путь до неверного поля.
msgстрока · необязательное- Причина нарушения.
typeстрока · необязательное- Код нарушения.
inputобъект · необязательное- Переданное значение.
Текст ошибки, если сервер не вернул объект.
422
Ошибка валидации: detail содержит объект с кодом либо список нарушений.
application/json
Поля ответа
detailобъект / массив: объект / строка · обязательное- Обычно объект с error. При ошибке проверки параметров возможен список нарушений.
Вложенные поля
errorстрока · обязательное- Машинный код ошибки. Используйте его в обработчике.
messageстрока · необязательное- Пояснение для человека. Текст может меняться.
fileстрока · необязательное- Проблемный файл, если ошибка относится к нему.
Массив элементов:
locмассив: строка / целое число · необязательное- Путь до неверного поля.
msgстрока · необязательное- Причина нарушения.
typeстрока · необязательное- Код нарушения.
inputобъект · необязательное- Переданное значение.
Текст ошибки, если сервер не вернул объект.
Другой ответ
Ошибка входного сервера или сети может иметь текстовое/HTML-тело. Проверяйте HTTP-статус и Content-Type.