Документация HTTP GET API v1.6 для RFID-считывателей SAUK

1. Системные и Сервисные Запросы

GET /restart_rfid

Описание: Программно перезагружает RFID-модуль (сбрасывает его и инициализирует заново).

Параметры: Нет.

Ответ: 200 OK - в теле ответа строка "OK".

GET /logout

Описание: Завершает текущую сессию аутентификации. При следующем запросе к защищенному ресурсу браузер запросит логин и пароль.

Параметры: Нет.

Ответ: 401 Unauthorized.

GET /reboot

Описание: Перезагружает RFID-считыватель.

Параметры: Нет.

Ответ: 200 OK - в теле ответа строка "OK".

GET /beepdevice

Описание: Инициирует звуковой и световой сигнал (два коротких сигнала) на устройстве для его идентификации.

Параметры: Нет.

Ответ: 200 OK - в теле ответа строка "OK".

GET /version

Описание: Возвращает информацию о версиях прошивки, оборудования, чипа RFID и т.д.

Параметры: Нет.

Ответ: 200 - JSON объект с ключами: serial, chip_version, firmware, hardware, hardware_e, webapi, build, options, buffsize.

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

{ "serial": "AC:67:B2:34:56:78", "chip_version": "SAUK VS4.2.2", "firmware": "3.7", "hardware": "4.0", "hardware_e": "4.0", "webapi": "1.0", "build": "SAUK-M04", "options": "W2,R4,H1,NTP,MBT,SD", "buffsize": 100 }
GET /messagelog

Описание: Возвращает журнал системных событий и сообщений.

Параметры: Нет.

Ответ: 200 - JSON массив объектов, каждый из которых содержит метку времени (RTC), тип (type), источник (source) и само сообщение (message).

2. Управление Сетью (Wi-Fi/Ethernet)

GET /netinfo

Описание: Возвращает текущую конфигурацию сетевых интерфейсов (Wi-Fi STA, Wi-Fi AP, Ethernet) или позволяет ее изменить.

Параметры (для изменения):

Параметр Тип Описание Обязательный
sta_enable bool Включить/выключить подключение к внешней Wi-Fi сети Нет
ap_enable bool Включить/выключить точку доступа (AP). Примечание: В коде AP нельзя выключить. Нет
reduce_power bool Включить/выключить режим пониженной мощности Wi-Fi Нет
ap_ip string Установить IP-адрес для точки доступа Нет
ap_pass1 string Новый пароль для точки доступа Нет
ap_pass2 string Подтверждение нового пароля (должен совпадать с ap_pass1) Нет
eth_enable bool Включить/выключить интерфейс Ethernet Нет
eth_static bool Использовать статический IP для Ethernet Нет
eth_ipv4 string Статический IP-адрес для Ethernet Нет
eth_mask string Маска подсети для Ethernet Нет
eth_gate string Шлюз по умолчанию для Ethernet Нет

Ответ: 200 - JSON объект с полной текущей конфигурацией сети.

GET /wificonnect

Описание: Инициирует подключение к указанной Wi-Fi сети.

Параметры:

Параметр Тип Описание Обязательный
ssid string Имя сети (SSID) Да
pass string Пароль сети Да
safe bool Если true, текущая конфигурация будет сохранена в файловую систему Нет

Ответ: 200 OK - в теле ответа строка "OK".

GET /ntp

Описание: Возвращает или настраивает параметры NTP-клиента для синхронизации времени.

Параметры (для настройки):

Параметр Тип Описание Обязательный
enable bool Включить/выключить NTP-синхронизацию Нет
server string Адрес основного NTP-сервера Нет
server2 string Адрес резервного NTP-сервера Нет
zone int Часовой пояс (смещение от GMT в часах) Нет
period_hours int Период автоматической синхронизации в часах Нет

Ответ: 200 - JSON объект с текущими настройками NTP.

3. Управление Доступом и Аутентификацией

GET /webaccess

Описание: Изменяет логин и пароль для доступа к веб-интерфейсу. Требует текущей аутентификации.

Параметры:

Параметр Тип Описание Обязательный
login string Новый логин (макс. 9 символов) Да
password string Новый пароль (макс. 9 символов) Да

Ответ: 200 OK - в теле ответа строка "OK".

GET /tableaccess

