OSDP API 1.7.0
Методы API для работы с разделом «OSDP».
Базовый путь: https://{IP_контроллера}/api/v1.
Версия описания API: 1.7.0.
Примеры используют placeholder-значения для паролей, token, UUID, адресов и секретов. Перед выполнением запроса замените их на значения вашего контроллера.
Методы раздела
| Метод | Путь |
|---|---|
POST | /group_update/osdp/start |
GET | /osdp/config |
POST | /osdp/config |
GET | /osdp/stats |
DELETE | /osdp/stats |
GET | /osdp_lines_backup |
PUT | /osdp_lines_backup |
DELETE | /osdp_lines_backup |
GET | /osdp_update |
POST | /osdp_update |
POST /group_update/osdp/start
Раздел: OSDP.
Запускает групповое обновление устройств OSDP.
Параметры и ответы по OpenAPI
{
"description": "Start group update",
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"filePath"
],
"properties": {
"devices": {
"type": "object",
"additionalProperties": {
"type": "array",
"items": {
"type": "string"
}
},
"example": {
"1": [
"/2/12",
"/1/1"
],
"23": [
"/1/1",
"/1/8"
]
}
},
"filePath": {
"type": "string",
"description": "Путь к файлу прошивки"
}
}
}
}
}
},
"responses": {
"200": {
"description": "Card has been successfully added"
},
"400": {
"description": "Bad request",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"success"
],
"properties": {
"success": {
"type": "boolean",
"example": false
},
"message": {
"type": "string"
},
"data": {
"type": "object"
}
}
}
}
}
},
"409": {
"description": "Card already exists",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"success"
],
"properties": {
"success": {
"type": "boolean",
"example": false
},
"message": {
"type": "string"
},
"data": {
"type": "object"
}
}
}
}
}
},
"500": {
"description": "Something went wrong. It seems there is a bug on server",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"success"
],
"properties": {
"success": {
"type": "boolean",
"example": false
},
"message": {
"type": "string"
},
"data": {
"type": "object"
}
}
}
}
}
}
}
}
Примеры по OpenAPI
Сформированы по схеме контроллера; значения полей необходимо заменить.
Пример запроса
curl -k -X POST "https://{IP_контроллера}/api/v1/group_update/osdp/start" \
-H "Authorization: Bearer <token>" \
-H "Content-Type: application/json" \
--data-raw '{
"devices": {
"1": [
"/2/12",
"/1/1"
],
"23": [
"/1/1",
"/1/8"
]
},
"filePath": "string"
}'
Пример тела запроса
{
"devices": {
"1": [
"/2/12",
"/1/1"
],
"23": [
"/1/1",
"/1/8"
]
},
"filePath": "string"
}
GET /osdp/config
Раздел: OSDP.
Возвращает конфигурацию OSDP-устройств
Назначение | URL запроса |
Возвращает конфигурацию OSDP-устройств | https://{IP_контроллера}/api/v1/osdp/config |
Параметры запроса:
Отсутствуют
Варианты ответа:
Code 200 (Successfully received OSDP configuration) - удачное выполнение запроса
Название, * - обязательный | Тип | Формат | Назначение |
baudrate-line1* | integer | [ 9600, 19200, 38400, 57600, 115200 ] | Скорость передачи данных линия 1 |
baudrate-line2* | integer | [ 9600, 19200, 38400, 57600, 115200 ] | Скорость передачи данных линия 2 |
interval-line1* | integer | minimum: 0 | Интервал линии 1 |
interval-line2* | integer | minimum: 0 | Интервал линии 2 |
err-time-line1* | integer | minimum: 10 | Время ошибки линии 1 |
err-time-line2* | integer | minimum: 10 | Время ошибки линии 2 |
Пример:
Пример с исправленным синтаксисом JSON
Добавлена открывающая фигурная скобка.
{
"baudrate-line1": 9600,
"baudrate-line2": 9600,
"interval-line1": 0,
"interval-line2": 0,
"err-time-line1": 10,
"err-time-line2": 10
}
Исходный пример Teamly
Пример из Teamly сохранён дословно, но не является корректным JSON.
"baudrate-line1": 9600,
"baudrate-line2": 9600,
"interval-line1": 0,
"interval-line2": 0,
"err-time-line1": 10,
"err-time-line2": 10
}
Code 500 (Unexpected server error) - запрос не выполнен, получено сообщение об ошибке
Параметры и ответы по OpenAPI
{
"description": "Get OSDP configuration",
"responses": {
"200": {
"description": "Successfully received OSDP configuration",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"baudrate-line1",
"baudrate-line2",
"interval-line1",
"interval-line2",
"err-time-line1",
"err-time-line2"
],
"properties": {
"baudrate-line1": {
"type": "integer",
"enum": [
9600,
19200,
38400,
57600,
115200
]
},
"baudrate-line2": {
"type": "integer",
"enum": [
9600,
19200,
38400,
57600,
115200
]
},
"interval-line1": {
"type": "integer",
"minimum": 0
},
"interval-line2": {
"type": "integer",
"minimum": 0
},
"err-time-line1": {
"type": "integer",
"minimum": 10
},
"err-time-line2": {
"type": "integer",
"minimum": 10
}
}
}
}
}
},
"500": {
"description": "Server error",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"success"
],
"properties": {
"success": {
"type": "boolean",
"example": false
},
"message": {
"type": "string"
},
"data": {
"type": "object"
}
}
}
}
}
}
}
}
Примеры по OpenAPI
Сформированы по схеме контроллера; значения полей необходимо заменить.
Пример запроса
curl -k -X GET "https://{IP_контроллера}/api/v1/osdp/config" \
-H "Authorization: Bearer <token>"
Пример ответа
{
"baudrate-line1": 9600,
"baudrate-line2": 9600,
"interval-line1": 1,
"interval-line2": 1,
"err-time-line1": 10,
"err-time-line2": 10
}
POST /osdp/config
Раздел: OSDP.
Настраивает новую конфигурацию OSDP-устройств
Назначение | URL запроса |
Настраивает новую конфигурацию OSDP-устройств | https://{IP_контроллера}/api/v1/osdp/config |
Параметры запроса:
Название | Тип | Описание | |
osdp_config* | object(body) | Тело запроса | |
BODY | |||
Название * - обязательный | Тип | Формат | Назначение |
baudrate-line1* | integer | [ 9600, 19200, 38400, 57600, 115200 ] | Скорость передачи данных линия 1 |
baudrate-line2* | integer | [ 9600, 19200, 38400, 57600, 115200 ] | Скорость передачи данных линия 2 |
interval-line1* | integer | minimum: 0 | Интервал линии 1 |
interval-line2* | integer | minimum: 0 | Интервал линии 2 |
err-time-line1* | integer | minimum: 10 | Время ошибки линии 1 |
err-time-line2* | integer | minimum: 10 | Время ошибки линии 2 |
Пример:
URL запроса: POST
https://{IP_контроллера}/api/v1/osdp/config
Body
{
"baudrate-line1": 9600,
"baudrate-line2": 9600,
"interval-line1": 0,
"interval-line2": 0,
"err-time-line1": 10,
"err-time-line2": 10
}
Варианты ответа:
Code 200 (Successfully) - удачное выполнение запроса
{
"success": false,
"message": "string",
"data": {}
}
Code 500 (Unexpected server error) - запрос не выполнен, получено сообщение об ошибке
Параметры и ответы по OpenAPI
{
"description": "Set new OSDP configuration",
"requestBody": {
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"baudrate-line1",
"baudrate-line2",
"interval-line1",
"interval-line2",
"err-time-line1",
"err-time-line2"
],
"properties": {
"baudrate-line1": {
"type": "integer",
"enum": [
9600,
19200,
38400,
57600,
115200
]
},
"baudrate-line2": {
"type": "integer",
"enum": [
9600,
19200,
38400,
57600,
115200
]
},
"interval-line1": {
"type": "integer",
"minimum": 0
},
"interval-line2": {
"type": "integer",
"minimum": 0
},
"err-time-line1": {
"type": "integer",
"minimum": 10
},
"err-time-line2": {
"type": "integer",
"minimum": 10
}
}
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Successfully set new OSDP configuration",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"success"
],
"properties": {
"success": {
"type": "boolean",
"example": false
},
"message": {
"type": "string"
},
"data": {
"type": "object"
}
}
}
}
}
},
"500": {
"description": "Server error",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"success"
],
"properties": {
"success": {
"type": "boolean",
"example": false
},
"message": {
"type": "string"
},
"data": {
"type": "object"
}
}
}
}
}
}
}
}
Примеры по OpenAPI
Сформированы по схеме контроллера; значения полей необходимо заменить.
Пример запроса
curl -k -X POST "https://{IP_контроллера}/api/v1/osdp/config" \
-H "Authorization: Bearer <token>" \
-H "Content-Type: application/json" \
--data-raw '{
"baudrate-line1": 9600,
"baudrate-line2": 9600,
"interval-line1": 1,
"interval-line2": 1,
"err-time-line1": 10,
"err-time-line2": 10
}'
Пример тела запроса
{
"baudrate-line1": 9600,
"baudrate-line2": 9600,
"interval-line1": 1,
"interval-line2": 1,
"err-time-line1": 10,
"err-time-line2": 10
}
Пример ответа
{
"success": false,
"message": "string",
"data": {}
}
GET /osdp/stats
Раздел: OSDP.
Возвращает статистику обмена данными по протоколу OSDP для устройств на этом контроллере
Назначение | URL запроса |
Возвращает статистику обмена данными по протоколу OSDP для устройств на этом контроллере | https://{IP_контроллера}/api/v1/osdp/stats |
Параметры запроса:
Отсутствуют
Варианты ответа:
Code 200 (Successfully received OSDP communication statistics) - удачное выполнение запроса
Название, * - обязательный | Тип | Формат | Назначение |
device_addr* | string | Адрес устройства | |
rx* | integer | Количество полученных пакетов | |
tx* | integer | Количество отправленных пакетов |
Пример:
[
{
"device_addr": "string",
"rx": 0,
"tx": 0
}
]
Code 500 (Unexpected server error) - запрос не выполнен, получено сообщение об ошибке
Параметры и ответы по OpenAPI
{
"description": "Get OSDP communication statistics for devices on this controller",
"responses": {
"200": {
"description": "Successfully received OSDP communication statistics",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"type": "object",
"required": [
"device_addr",
"rx",
"tx"
],
"properties": {
"device_addr": {
"type": "string"
},
"rx": {
"type": "integer",
"description": "packets received"
},
"tx": {
"type": "integer",
"description": "packets sent"
}
}
}
}
}
}
},
"500": {
"description": "Server error",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"success"
],
"properties": {
"success": {
"type": "boolean",
"example": false
},
"message": {
"type": "string"
},
"data": {
"type": "object"
}
}
}
}
}
}
}
}
Примеры по OpenAPI
Сформированы по схеме контроллера; значения полей необходимо заменить.
Пример запроса
curl -k -X GET "https://{IP_контроллера}/api/v1/osdp/stats" \
-H "Authorization: Bearer <token>"
Пример ответа
[
{
"device_addr": "string",
"rx": 1,
"tx": 1
}
]
DELETE /osdp/stats
Раздел: OSDP.
Удаляет статистику обмена данными OSDP для устройств на этом контроллере
Назначение | URL запроса |
Удаляет статистику обмена данными OSDP для устройств на этом контроллере | https://{IP_контроллера}/api/v1/osdp/stats |
Параметры запроса:
Отсутствуют
Варианты ответа:
Code 200 (Successfully cleared OSDP communication statistics) - удачное выполнение запроса
{
"success": false,
"message": "string",
"data": {}
}
Code 500 (Unexpected server error) - запрос не выполнен, получено сообщение об ошибке
Параметры и ответы по OpenAPI
{
"description": "Clear osdp communication statistics for devices on this controller",
"responses": {
"200": {
"description": "Successfully cleared OSDP communication statistics",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"success"
],
"properties": {
"success": {
"type": "boolean",
"example": false
},
"message": {
"type": "string"
},
"data": {
"type": "object"
}
}
}
}
}
},
"500": {
"description": "Server error",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"success"
],
"properties": {
"success": {
"type": "boolean",
"example": false
},
"message": {
"type": "string"
},
"data": {
"type": "object"
}
}
}
}
}
}
}
}
Примеры по OpenAPI
Сформированы по схеме контроллера; значения полей необходимо заменить.
Пример запроса
curl -k -X DELETE "https://{IP_контроллера}/api/v1/osdp/stats" \
-H "Authorization: Bearer <token>"
Пример ответа
{
"success": false,
"message": "string",
"data": {}
}
GET /osdp_lines_backup
Раздел: OSDP.
Возвращает резервную конфигурацию OSDP-устройств
Назначение | URL запроса |
Возвращает резервную конфигурацию OSDP-устройств | https://{IP_контроллера}/api/v1/osdp_lines_backup |
Параметры запроса:
Отсутствуют
Варианты ответа:
Code 200 (Successfully got OSD backup configuration) - удачное выполнение запроса
Название, * - обязательный | Тип | Формат | Назначение |
backupers* | [{ | Резервные копии | |
controller* | { | Серийный номер контроллера | |
line_1 | { | Конфигурация резервного копирования линии 1 | |
controller* | string | Серийный номер контроллера | |
line* | integer | minimum: 1 | Номер линии |
}] |
Пример:
{
"backupers": [
{
"controller": "string",
"line_1": {
"controller": "string",
"line": 2
},
"line_2": {
"controller": "string",
"line": 2
}
}
]
}
Code 500 (Unexpected server error) - запрос не выполнен, получено сообщение об ошибке
Параметры и ответы по OpenAPI
{
"description": "Get OSDP backup configuration",
"responses": {
"200": {
"description": "Successfully got OSD backup configuration",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"backupers"
],
"properties": {
"backupers": {
"type": "array",
"items": {
"type": "object",
"required": [
"controller"
],
"properties": {
"controller": {
"type": "string",
"description": "Backuping controller serial"
},
"line_1": {
"description": "Line 1 backup configuration",
"type": "object",
"required": [
"controller",
"line"
],
"properties": {
"controller": {
"type": "string",
"description": "Backuped controller serial"
},
"line": {
"type": "integer",
"minimum": 1,
"maximum": 2,
"description": "Backuped line number"
}
}
},
"line_2": {
"description": "Line 2 backup configuration",
"type": "object",
"required": [
"controller",
"line"
],
"properties": {
"controller": {
"type": "string",
"description": "Backuped controller serial"
},
"line": {
"type": "integer",
"minimum": 1,
"maximum": 2,
"description": "Backuped line number"
}
}
}
}
}
}
}
}
}
}
},
"500": {
"description": "Server error",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"success"
],
"properties": {
"success": {
"type": "boolean",
"example": false
},
"message": {
"type": "string"
},
"data": {
"type": "object"
}
}
}
}
}
}
}
}
Примеры по OpenAPI
Сформированы по схеме контроллера; значения полей необходимо заменить.
Пример запроса
curl -k -X GET "https://{IP_контроллера}/api/v1/osdp_lines_backup" \
-H "Authorization: Bearer <token>"
Пример ответа
{
"backupers": [
{
"controller": "string",
"line_1": {
"controller": "string",
"line": 1
},
"line_2": {
"controller": "string",
"line": 1
}
}
]
}
PUT /osdp_lines_backup
Раздел: OSDP.
Обновляет резервную конфигурацию OSDP-устройств
Назначение | URL запроса |
Обновляет резервную конфигурацию OSDP-устройств | https://{IP_контроллера}/api/v1/osdp_lines_backup |
Параметры запроса:
Название | Тип | Описание | |
osdp_lines_backup* | object(body) | Тело запроса | |
BODY | |||
Название * - обязательный | Тип | Формат | Назначение |
backupers* | [{ | Резервные копии | |
controller* | { | Серийный номер контроллера | |
line_1 | { | Конфигурация резервного копирования линии 1 | |
controller* | string | Серийный номер контроллера | |
line* | integer | minimum: 1 | Номер линии |
}] | |||
Пример:
URL запроса: PUT
https://{IP_контроллера}/api/v1/osdp_lines_backup
Body
{
"backupers": [
{
"controller": "string",
"line_1": {
"controller": "string",
"line": 2
},
"line_2": {
"controller": "string",
"line": 2
}
}
]
}
Варианты ответа:
Code 200 (Successfully) - удачное выполнение запроса
{
"success": false,
"message": "string",
"data": {}
}
Code 400 (Bad request parameters) - запрос не выполнен, неверно указаны параметры запроса
Code 500 (Unexpected server error) - запрос не выполнен, получено сообщение об ошибке
Параметры и ответы по OpenAPI
{
"description": "Update OSDP backup configuration",
"requestBody": {
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"backupers"
],
"properties": {
"backupers": {
"type": "array",
"items": {
"type": "object",
"required": [
"controller"
],
"properties": {
"controller": {
"type": "string",
"description": "Backuping controller serial"
},
"line_1": {
"description": "Line 1 backup configuration",
"type": "object",
"required": [
"controller",
"line"
],
"properties": {
"controller": {
"type": "string",
"description": "Backuped controller serial"
},
"line": {
"type": "integer",
"minimum": 1,
"maximum": 2,
"description": "Backuped line number"
}
}
},
"line_2": {
"description": "Line 2 backup configuration",
"type": "object",
"required": [
"controller",
"line"
],
"properties": {
"controller": {
"type": "string",
"description": "Backuped controller serial"
},
"line": {
"type": "integer",
"minimum": 1,
"maximum": 2,
"description": "Backuped line number"
}
}
}
}
}
}
}
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Successfully updated OSDP backup configuration",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"success"
],
"properties": {
"success": {
"type": "boolean",
"example": false
},
"message": {
"type": "string"
},
"data": {
"type": "object"
}
}
}
}
}
},
"400": {
"description": "Bad request parameters",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"success"
],
"properties": {
"success": {
"type": "boolean",
"example": false
},
"message": {
"type": "string"
},
"data": {
"type": "object"
}
}
}
}
}
},
"500": {
"description": "Server error",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"success"
],
"properties": {
"success": {
"type": "boolean",
"example": false
},
"message": {
"type": "string"
},
"data": {
"type": "object"
}
}
}
}
}
}
}
}
Примеры по OpenAPI
Сформированы по схеме контроллера; значения полей необходимо заменить.
Пример запроса
curl -k -X PUT "https://{IP_контроллера}/api/v1/osdp_lines_backup" \
-H "Authorization: Bearer <token>" \
-H "Content-Type: application/json" \
--data-raw '{
"backupers": [
{
"controller": "string",
"line_1": {
"controller": "string",
"line": 1
},
"line_2": {
"controller": "string",
"line": 1
}
}
]
}'
Пример тела запроса
{
"backupers": [
{
"controller": "string",
"line_1": {
"controller": "string",
"line": 1
},
"line_2": {
"controller": "string",
"line": 1
}
}
]
}
Пример ответа
{
"success": false,
"message": "string",
"data": {}
}
DELETE /osdp_lines_backup
Раздел: OSDP.
Удаляет резервную конфигурацию OSDP-устройств
Назначение | URL запроса |
Удаляет резервную конфигурацию OSDP-устройств | https://{IP_контроллера}/api/v1/osdp_lines_backup |
Параметры запроса:
Отсутствуют
Варианты ответа:
Code 200 (Successfully deleted OSDP backup configuration) - удачное выполнение запроса
{
"success": false,
"message": "string",
"data": {}
}
Code 500 (Unexpected server error) - запрос не выполнен, получено сообщение об ошибке
Параметры и ответы по OpenAPI
{
"description": "Clear OSDP backup configuration",
"responses": {
"200": {
"description": "Successfully deleted OSDP backup configuration",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"success"
],
"properties": {
"success": {
"type": "boolean",
"example": false
},
"message": {
"type": "string"
},
"data": {
"type": "object"
}
}
}
}
}
},
"500": {
"description": "Server error",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"success"
],
"properties": {
"success": {
"type": "boolean",
"example": false
},
"message": {
"type": "string"
},
"data": {
"type": "object"
}
}
}
}
}
}
}
}
Примеры по OpenAPI
Сформированы по схеме контроллера; значения полей необходимо заменить.
Пример запроса
curl -k -X DELETE "https://{IP_контроллера}/api/v1/osdp_lines_backup" \
-H "Authorization: Bearer <token>"
Пример ответа
{
"success": false,
"message": "string",
"data": {}
}
GET /osdp_update
Раздел: OSDP.
Возвращает статус обновления OSDP-устройств
Назначение | URL запроса |
Возвращает статус обновления OSDP-устройств | https://{IP_контроллера}/api/v1/osdp_update |
Параметры запроса:
Отсутствуют
Варианты ответа:
Code 200 (Returned OSDP device update status) - удачное выполнение запроса
Название, * - обязательный | Тип | Формат | Назначение |
status* | string | [ STARTED, STOPPED ] | Статус обновления |
Пример:
{
"status": "STARTED"
}
Code 500 (Unexpected server error) - запрос не выполнен получено сообщение об ошибке
Параметры и ответы по OpenAPI
{
"description": "Get OSDP device update status",
"responses": {
"200": {
"description": "Returned OSDP device update status",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"status"
],
"properties": {
"status": {
"type": "string",
"enum": [
"STARTED",
"STOPPED"
]
}
}
}
}
}
}
}
}
Примеры по OpenAPI
Сформированы по схеме контроллера; значения полей необходимо заменить.
Пример запроса
curl -k -X GET "https://{IP_контроллера}/api/v1/osdp_update" \
-H "Authorization: Bearer <token>"
Пример ответа
{
"status": "STARTED"
}
POST /osdp_update
Раздел: OSDP.
Запускает обновление прошивки OSDP-устройств
Назначение | URL запроса |
Запускает обновление прошивки OSDP-устройств | https://{IP_контроллера}/api/v1/osdp_update |
Параметры запроса:
Название | Тип | Описание | |
osdp_update* | object(body) | Тело запроса | |
BODY | |||
Название * - обязательный | Тип | Формат | Назначение |
devices* | string | Список устройств | |
update_file * | string($binary) | Файл обновления в бинарном виде | |
Варианты ответа:
Code 200 (Successfully) - удачное выполнение запроса
{
"success": false,
"message": "string",
"data": {}
}
Code 400 (Bad request parameters) - запрос не выполнен, неверно указаны параметры запроса
Code 404 (User with specified login already exists) - запрос не выполнен, пользователь с таким именем уже добавлен
Code 409 (OSDP update already in progress) - запрос не выполнен, обновление уже запущено
Code 500 (Unexpected server error) - запрос не выполнен, получено сообщение об ошибке
Параметры и ответы по OpenAPI
{
"description": "Start OSDP device firmware update",
"requestBody": {
"required": true,
"content": {
"multipart/form-data": {
"schema": {
"type": "object",
"required": [
"devices",
"update_file"
],
"properties": {
"devices": {
"type": "string"
},
"update_file": {
"type": "string",
"format": "binary"
}
}
}
}
}
},
"responses": {
"200": {
"description": "Update successfully started",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"success"
],
"properties": {
"success": {
"type": "boolean",
"example": false
},
"message": {
"type": "string"
},
"data": {
"type": "object"
}
}
}
}
}
},
"400": {
"description": "Bad request parameters",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"success"
],
"properties": {
"success": {
"type": "boolean",
"example": false
},
"message": {
"type": "string"
},
"data": {
"type": "object"
}
}
}
}
}
},
"409": {
"description": "OSDP update already in progress",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"success"
],
"properties": {
"success": {
"type": "boolean",
"example": false
},
"message": {
"type": "string"
},
"data": {
"type": "object"
}
}
}
}
}
},
"500": {
"description": "Server error",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"success"
],
"properties": {
"success": {
"type": "boolean",
"example": false
},
"message": {
"type": "string"
},
"data": {
"type": "object"
}
}
}
}
}
}
}
}
Примеры по OpenAPI
Сформированы по схеме контроллера; значения полей необходимо заменить.
Пример запроса
curl -k -X POST "https://{IP_контроллера}/api/v1/osdp_update" \
-H "Authorization: Bearer <token>" \
--form-string devices=string \
--form 'update_file=@/path/to/update_file;type=application/octet-stream'
Пример ответа
{
"success": false,
"message": "string",
"data": {}
}