Kedr.Cloud API представляет собой HTTP-сервис для интеграции со сторонними системами
API работает в режиме сервера
Обмен данными осуществляется посредством GET- и POST-запросов. Данные передаются в формате JSON. Некоторые функции API могут вызываться любым запросом на усмотрение пользователя
Для исключения несанкционированного доступа к данным в каждом запросе должен передаваться параметр apiKey, который генерируется в личном кабинете в разделе Настройки -> Интеграция по API . Он представляет собой параметр формата GUID
apiKey может передаваться двумя способами:
В ответ на любой запрос возвращается поле result, содержащее флаг успешного выполнения
Если запрос был выполнен с ошибкой, то в дополнительном поле error будет приведено её текстовое описание
{ "result": false, "error": "Invalid apiKey" }
В личном кабинете доступен конструктор запросов по API, который расположен в раделе Настройки -> Интеграция по API
Отправка команды на открытие
Получение списка сотрудников
Получение списка объектов
Получение протокола доступа
Добавление сотрудников
Изменение сотрудников
Удаление сотрудников
https://kedr.cloud/api/web/open.ashx?apiKey=123-45&uid=12345&dir=in
https://kedr.cloud/api/web/open.ashx?apiKey=123-45
{ "uid": 1244847, "dir": "out" }
{ "result": true, "uid": 12345, "dir": "in", "create_datetime": "2024-05-19T10:29:53+03:00", "exec_datetime": "2024-05-19T10:29:53+03:00" }
https://kedr.cloud/api/web/get-users-list.ashx?apiKey=123-45&card_code=567&user_name=XXX&group_id=0
{ result: true, "items": [ { "id": 879, "fam": "TEST", "name": "", "otch": "", "phone": "1111111111", "gos_num_auto": "", "card_code": 2100000000, "add_card_code_list": [ 123123, 222, 456 ], "foto_url": "/Foto/508aa05b-3225-442d-964d-307f85fe15aa/8uiPvyBTP7SQYC6fYjlehtvcJUhUZtno.JPG", "change_datetime": "2024-03-26T21:31:43+03:00", "last_accesss_datetime": "2024-02-22T12:01:24+03:00", "blocked": false, "other": "", "group_name": "Без группы", "group_id": -1, "calendar_name": "Без ограничений", "calendar_id": -1, "appointment": "236523", "schedules_list": [ { "schedule_id": 12, "schedule_name": "Инженеры" }, { "schedule_id": 18, "schedule_name": "Производство" } ] } ] }
https://kedr.cloud/api/web/get-objects-list.ashx?apiKey=123-45
{ "result": true, "items": [ { "id": 5, "name": "СпецПромДизайн", "address": "г. Рязань, пр-д Яблочкова, д. 6", "time_zone": 180, "devices_list": [ { "device_id": 1731, "uid": 848848, "device_name": "Офис 717", "is_link": true, "is_params_sync": true, "is_open_for_long_time": false }, { "device_id": 2201, "uid": 86400671, "device_name": "Офис 720", "is_link": true, "is_params_sync": true, "is_open_for_long_time": false }, { "device_id": 1474, "uid": 86401692, "device_name": "Офис 720А", "is_link": true, "is_params_sync": true, "is_open_for_long_time": false }, { "device_id": 1257, "uid": 86402132, "device_name": "Офис 718", "is_link": true, "is_params_sync": true, "is_open_for_long_time": false } ] } ] }
https://kedr.cloud/api/web/get-access-protocol.ashx?apiKey=123-45&user_name=&uid=0&event_code=-1&beg_date=2024-03-25&end_date=2024-03-25
{ "result": true, "events": [ { "id": 649746, "fam": "", "name": "", "otch": "", "appointment": "", "card_code": 347, "event_code": 200, "event_text": "Дверь (гостевой пропуск)", "uid": 1244847, "device_name": "Тестовый КЕДР", "device_id": "2717", "object_name": 1474, "object_id": 5, "datetime": "2024-03-24T16:45:58+05:00" } ] }
Максимальный период выборки составляет 100 дней
https://kedr.cloud/api/web/add-users.ashx?apiKey=123-45
{ "items": [ { "fam": "Фролов", "name": "Дмитрий", "otch": "Александрович", "phone": "", "gos_num_auto": "", "card_code": 2388872657, "add_card_code_list": [], "blocked": false, "other": "", "group_name": "SPD", "appointment": "Генеральный директор" } ] }
Максимальное количество сотрудников, которое можно добавить, составляет 3000 человек
Добавлять сотрудников можно как по одному, так и целым списком не более этого лимита
Если такой сотрудник уже есть в системе, то данные по нему просто обновятся. Поиск сотрудника перед обновлением сначала осуществляется по номерам карт доступа, потом по ФИО. П итогу, если сотрудник не найден, то создаётся новый. Если найден, то обновляется информация по текущему.
{ "result": true, "items": [ { "fam": "Фролов, "name": "Дмитрий", "otch": "Александрович", "phone": "", "card_code": 2388872657, "add_card_code_list": [], "status": "replaced" } ] }
При выполнении запроса в ответ будет выдан список сотрудников с соответствующими статусами
https://kedr.cloud/api/web/edit-users.ashx?apiKey=123-45
{ "items": [ { "id": 123, "fam": "Фролов", "name": "Дмитрий", "otch": "Александрович", "phone": "", "gos_num_auto": "", "card_code": 2388872657, "add_card_code_list": [], "blocked": false, "other": "", "group_name": "SPD", "appointment": "Генеральный директор" } ] }
Изменять сотрудников можно как по одному, так и целым списком
{ "result": true, "items": [ { "id": 123, "fam": "Фролов, "name": "Дмитрий", "otch": "Александрович", "phone": "", "card_code": 2388872657, "add_card_code_list": [], "status": "replaced" } ] }
https://kedr.cloud/api/web/del-users.ashx?apiKey=123-45
{ "items": [ { "id": 123, "fam": "", "name": "", "otch": "", "card_code": 9090902 }, { "id": 124, "fam": "Фролова", "name": "Ольга", "otch": "Викторовна" } ] }
Поиск сотрудника будет осуществляться по id, коду карты или по полному совпадению Ф.И.О. в зависимости от того, что именно передано в запросе.
{ "result": false, "items": [ { "id": 123, "fam": "", "name": "", "otch": "", "card_code": 9090902, "status": "not found" }, { "id": 1234, "fam": "Фролова", "name": "Ольга", "otch": "Викторовна", "card_code": 123, "status": "deleted" } ] }