Описание: Изменяет логин и пароль для оператора таблицы доступа. Требует текущей аутентификации.

Параметры:

Параметр Тип Описание Обязательный
tlogin string Новый логин оператора таблицы (макс. 9 символов) Да
tpassword string Новый пароль оператора таблицы (макс. 9 символов) Да

Ответ: 200 OK - в теле ответа строка "OK".

GET /wifiaccess

Описание: Изменяет пароль для встроенной точки доступа Wi-Fi. Требует текущей аутентификации.

Параметры:

Параметр Тип Описание Обязательный
password string Новый пароль для Wi-Fi AP (макс. 10 символов) Да

Ответ: 200 OK - в теле ответа строка "OK".

4. Управление RFID-Модулем и Инвентаризацией

GET /inventory_once

Описание: Запускает однократный цикл инвентаризации RFID-меток (если непрерывное сканирование отключено).

Параметры: Нет.

Ответ: 200 OK - в теле ответа строка "OK".

GET /rfidconfig

Описание: Возвращает текущую конфигурацию RFID-модуля или позволяет ее изменить.

Параметры (для изменения, примеры):

Параметр Тип Описание Обязательный
infiniteinventory bool Включить/выключить непрерывную инвентаризацию Нет
pwrant1, pwrant2, pwrant3, pwrant4 int Установить мощность для антенн 1-4 Нет
enant1, enant2, enant3, enant4 bool Включить/выключить антенны 1-4 для инвентаризации Нет
activ1, activ2, activ3, activ4 bool Включить/выключить физическую активность антенн 1-4 Нет
txtant1, txtant2, txtant3, txtant4 string Установить текстовые псевдонимы для антенн 1-4 Нет
entrig1, entrig2 bool Включить/выключить триггеры HOLD 1 и 2 Нет
no_trig1, no_trig2 bool Установить тип триггера HOLD 1 и 2 (NO/NC) Нет
triggered1, triggered2, triggered3, triggered4 int Настроить, какие антенны активируются триггерами HOLD (1, 2, 3) Нет
rf_session int Установить номер сессии RFID Нет
repeattime int Установить количество циклов сканирования за одну инвентаризацию Нет
min_hold_ms int Установить минимальное время активации от HOLD-триггера Нет
freq_start, freq_space, freq_quan int Настроить частотный план Нет
freq_error float Установить компенсацию частотной ошибки Нет
diagnostics - Запустить диагностику подключения антенн Нет

Ответ: 200 - JSON объект с полной текущей конфигурацией RFID-модуля.

GET /tagidentity

Описание: Возвращает или настраивает параметры идентификации и фильтрации RFID-меток.

Параметры (для настройки, примеры):

Параметр Тип Описание Обязательный
validtime_ms long Время "сна" метки перед повторной инвентаризацией Нет
hold_time_ms uint32 Время удержания метки в списке инвентаризации Нет
beep_on_tag bool Включить/выключить звуковой сигнал при обнаружении метки Нет
rssi_filter_enable bool Включить/выключить фильтр по уровню RSSI Нет
rssi_filter_value int Установить пороговое значение RSSI для фильтра Нет
epc_filter_enable1-4 bool Включить/выключить EPC-фильтры 1-4 Нет
epc_filter_value1-4 string Установить значения EPC-фильтров 1-4 Нет
epc_access_password string Установить пароль доступа к меткам Нет
extra_mem_read bool Включить/выключить чтение дополнительного банка памяти (TID/USER) Нет
extra_mem_bank uint8 Выбрать банк памяти для чтения (2=TID, 3=USER) Нет
data_start_words uint8 Установить начальное смещение для чтения данных (в словах) Нет
data_len_words uint8 Установить длину читаемых данных (в словах, макс. 6) Нет
accesstable bool Включить/выключить проверку меток по таблице доступа Нет
notify_enable bool Включить/выключить уведомления по Socket Нет
notify_ip string Установить IP-адрес для уведомлений по Socket Нет
notify_port uint32 Установить порт для уведомлений по Socket Нет
notify_time_lim_ms uint32 Установить таймаут соединения для уведомлений Нет
http_enable bool Разрешить отправку уведомлений в формате HTTP GET Нет
http_wait bool Ждать ответа от HTTP-сервера перед локальным управлением реле Нет
modbus_rtu bool Включить/выключить протокол MODBUS RTU (отключает другие UART-уведомления) Нет
notify_uart bool Включить/выключить уведомления по UART Нет
notify_uart_json uint8 Установить формат UART-уведомлений (0-байтовый, 1-JSON, 2-ASCII, 3-настраиваемый байтовый) Нет
add_prefix, add_suffix string Добавить префикс/суффикс к UART-уведомлениям Нет
add_epcl, add_epc, add_tidl, add_tid, add_ant, add_rssi, add_crlf bool Включить/выключить добавление соответствующих полей в UART-уведомления Нет
notify_uart_alive bool Включить/выключить отправку KeepAlive сообщений по UART Нет
notify_uart_speed int Установить скорость UART Нет
ble_keyb bool Включить/выключить эмуляцию BLE-клавиатуры Нет
antenna_stay bool Включить фильтр по удержанию антенны Нет
antenna_rssi bool Включить фильтр по RSSI для удержания антенны Нет

