Если POST-запрос был успешно обработан, тело ответа будет содержать JSON-объект со следующими полями:
{ "object": "%SCAN_OBJECT%", "scanResult": "%SCAN_RESULT%", "detectionName": "%DETECTED_OBJECT%", "name": "%SCAN_OBJECT_NAME%", "containsOfficeMacro": "%IS_MACRO_CONTAINED%", "subObjectsScanResults": [ { "object": "%SCAN_FILE%", "scanResult": "%SCAN_RESULT%", "detectionName": "%DETECTED_OBJECT%", "containsOfficeMacro": "%IS_MACRO_CONTAINED%" }, ... { "object": "%SCAN_FILE%", "scanResult": "%SCAN_RESULT%", "detectionName": "%DETECTED_OBJECT%", "containsOfficeMacro": "%IS_MACRO_CONTAINED%" } ] } |
Здесь:
object
– абсолютный путь до просканированного файла (если запрос был послан к /api/v3.0/scanfile
) или строка "memory"
(если запрос был послан к /api/v3.0/scanmemory
).scanResult
– результат сканирования веб-адреса. Может иметь следующие значения:CLEAN
DETECT
DISINFECTED
DELETED
NON_SCANNED
SERVER_ERROR
Если запрос был послан к /api/v3.0/scanfile
или к /api/v3.0/scanmemory
, причина того, что объект не сканируется, может быть добавлена к результату NON_SCANNED
. Например:
{ "object": "\/home\/user\/Documents\/filestoscan\/test.zip", "scanResult": "NON_SCANNED (PASSWORD PROTECTED)", "containsOfficeMacro": "false" } |
Возможные значения:
NON_SCANNED (CANCELED)
Сканирование отменено.
NON_SCANNED (CORRUPTED)
Сканируемый объект поврежден.
NON_SCANNED (ACCESS DENIED)
Доступ к объекту запрещен.
NON_SCANNED (SKIPPED)
Сканирование пропущено.
NON_SCANNED (PASSWORD PROTECTED)
Проверяемый объект защищен паролем.
NON_SCANNED
Причина, по которой объект не сканируется, не определена.
detectionName
– имя обнаруженного вредоносного объекта в классификации "Лаборатории Касперского".name
– имя объекта, указанного в поле name
тела запроса (если запрос был послан к /api/v3.1/scanmemory
). Если сканируемый объект имеет вложенные подобъекты, элемент name
указывается только в родительском объекте.containsOfficeMacro
– переменная логического типа, которая имеет значение true
, если в просканированном объекте был обнаружен макрос, и false
в противоположном случае.subObjectsScanResults
– массив, состоящий из результатов сканирования подобъектов, вложенных в просканированный объект. Это поле и все вложенные в него поля будут добавлены в ответ, только если просканированный объект включает вложенные подобъекты.subObjectsScanResults/object
– путь до вложенного подобъекта. Обратите внимание, что путь к подобъекту отделен от пути к родительскому объекту двумя косыми чертами (//
), например:/home/user/archive.tar//folder/subobject
subObjectsScanResults/scanResult
– результат сканирования вложенного подобъекта.subObjectsScanResults/detectionName
– имя обнаруженного вредоносного объекта в классификации "Лаборатории Касперского".subObjectsScanResults/containsOfficeMacro
– переменная логического типа, которая имеет значение true
, если в просканированном подобъекте был обнаружен макрос, и false
в противоположном случае.Если POST-запрос был обработан с ошибкой, тело ответа будет содержать JSON-объект с единственным полем error
:
{ "error": "%СООБЩЕНИЕ ОБ ОШИБКЕ%" } |
Здесь поле error
содержит описание ошибки, которая произошла во время обработки запроса.
Дополнительные поля в протоколе KAV версии 3.1
Поле reason
появляется только в том случае, если вы используете протокол KAV версии 3.1. В этом поле указывается причина, по которой объект не проверяется. Это поле появляется, если запрос был послан к /api/v3.1/scanfile
или к /api/v3.1/scanmemory
и если значение поля scanResult
равно NON_SCANNED
.
Возможные значения:
Canceled
Сканирование отменено.
Corrupted
Сканируемый объект поврежден.
Access denied
Доступ к объекту запрещен.
Skipped
Сканирование пропущено.
Password protected
Проверяемый объект защищен паролем.
Max depth exceeded
Превышена максимальная глубина распаковки вложенных архивов при сканировании.