Breadcrumbs

Обновить элемент дерева

Метод и параметры

PATCH  /api/v1/billing/tree

При обновлении элемента дерева можно его переименовать или поменять ключ.

При изменении ключа у элемента дерева не пропадают зависимости, которые были созданы через старый ключ.

Элемент дерева можно обновить по id или по external_id.

JSON
{
    "name": "new name",
    "type": "cameras|intercoms|camera_intercom",
    "new_type": "camera_intercom",
    "id": null,
    "external_id": "current_value",
    "new_external_id": "new_value",
    "log_extra": {
        "some": "information"
    }
}

string name – название элемента дерева.


int id – идентификатор элемента дерева, который нужно обновить.


string|int external_id – ключ для элемента дерева.


string type – тип дерева, в рамках которого происходит обновление.


string new_type – новый тип дерева.


string|int new_external_id – новый уникальный собственный ключ для элемента дерева.


string|array log_extra – дополнительная информация, получаемая из внешней системы.

200  OK

Успешный ответ

JSON
{
    "id": 15,
    "name": "Name of item",
    "external_id": "unique_key",
    "has_items": true
}

422  Unprocessable Entity

Возвращает JSON объект с ошибкой. Детально в разделе Общая информация→Валидация.

JSON
{
    "message": "Сообщение отсутствует",
    "errors": {
        "any_key": [
            "Детальная информация об ошибке"
        ]
    }
}
cURL
Bash
curl -k --request PATCH \
	--url 'https://your-domain/api/v1/billing/tree' \
	--header 'Content-Type: application/json' \
	--header 'Accept: application/json' \
	--data '{
    "name": "string",
    "id": 0,
    "external_id": "string|int",
    "type": "string",
    "new_type": "string",
    "new_external_id": "string|int",
    "log_extra": "string|array"
}'
PHP
PHP
$data = array (
  'name' => 'string',
  'id' => 0,
  'external_id' => 'string|int',
  'type' => 'string',
  'new_type' => 'string',
  'new_external_id' => 'string|int',
  'log_extra' => 'string|array',
);
$context = stream_context_create([
	'ssl'=>['verify_peer' => false],
	'http' => [
		'method' => 'PATCH',
		'header' => "Content-Type: application/json\r
Accept: application/json",
		'content'=>json_encode($data)
	]
]);
$result = file_get_contents('https://your-domain/api/v1/billing/tree', false, $context);