Перейти к основному содержимому

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-устройств

Источник в Teamly

Назначение

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-устройств

Источник в Teamly

Назначение

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 для устройств на этом контроллере

Источник в Teamly

Назначение

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 для устройств на этом контроллере

Источник в Teamly

Назначение

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-устройств

Источник в Teamly

Назначение

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
maximum: 2

Номер линии

}]

Пример:

{
"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-устройств

Источник в Teamly

Назначение

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
maximum: 2

Номер линии

}]

Пример:

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-устройств

Источник в Teamly

Назначение

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-устройств

Источник в Teamly

Назначение

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-устройств

Источник в Teamly

Назначение

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": {}
}