Ответ: 200 - JSON объект с текущими параметрами идентификации. Если параметр taglist=true, в ответ также включается таблица обнаруженных меток.

GET /peripheryconfig

Описание: Возвращает или настраивает параметры управления периферией (Wiegand, реле, пищалка, рампа).

Параметры (для настройки, примеры):

Параметр Тип Описание Обязательный
w_pullup bool Включить/выключить подтяжку линий Wiegand Нет
wiegand1_enable, wiegand2_enable bool Включить/выключить интерфейсы Wiegand 1 и 2 Нет
wiegand1_type, wiegand2_type int Установить тип Wiegand (26, 34, 48 и т.д.) Нет
wiegand1_shift_bytes, wiegand2_shift_bytes int Установить смещение для данных Wiegand Нет
wiegand1_source, wiegand2_source int Выбрать источник данных для Wiegand (1=EPC, иначе DATA) Нет
wiegand1_depends, wiegand2_depends int Настроить зависимость Wiegand от антенн (битовая маска) Нет
timeout_logical_0 uint16 Установить ширину импульса Wiegand Нет
timeout_next_bit uint16 Установить период следования импульсов Wiegand Нет
parity_enable bool Включить/выключить биты четности для Wiegand Нет
beep_on_start bool Включить/выключить звуковой сигнал при старте устройства Нет
smartboard_enable bool Включить/выключить управление платой SmartBoard Нет
smartboard_port1_enable, smartboard_port2_enable... bool Включить/выключить порты SmartBoard Нет
smartboard_port1_timer, smartboard_port2_timer... uint32 Установить время удержания для портов SmartBoard Нет
smartboard_port1_ants, smartboard_port2_ants... uint32 Настроить зависимость портов SmartBoard от антенн Нет
ramp_link, ramp_enable, ramp_renable bool Настроить взаимодействие с контроллером рампы Нет
ramp_timeout, ramp_ltimeout, ramp_senable, ramp_stype, ramp_address uint32 Настроить параметры работы с рампой Нет
wdog_enable, rwdog_enable bool Включить/выключить системный и RFID watchdog Нет
rwdog_timeout uint32 Установить таймаут RFID watchdog Нет
wd_hour, wd_min, wd_sec uint8 Установить время для ежедневной перезагрузки Нет

Ответ: 200 - JSON объект с текущей конфигурацией периферии.

GET /checkwiegand

Описание: Проверяет работу интерфейсов Wiegand, подавая на линии D0 и D1 короткий импульс HIGH.

Параметры: Нет.

Ответ: 200 OK - в теле ответа строка "OK".

GET /simulatewiegand

Описание: Отправляет тестовые данные по интерфейсу Wiegand для проверки его работы.

Параметры: Нет.

Ответ: 200 OK - в теле ответа строка "OK".

GET /lasttag

Описание: Возвращает данные о последней обнаруженной RFID-метке на указанной антенне. Если инвентаризация не запущена, запускает ее.

Параметры:

Параметр Тип Описание Обязательный
antenna int Номер антенны (1-4). По умолчанию 1 Нет

Ответ: 200 - JSON объект с данными о последней метке (EPC, RSSI, антенна и т.д.).

GET /taglist

Описание: Возвращает список всех RFID-меток, находящихся в данный момент в зоне действия считывателя и прошедших фильтрацию.

