# department.update

URL: https://chugunov.pro/api-bitrix24/departments/department-update/
Проверено на Битрикс24 REST API, обновлено 11.09.2026 (ревизия источника fb39d6c).
Источник: официальная документация Битрикс24 (bitrix-tools/b24-rest-docs, лицензия MIT, © Bitrix). Справочник независимый, официальной документацией не является.

Изменить подразделение
Scope: `department`
Кто может выполнять метод: пользователь с правами на изменение структуры

## Описание

Метод `department.update` изменяет данные подразделения в структуре компании.

## Параметры

- `ID` `integer` — обязательный. Иидентификатор подразделения
- `NAME` `string` — необязательный. Название подразделения
- `SORT` `integer` — необязательный. Поле сортировки подразделения
- `PARENT` `integer` — необязательный. Идентификатор родительского подразделения
- `UF_HEAD` `integer` — необязательный. Идентификатор пользователя, который будет руководителем подразделения

## Ответ

HTTP-статус: 200

```json
{
    "result": true,
    "time": {
        "start": 1736929002.119324,
        "finish": 1736929002.469626,
        "duration": 0.35030198097229004,
        "processing": 0.13488411903381348,
        "date_start": "2025-01-15T08:16:42+00:00",
        "date_finish": "2025-01-15T08:16:42+00:00",
        "operating": 0.13484978675842285
    }
}
```

### Возвращаемые данные

- `result` `boolean`. Результат изменения отдела в структуре компании
- `time` `time`. Информация о времени выполнения запроса

## Ошибки

HTTP-статус: 400

```json
{
    "error": "ERROR_CORE",
    "error_description": "Department not found"
}
```

- `ERROR_CORE` — Department not found. Обновляемый отдел не найден
- `ERROR_CORE` — Access denied. Недостаточно прав для измения отдела

## Примеры запроса

### cURL (Webhook)

```curl
-X POST \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{
    "ID": 18,
    "NAME": "Отдел тайн",
    "SORT": 500,
    "UF_HEAD": 1,
    "PARENT": 1
}' \
https://**put_your_bitrix24_address**/rest/**put_your_user_id_here**/**put_your_webhook_here**/department.update
```

### cURL (OAuth)

```curl
-X POST \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{
    "ID": 18,
    "NAME": "Отдел тайн",
    "SORT": 500,
    "UF_HEAD": 1,
    "PARENT": 1,
    "auth": "**put_access_token_here**"
}' \
https://**put_your_bitrix24_address**/rest/department.update
```

### JS

```js
try
{
	const response = await $b24.callMethod(
		'department.update',
		{
			"ID": 18,
			"NAME": "Отдел тайн",
			"SORT": 500,
			"UF_HEAD": 1,
			"PARENT": 1
		}
	);
	
	const result = response.getData().result;
	console.log(result);
}
catch( error )
{
	console.error(error.ex);
}
```

### Python

```python
from b24pysdk.errors import BitrixAPIError, BitrixSDKException

try:
    bitrix_response = client.department.update(
        bitrix_id=42,
        name="Regional Sales Department",
        sort=600,
        parent=1,
        uf_head=1,
    ).response
    result = bitrix_response.result
    print(result)
except BitrixAPIError as error:
    print(
        "Ошибка Bitrix API",
        f"error: {error.error}",
        f"error_description: {error.error_description}",
        sep="\n",
    )
except BitrixSDKException as error:
    print(f"Ошибка Bitrix SDK: {error.message}")
except Exception as error:
    print(f"Непредвиденная ошибка: {error}")
```

### PHP

```php
try {
    $response = $b24Service
        ->core
        ->call(
            'department.update',
            [
                'ID'     => 18,
                'NAME'   => 'Отдел тайн',
                'SORT'   => 500,
                'UF_HEAD' => 1,
                'PARENT' => 1
            ]
        );

    $result = $response
        ->getResponseData()
        ->getResult();

    if ($result->error()) {
        error_log($result->error()->ex);
    } else {
        echo 'Success: ' . print_r($result->data(), true);
    }

} catch (Throwable $e) {
    error_log($e->getMessage());
    echo 'Error updating department: ' . $e->getMessage();
}
```

### BX24.js

```js
BX24.callMethod(
    'department.update',
    {
        "ID": 18,
        "NAME": "Отдел тайн",
        "SORT": 500,
        "UF_HEAD": 1,
        "PARENT": 1
    },
    function(result)
    {
        if(result.error())
            console.error(result.error().ex);
        else
            console.log(result.data());
    }
);
```

### PHP CRest

```php
require_once('crest.php');

$result = CRest::call(
    'department.update',
    [
        'ID' => '18',
        'NAME' => 'Отдел тайн',
        'SORT' => 500,
        'UF_HEAD' => 1,
        'PARENT' => 1,
    ]
);

echo '<PRE>';
print_r($result);
echo '</PRE>';
```

### Go

```go
// client и ctx уже созданы — см. раздел «SDK для Go»
res, err := client.Core().Call(ctx, "department.update", b24.Params{
	"ID":      18,
	"NAME":    "Отдел тайн",
	"SORT":    500,
	"UF_HEAD": 1,
	"PARENT":  1,
})
if err != nil {
	return fmt.Errorf("department.update: %w", err)
}

var ok bool
if err := json.Unmarshal(res.Result, &ok); err != nil {
	return fmt.Errorf("разбор ответа: %w", err)
}
fmt.Println("выполнено:", ok)
```

Оригинал в официальной документации: https://apidocs.bitrix24.ru/api-reference/departments/department-update.html
