API section
Self-service kiosk
The Self-service kiosk module: cash acceptance with CCNET bill acceptors and ccTalk coin acceptors up to an amount (escrow, change, customer stop; events cash.accepted and cash.notice), a bill acceptor emulator, browser kiosk mode. Needs the kiosk module in the key (except the emulator).
| GET | /api/v1/kiosk | Kiosk mode |
| PUT | /api/v1/kiosk | Configure kiosk mode |
| POST | /api/v1/kiosk/stop | Close the kiosk browser |
| POST | /api/v1/kiosk/start | Start the kiosk browser |
| POST | /api/v1/cash-acceptors/{number}/insert | Insert a bill into the emulator |
| GET | /api/v1/cash-acceptance | Running acceptance session |
| POST | /api/v1/cash-acceptance | Accept cash |
| POST | /api/v1/cash-acceptance/stop | Stop accepting |
| GET | /api/v1/cash-acceptors | Bill and coin acceptors |
Kiosk mode#
/api/v1/kioskSettings and whether the kiosk browser is running
Response 200 application/json
Fields · Status
enabledbooleanunlockedboolean
Errors — problem+json with a code field, see error codes.
Request example
curl 'http://localhost:7790/api/v1/kiosk'curl 'https://cloud.hw-connector.ru/agent/api/v1/kiosk' \
-H 'X-Api-Key: hwk_…' \
-H 'X-Device-Id: 42'Configure kiosk mode#
/api/v1/kiosk{"enabled":true,"url":"https://kiosk.example.ru","browser":"auto","silentPrint":true,"restartSec":3}. Включённый режим сразу запускает браузер во весь экран и поднимает его с агентом; выключенный — закрывает
Request body application/json required
Fields · Settings
enabledboolean
{
"enabled": false
}Response 200 application/json
Fields · Status
enabledbooleanunlockedboolean
Errors — problem+json with a code field, see error codes.
Request example
curl -X PUT 'http://localhost:7790/api/v1/kiosk' \
-H 'Content-Type: application/json' \
--data '{"enabled":false}'curl -X PUT 'https://cloud.hw-connector.ru/agent/api/v1/kiosk' \
-H 'X-Api-Key: hwk_…' \
-H 'X-Device-Id: 42' \
-H 'Content-Type: application/json' \
--data '{"enabled":false}'Close the kiosk browser#
/api/v1/kiosk/stopFor maintenance: until the next start or agent restart
Response 200 application/json
Fields · Status
enabledbooleanunlockedboolean
Errors — problem+json with a code field, see error codes.
Request example
curl -X POST 'http://localhost:7790/api/v1/kiosk/stop'curl -X POST 'https://cloud.hw-connector.ru/agent/api/v1/kiosk/stop' \
-H 'X-Api-Key: hwk_…' \
-H 'X-Device-Id: 42'Start the kiosk browser#
/api/v1/kiosk/startResponse 200 application/json
Fields · Status
enabledbooleanunlockedboolean
Errors — problem+json with a code field, see error codes.
Request example
curl -X POST 'http://localhost:7790/api/v1/kiosk/start'curl -X POST 'https://cloud.hw-connector.ru/agent/api/v1/kiosk/start' \
-H 'X-Api-Key: hwk_…' \
-H 'X-Device-Id: 42'Insert a bill into the emulator#
/api/v1/cash-acceptors/{number}/insertBill acceptor emulator only: the bill is accepted in the running session
Parameters
| Name | In | Type | Description |
|---|---|---|---|
numberrequired | path | integer int32 |
Request body application/json required
Fields · Insert
valuenumber
{
"value": 1.5
}Response 200
No body.
Errors — problem+json with a code field, see error codes.
Request example
curl -X POST 'http://localhost:7790/api/v1/cash-acceptors/1/insert' \
-H 'Content-Type: application/json' \
--data '{"value":1.5}'curl -X POST 'https://cloud.hw-connector.ru/agent/api/v1/cash-acceptors/1/insert' \
-H 'X-Api-Key: hwk_…' \
-H 'X-Device-Id: 42' \
-H 'Content-Type: application/json' \
--data '{"value":1.5}'Running acceptance session#
/api/v1/cash-acceptanceHow much has been accepted; 404 if there is no session
Response 200 application/json
Fields · Result
validbooleanerrorsarray of Issue8 fields · Issue
codestringseveritystringvalues:ERRORWARNINGatstring date-timeregisterinteger int32terminalinteger int32fdinteger int64amountinteger int64messagestring
warningsarray of Issue8 fields · Issue
codestringseveritystringvalues:ERRORWARNINGatstring date-timeregisterinteger int32terminalinteger int32fdinteger int64amountinteger int64messagestring
Errors — problem+json with a code field, see error codes.
Request example
curl 'http://localhost:7790/api/v1/cash-acceptance'curl 'https://cloud.hw-connector.ru/agent/api/v1/cash-acceptance' \
-H 'X-Api-Key: hwk_…' \
-H 'X-Device-Id: 42'Операция cash-acceptance: включает приёмники и ждёт, пока внесут amount (пусто — пока не остановят). Каждая купюра — событие cash.accepted с набранной суммой, отбраковка и сбои — cash.notice. result: received — принято, change — сверх суммы (сдачу выдаёт программа), status — COMPLETED, STOPPED, TIMEOUT или ERROR. Принятые деньги всегда в result, даже если приёмник отказал посреди сеанса. Без ключа модуля — 402 LICENSE_REQUIRED (кроме эмулятора)
Parameters
| Name | In | Type | Description |
|---|---|---|---|
Idempotency-Keyrequired | header | string | |
Prefer | header | string |
Request body application/json
Fields · Request
originstringfirstAtstring date-timelastAtstring date-timerequestsinteger int32
{
"origin": "string",
"firstAt": "2026-11-01T19:00:00+03:00",
"lastAt": "2026-11-01T19:00:00+03:00",
"requests": 1
}Response 200 application/json
Fields · Operation
idstring uuidtypestringidempotencyKeystringresourcesarray of stringstatusstringvalues:QUEUEDRUNNINGSUCCEEDEDFAILEDUNKNOWNstagestringcreatedAtstring date-timestartedAtstring date-timefinishedAtstring date-timeresultany valueerrorOperationError3 fields · OperationError
codestringmessagestringdetailsany value
warningsarray of string
Errors — problem+json with a code field, see error codes.
Request example
curl -X POST 'http://localhost:7790/api/v1/cash-acceptance' \
-H 'Idempotency-Key: $(uuidgen)' \
-H 'Prefer: wait=30' \
-H 'Content-Type: application/json' \
--data '{"origin":"string","firstAt":"2026-11-01T19:00:00+03:00","lastAt":"2026-11-01T19:00:00+03:00","requests":1}'curl -X POST 'https://cloud.hw-connector.ru/agent/api/v1/cash-acceptance' \
-H 'X-Api-Key: hwk_…' \
-H 'X-Device-Id: 42' \
-H 'Idempotency-Key: $(uuidgen)' \
-H 'Prefer: wait=30' \
-H 'Content-Type: application/json' \
--data '{"origin":"string","firstAt":"2026-11-01T19:00:00+03:00","lastAt":"2026-11-01T19:00:00+03:00","requests":1}'Stop accepting#
/api/v1/cash-acceptance/stopThe customer pressed Done or Cancel: acceptors are disabled and the operation ends with status STOPPED and the accepted amount
Response 200 application/json
Fields · Stopped
stoppedboolean
Errors — problem+json with a code field, see error codes.
Request example
curl -X POST 'http://localhost:7790/api/v1/cash-acceptance/stop'curl -X POST 'https://cloud.hw-connector.ru/agent/api/v1/cash-acceptance/stop' \
-H 'X-Api-Key: hwk_…' \
-H 'X-Device-Id: 42'Bill and coin acceptors#
/api/v1/cash-acceptorsDenominations and state; session is the running acceptance session
Response 200 application/json
Fields · AcceptorList
licensedbooleanacceptorsarray of AcceptorInfo7 fields · AcceptorInfo
numberinteger int32namestringtypestringkindstringactivebooleandenominationsarray of numberinfomap → any value
sessionResult3 fields · Result
validbooleanerrorsarray of Issue8 fields · Issue
codestringseveritystringvalues:ERRORWARNINGatstring date-timeregisterinteger int32terminalinteger int32fdinteger int64amountinteger int64messagestring
warningsarray of Issue8 fields · Issue
codestringseveritystringvalues:ERRORWARNINGatstring date-timeregisterinteger int32terminalinteger int32fdinteger int64amountinteger int64messagestring
Errors — problem+json with a code field, see error codes.
Request example
curl 'http://localhost:7790/api/v1/cash-acceptors'curl 'https://cloud.hw-connector.ru/agent/api/v1/cash-acceptors' \
-H 'X-Api-Key: hwk_…' \
-H 'X-Device-Id: 42'