Параметры:

Параметр Тип Описание Обязательный
limit int Максимальное количество меток в ответе (по умолчанию 50, макс. 150) Нет

Ответ: 200 - JSON объект, содержащий массив list с данными о метках.

GET /taglist_clear

Описание: Очищает список обнаруженных RFID-меток.

Параметры: Нет.

Ответ: 200 OK - в теле ответа строка "OK".

5. Управление Временем и Системой

GET /datetime

Описание: Возвращает текущее системное время и статус устройства или позволяет установить новое системное время.

Параметры (для установки времени):

Параметр Тип Описание Обязательный
day, month, year, hour, minute, second int Компоненты даты и времени Да (все вместе)
wday int День недели (1-7, где 1 - воскресенье) Да

Параметры (для получения времени):

Параметр Тип Описание Обязательный
taglist bool Если true, в ответ также включается таблица list с текущими метками Нет

Ответ:

  • При установке времени: 200 OK - в теле ответа строка "OK".
  • При запросе времени: 200 - JSON объект с текущим временем, статусом Wi-Fi, цветом LED, количеством меток и другой диагностической информацией.
GET /uart

Описание: Запускает диагностику UART-порта. Отправляет тестовую последовательность байт A0 00 FF 01 02 0D 0A и ожидает ответ.

Параметры: Нет.

Ответ: 200 OK - в теле ответа строка "OK".

6. Работа с Таблицей Доступа (EEPROM)

GET /accesstable_size

Описание: Возвращает текущее количество записей в таблице доступа, хранящейся в EEPROM.

Параметры: Нет.

Ответ: 200 - число (количество записей).

GET /accesstable_capacity

Описание: Возвращает максимальную емкость таблицы доступа в EEPROM.

Параметры: Нет.

Ответ: 200 - число (максимальное количество записей).

GET /accesstable_format

Описание: Форматирует (очищает) таблицу доступа в EEPROM, создавая новый заголовок.

Параметры: Нет.

Ответ: 200 OK - в теле ответа строка "OK".

GET /accesstable_part

Описание: Возвращает часть записей из таблицы доступа EEPROM.

Параметры:

Параметр Тип Описание Обязательный
s uint16 Начальный индекс записи (включительно) Да
f uint16 Конечный индекс записи (включительно) Да

Ответ: 200 - JSON массив объектов, представляющих записи таблицы доступа.

GET /accesstable_save

Описание: Сохраняет (перезаписывает) часть записей в таблицу доступа EEPROM.

Параметры:

Параметр Тип Описание Обязательный
s uint16 Начальный индекс записи для сохранения Да
f uint16 Конечный индекс записи для сохранения Да
data string JSON-массив с данными записей для сохранения Да

Ответ: 200 OK - в теле ответа строка "OK".

7. Кодирование RFID-меток (Требуется ENCODE_ENABLE)

GET /copy_tid

Описание: Запускает процесс кодирования RFID-метки по алгоритму "COPY TID": читает TID, формирует новый EPC на его основе и записывает его в метку, а также устанавливает новый пароль и блокирует память.

Параметры:

Параметр Тип Описание Обязательный
pass string Текущий пароль метки (8 hex-символов) Да
npass string Новый пароль для метки (8 hex-символов) Да
filter string Новый фильтр (4 hex-символа) для EPC Да
serial string Новая серийная часть (12 hex-символов) для EPC Да
beep bool Подать звуковой сигнал при успешном кодировании Нет

Ответ: 200 - JSON объект с результатом операции (успех или код ошибки) и деталями закодированной метки.

GET /write

Описание: Записывает произвольные данные в указанный банк памяти RFID-метки. Требует аутентификации.

Параметры:

Параметр Тип Описание Обязательный
antenna uint8 Номер антенны для кодирования Да
select string EPC метки для выбора (если не указан, будет выбрана первая попавшаяся) Нет
pass string Пароль доступа к метке (8 hex-символов) Да
bank uint8 Банк памяти (0=Reserved, 1=EPC, 2=TID, 3=USER) Да
shift_w uint8 Смещение в словах (по 2 байта) Да
datalen_w uint8 Длина данных для записи в словах (макс. 6) Да
data string Данные для записи (в hex-формате, длина зависит от datalen_w) Да
beep bool Подать звуковой сигнал при успешном кодировании Нет

