basiliy-wolf / sigur-api-client
PHP client library for SIGUR Public REST API version 1.6.7.60
0.1
2025-11-25 20:16 UTC
Requires
- php: >=7.4
- ext-curl: *
- ext-json: *
Requires (Dev)
- phpunit/phpunit: ^9.0
- vlucas/phpdotenv: ^5.0
This package is auto-updated.
Last update: 2026-03-03 22:08:49 UTC
README
A modern, powerful, and fully-featured PHP client for SIGUR Public REST API v1.6.7.60.
Современный и полнофункциональный PHP-клиент для SIGUR Public REST API v1.6.7.60.
🌍 Contents / Оглавление
English Version
🌟 Features
- Full employee management
- Card operations (UID, W26, W34, W37, W58, W58DEC)
- Access rules, zones, access points
- Raw and parsed events
- Guest creation (cards, QR codes)
- Batch operations
- Auto token refresh
- Clean & intuitive PHP API
📦 Installation
composer require basiliy-wolf/sigur-api-client
Requirements
- PHP >= 7.4
- cURL extension
- JSON extension
🚀 Quick Start
use SigurApi\SigurApiClient; $client = new SigurApiClient( 'http://192.168.0.108:9500', 'username', 'password' ); $client->testConnection(); $departments = $client->getDepartments(['limit' => 10]);
📘 API Methods Overview
Employees
| Method | Description |
|---|---|
| getEmployees | List employees |
| getEmployee | Get employee by ID |
| createEmployee | Create employee |
| updateEmployee | Update employee |
| deleteEmployee | Delete employee |
| blockEmployee | Block employee |
| unblockEmployee | Unblock employee |
| assignCardsToEmployees | Attach card(s) |
Cards
| Method | Description |
|---|---|
| getCards | List cards |
| getCard | Get card |
| createCard | Create card |
| updateCard | Update card |
| deleteCard | Delete card |
| createMultipleCards | Bulk create |
| deleteMultipleCards | Bulk delete |
Access Control
| Method | Description |
|---|---|
| getAccessRules | List rules |
| createAccessRule | Create rule |
| updateAccessRule | Update rule |
| deleteAccessRule | Delete rule |
Events
| Method | Description |
|---|---|
| getEvents | Raw events |
| getParsedEvents | Parsed events |
Guests
| Method | Description |
|---|---|
| createGuestsWithCards | Guest + card |
| createGuestsWithQrCodes | Guest + QR code |
System
| Method | Description |
|---|---|
| testConnection | Test API availability |
| getTokenInfo | Token metadata |
📝 Usage Examples
Create employee with card
$employee = $client->createEmployee([ 'name' => 'John Smith', 'departmentId' => 1, 'positionId' => 2, 'tabId' => 'EMP001' ]); $card = $client->createCard([ 'value' => 'AABBCCDDEEFF', 'format' => 'W26' ]); $client->assignCardsToEmployees([[ 'employeeId' => $employee['id'], 'cardId' => $card['id'], 'format' => 'W26' ]]);
❗ Error Handling
try { $client->getEmployee(999999); } catch (SigurApiException $e) { echo "Error: {$e->getMessage()}"; }
🧪 Testing
composer test
🔒 Security
- Auto-refresh tokens
- TLS support
- Input validation
🤝 Contributing
Pull requests are welcome!
📄 License
MIT License
Russian Version
🌟 Возможности
- Управление сотрудниками
- Операции с картами (UID, W26, W34, W37, W58 и др.)
- Правила доступа, зоны, точки
- Сырые и разобранные события
- Гости (карты, QR-коды)
- Пакетные операции
- Автоматическое обновление токена
- Удобный PHP-интерфейс
📦 Установка
composer require basiliy-wolf/sigur-api-client
Требования
- PHP >= 7.4
- cURL, JSON
🚀 Быстрый старт
$client = new SigurApiClient( 'http://192.168.0.108:9500', 'login', 'password' ); $client->testConnection(); $departments = $client->getDepartments(['limit' => 10]);
📘 Обзор методов API
Сотрудники
| Метод | Описание |
|---|---|
| getEmployees | Список сотрудников |
| getEmployee | Получить сотрудника по ID |
| createEmployee | Создать сотрудника |
| updateEmployee | Обновить сотрудника |
| deleteEmployee | Удалить сотрудника |
| blockEmployee | Заблокировать |
| unblockEmployee | Разблокировать |
| assignCardsToEmployees | Привязать карту |
Карты
| Метод | Описание |
|---|---|
| getCards | Список карт |
| getCard | Получить карту |
| createCard | Создать карту |
| updateCard | Обновить карту |
| deleteCard | Удалить карту |
| createMultipleCards | Массовое создание |
| deleteMultipleCards | Массовое удаление |
Контроль доступа
| Метод | Описание |
|---|---|
| getAccessRules | Список правил |
| createAccessRule | Создать правило |
| updateAccessRule | Обновить правило |
| deleteAccessRule | Удалить правило |
События
| Метод | Описание |
|---|---|
| getEvents | Сырые события |
| getParsedEvents | Разобранные события |
Гости
| Метод | Описание |
|---|---|
| createGuestsWithCards | Гость + карта |
| createGuestsWithQrCodes | Гость + QR-код |
Система
| Метод | Описание |
|---|---|
| testConnection | Проверка соединения |
| getTokenInfo | Информация о токене |
📝 Примеры
$employee = $client->createEmployee([ 'name' => 'Иван Иванов', 'departmentId' => 1 ]); $card = $client->createCard([ 'value' => 'AABBCCDDEEFF', 'format' => 'W26' ]); $client->assignCardsToEmployees([[ 'employeeId' => $employee['id'], 'cardId' => $card['id'] ]]);
❗ Обработка ошибок
try { $client->getEmployee(999999); } catch (SigurApiException $e) { echo "Ошибка: {$e->getMessage()}"; }
🧪 Тестирование
composer test
🔒 Безопасность
- Автообновление токенов
- TLS
- Валидация
🤝 Вклад
Pull Request’ы приветствуются!
📄 Лицензия
MIT