Раздел API
Сканеры документов
Сканеры документов WIA и TWAIN: скан в PDF или JPEG по странице, файлы результата и их удаление. Нужен модуль «Сканер документов» в ключе (кроме эмулятора).
| POST | /api/v1/document-scanners/scan | Отсканировать |
| GET | /api/v1/scans/{id}/{file} | Файл результата сканирования |
| GET | /api/v1/document-scanners | Сканеры документов |
| DELETE | /api/v1/scans/{id} | Удалить результат сканирования |
Операция document-scan; result — id и ссылки на файлы (PDF одним файлом или JPEG по странице), скачивание — GET /api/v1/scans/{id}/{файл}. Без ключа модуля — 402 LICENSE_REQUIRED (кроме device: emulator). Удобно с Prefer: wait=120 — ответ придёт, когда сканер закончит
Параметры
| Имя | Где | Тип | Описание |
|---|---|---|---|
Idempotency-Keyобязательный | header | string | |
Prefer | header | string |
Тело запроса application/json
Поля · ScanSettings
devicestringsourcestringdpiinteger int32от 50до 1200colorstringformatstringpageSizestringwidthMmnumber doubleот 10до 1000heightMmnumber doubleот 10до 1000brightnessinteger int32от -1000до 1000contrastinteger int32от -1000до 1000qualityinteger int32от 10до 100maxPagesinteger int32от 1до 500
{
"device": "string",
"source": "string",
"dpi": 50,
"color": "string",
"format": "string",
"pageSize": "string",
"widthMm": 10,
"heightMm": 10,
"brightness": -1000,
"contrast": -1000,
"quality": 10,
"maxPages": 1
}Ответ 200 application/json
Поля · Operation
idstring uuidtypestringidempotencyKeystringresourcesмассив stringstatusstringзначения:QUEUEDRUNNINGSUCCEEDEDFAILEDUNKNOWNstagestringcreatedAtstring date-timestartedAtstring date-timefinishedAtstring date-timeresultлюбое значениеerrorOperationError3 поля · OperationError
codestringmessagestringdetailsлюбое значение
warningsмассив string
Ошибки — problem+json с полем code, см. коды ошибок.
Пример запроса
curl -X POST 'http://localhost:7790/api/v1/document-scanners/scan' \
-H 'Idempotency-Key: $(uuidgen)' \
-H 'Prefer: wait=30' \
-H 'Content-Type: application/json' \
--data '{"device":"string","source":"string","dpi":50,"color":"string","format":"string","pageSize":"string","widthMm":10,"heightMm":10,"brightness":-1000,"contrast":-1000,"quality":10,"maxPages":1}'curl -X POST 'https://cloud.hw-connector.ru/agent/api/v1/document-scanners/scan' \
-H 'X-Api-Key: hwk_…' \
-H 'X-Device-Id: 42' \
-H 'Idempotency-Key: $(uuidgen)' \
-H 'Prefer: wait=30' \
-H 'Content-Type: application/json' \
--data '{"device":"string","source":"string","dpi":50,"color":"string","format":"string","pageSize":"string","widthMm":10,"heightMm":10,"brightness":-1000,"contrast":-1000,"quality":10,"maxPages":1}'Файл результата сканирования#
/api/v1/scans/{id}/{file}Имя файла — из result.files операции: scan.pdf, page-1.jpg…
Параметры
| Имя | Где | Тип | Описание |
|---|---|---|---|
idобязательный | path | string uuid | |
fileобязательный | path | string |
Ответ 200
Файл.
Ошибки — problem+json с полем code, см. коды ошибок.
Пример запроса
curl 'http://localhost:7790/api/v1/scans/3f6c1d9e-1b2a-4c55-9e0d-6a1f0c2b7d11/scan.pdf'curl 'https://cloud.hw-connector.ru/agent/api/v1/scans/3f6c1d9e-1b2a-4c55-9e0d-6a1f0c2b7d11/scan.pdf' \
-H 'X-Api-Key: hwk_…' \
-H 'X-Device-Id: 42'Сканеры документов#
/api/v1/document-scannersWIA — все сканеры и МФУ с драйвером Windows, TWAIN — если установлена NAPS2, и эмулятор. Агент подключается к каждому сканеру, ответ — до нескольких секунд
Ответ 200 application/json
Поля · ScannerList
licensedbooleanscannersмассив ScannerInfo5 полей · ScannerInfo
idstringdriverstringnamestringmanufacturerstringsourcesмассив string
Ошибки — problem+json с полем code, см. коды ошибок.
Пример запроса
curl 'http://localhost:7790/api/v1/document-scanners'curl 'https://cloud.hw-connector.ru/agent/api/v1/document-scanners' \
-H 'X-Api-Key: hwk_…' \
-H 'X-Device-Id: 42'Удалить результат сканирования#
/api/v1/scans/{id}Сразу, не дожидаясь срока хранения (hw.document-scanner.keep-hours)
Параметры
| Имя | Где | Тип | Описание |
|---|---|---|---|
idобязательный | path | string uuid |
Ответ 200
Без тела.
Ошибки — problem+json с полем code, см. коды ошибок.
Пример запроса
curl -X DELETE 'http://localhost:7790/api/v1/scans/3f6c1d9e-1b2a-4c55-9e0d-6a1f0c2b7d11'curl -X DELETE 'https://cloud.hw-connector.ru/agent/api/v1/scans/3f6c1d9e-1b2a-4c55-9e0d-6a1f0c2b7d11' \
-H 'X-Api-Key: hwk_…' \
-H 'X-Device-Id: 42'