Ответ: 200 - JSON объект с результатом операции (успех или код ошибки).


Пример:

http://..ip../write?
antenna=1&
select=000000000000000000000000&
pass=00000000&
bank=1&shift_w=2&datalen_w=6&
data=1234010105441CDFFF003097&
beep=true


Комменетарий:

  • Метка будет закодирована первой антенной
  • Будет закодирована первая попавшаяся метка
  • Предполагается, что эта метка не защищена паролем (а точнее сектор метки, куда будет производится запись)
  • Будет закодирована память EPC (сектор №1), начиная со второго слова (то есть начиная с пятого по порядку байта)
  • Будет закодировано 6 слов (12 байт, 96 бит)
  • Нове данные, записываемые в память EPC = 1234010105441CDFFF003097
  • После успешной кодировки считыватель подаст звуковой сигнал "beep"

8. Управление Периферией (Реле)

GET /relay1

Описание: Кратковременно включает реле №1 (или порт SmartBoard №1). Требует аутентификации.

Параметры: Нет.

Ответ: 200 OK - в теле ответа строка "OK".

GET /relay2

Описание: Кратковременно включает реле №2 (или порт SmartBoard №2). Требует аутентификации.

Параметры: Нет.

Ответ: 200 OK - в теле ответа строка "OK".

GET /ssr1

Описание: Кратковременно включает SSR реле №1 (или порт SmartBoard №3). Требует аутентификации.

Параметры: Нет.

Ответ: 200 OK - в теле ответа строка "OK".

GET /ssr2

Описание: Кратковременно включает SSR реле №2 (или порт SmartBoard №4). Требует аутентификации.

Параметры: Нет.

Ответ: 200 OK - в теле ответа строка "OK".

GET /beepontag

Описание: Инициирует звуковой сигнал, имитируя обнаружение RFID-метки.

Параметры: Нет.

Ответ: 200 OK - в теле ответа строка "OK".

9. Уведомления, отправляемые на хост

Если параметр notify_enable имеет значение true

Если параметр notify_enable имеет значение true, то при возникновении события (чтение RFID-метки, которая удовлетворяет критериям Свой-Чужой) на хост будет отправлено уведомление: Байтовая посылка, текстовая строка в формате ASCII или Текстовая строка в формате JSON.

Пример уведомление в виде текстовой строки JSON:

{

"READER": ”Серийный номер считывателя”,

"EPC": ”Уникальный номер метки, закодированный в память EPC”,

"DATA": ”Дополнительные данные из памяти RFID-метки, например, TID-номер”,

"DB": ”Номер банка памяти из которого прочитаны дополнительные данные”,

"RSSI": “Сила сигнала -90 самый слабый, 30 самый сильный”,

"ANT": "Номер RFID-антенны, которая обнаружила метку"

}

Примечания

Аутентификация: Большинство критически важных запросов (изменение настроек, управление реле, доступ к файлам) требуют HTTP Basic Authentication. По умолчанию используются логин admin и пароль admin, которые можно изменить через /webaccess.

Формат ответа: Большинство запросов возвращают данные в формате JSON. Некоторые служебные запросы возвращают простой текст "OK" или сообщения об ошибках.

Статусы HTTP: Основные статусы: 200 OK (успех), 401 Unauthorized (требуется аутентификация), 403 Forbidden (доступ запрещен, например, для /copy_tid если функция не поддерживается), 404 Not Found (запрашиваемый ресурс не существует), 500 Internal Server Error (внутренняя ошибка сервера).

Зависимости: Некоторые функции (например, работа с SD-картой, BLE-клавиатура) доступны только если они были включены при компиляции прошивки (определены соответствующие препроцессорные директивы, такие как SD_CARD_SUPPORT, KEYBOARD_SUPPORT, MQTT_SUPPORT).

Россия, г. Москва, 
г. Зеленоград, проезд 4922, дом 4, строение 2. Технопарк "ЭЛМА". 
Подробнее...
SAUK© 2020 – 2025. Все тексты и изображения, представленные на сайте, являются интеллектуальной собственностью SAUK. Могут быть использованы только по письменному согласию SAUK. SAUK® является зарегистрированным торговым знаком.