humanresources.node.member.move
Перенести участников в отдел
Описание
Метод относится к REST 3.0. Особенности вызова и формат ответа новой версии API описаны в обзоре REST 3.0.
Метод humanresources.node.member.move переносит пользователей в указанный отдел или команду.
Параметры
nodeId
integer
обязательный
Идентификатор целевого отдела или команды.
Идентификатор можно получить методом humanresources.node.list
userIds
array
обязательный
Массив идентификаторов пользователей, которых нужно перенести.
Идентификаторы пользователей можно получить методом user.get
role
string
необязательный
Роль, которую нужно назначить перенесенным участникам.
Возможные значения для отдела:
MEMBER_HEAD— руководитель отделаMEMBER_DEPUTY_HEAD— заместитель руководителя отделаMEMBER_EMPLOYEE— сотрудник отдела
Возможные значения для команды:
MEMBER_TEAM_HEAD— руководитель командыMEMBER_TEAM_DEPUTY_HEAD— заместитель руководителя командыMEMBER_TEAM_EMPLOYEE— участник команды
По умолчанию: MEMBER_EMPLOYEE для отдела и MEMBER_TEAM_EMPLOYEE для команды
Примеры запроса
curl -X POST \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"nodeId":28,"userIds":[12,18],"role":"MEMBER_EMPLOYEE"}' \
https://**put_your_bitrix24_address**/rest/api/**put_your_user_id_here**/**put_your_webhook_here**/humanresources.node.member.move
curl -X POST \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"nodeId":28,"userIds":[12,18],"role":"MEMBER_EMPLOYEE","auth":"**put_access_token_here**"}' \
https://**put_your_bitrix24_address**/rest/api/humanresources.node.member.move
// This snippet is an ES module: top-level await requires type="module" or a bundler.
// $b24 is an already-initialized SDK instance (see the SDK "Get started" guide).
import { Text } from '@bitrix24/b24jssdk'
import type { B24Frame } from '@bitrix24/b24jssdk'
declare const $b24: B24Frame
// Shape of the payload returned in result (match the "response handling" section of the page)
type NodeMemberMoveResult = {
success: boolean
}
try {
const response = await $b24.actions.v3.call.make<NodeMemberMoveResult>({
method: 'humanresources.node.member.move',
params: {
nodeId: 28,
userIds: [12, 18],
role: 'MEMBER_EMPLOYEE',
},
requestId: Text.getUuidRfc4122()
})
// The payload is available only on a successful response
if (!response.isSuccess) {
console.error(response.getErrorMessages().join('; '))
} else {
const result = response.getData()!.result
console.info('Move result:', result.success)
}
} catch (error) {
// Thrown on transport or SDK failures (AjaxError, SdkError, etc.)
console.error(error)
}
<!-- Load the SDK (UMD build); it is exposed as the global B24Js -->
<script src="https://unpkg.com/@bitrix24/b24jssdk@1/dist/umd/index.min.js"></script>
<script>
async function moveNodeMembers() {
try {
// Initialize the SDK inside a Bitrix24 frame
const $b24 = await B24Js.initializeB24Frame()
const response = await $b24.actions.v3.call.make({
method: 'humanresources.node.member.move',
params: {
nodeId: 28,
userIds: [12, 18],
role: 'MEMBER_EMPLOYEE',
},
requestId: B24Js.Text.getUuidRfc4122()
})
// The payload is available only on a successful response
if (!response.isSuccess) {
console.error(response.getErrorMessages().join('; '))
return
}
const result = response.getData().result
console.info('Move result:', result.success)
} catch (error) {
// Thrown on transport or SDK failures (AjaxError, SdkError, etc.)
console.error(error)
}
}
document.addEventListener('DOMContentLoaded', moveNodeMembers)
</script>
from b24pysdk.errors import BitrixAPIError, BitrixSDKException
try:
bitrix_response = client.humanresources.node.member.move(
node_id=28,
user_ids=[
12,
18,
],
role='MEMBER_EMPLOYEE',
).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}")
try {
$response = $b24Service
->core
->call(
'humanresources.node.member.move',
[
'nodeId' => 28,
'userIds' => [12, 18],
'role' => 'MEMBER_EMPLOYEE',
]
);
$result = $response
->getResponseData()
->getResult();
echo 'Success: ' . print_r($result, true);
} catch (Throwable $e) {
error_log($e->getMessage());
echo 'Error: ' . $e->getMessage();
}
BX24.callMethod(
'humanresources.node.member.move',
{
nodeId: 28,
userIds: [12, 18],
role: 'MEMBER_EMPLOYEE'
},
function(result){
console.info(result.data());
console.log(result);
}
);
require_once('crest.php');
$result = CRest::call(
'humanresources.node.member.move',
[
'nodeId' => 28,
'userIds' => [12, 18],
'role' => 'MEMBER_EMPLOYEE',
]
);
echo '<PRE>';
print_r($result);
echo '</PRE>';
// client и ctx уже созданы — см. раздел «SDK для Go»
res, err := client.Core().Call(ctx, "humanresources.node.member.move", b24.Params{
"nodeId": 28,
"userIds": []int{12, 18},
"role": "MEMBER_EMPLOYEE",
})
if err != nil {
return fmt.Errorf("humanresources.node.member.move: %w", err)
}
var item struct {
Success bool `json:"success"`
}
if err := json.Unmarshal(res.Result, &item); err != nil {
return fmt.Errorf("разбор ответа: %w", err)
}
fmt.Println(item.Success)
Ответ
HTTP-статус: 200
{
"result": {
"success": true
},
"time": {
"start": 1780406100,
"finish": 1780406100.215497,
"duration": 0.21549701690673828,
"processing": 0.1711289882659912,
"date_start": "2026-06-02T16:15:00+03:00",
"date_finish": "2026-06-02T16:15:00+03:00",
"operating_reset_at": 1780406700,
"operating": 0
}
}
Возвращаемые данные
result
object
Объект с результатом операции
success
boolean
Значение true, если пользователи успешно перенесены
time
time
Информация о времени выполнения запроса
Обработка ошибок
HTTP-статус: 400
{
"error": {
"code": "BITRIX_REST_V3_EXCEPTION_ENTITYNOTFOUNDEXCEPTION",
"message": "Запись с ID = `28` не найдена"
}
}
| Код | Описание | Значение |
|---|---|---|
Поле |
Описание ошибки | Как исправить |
nodeId |
Parameter "nodeId" is required. |
Передайте идентификатор отдела или команды |
userIds |
Parameter "userIds" is required and must be a non-empty array. |
Передайте непустой массив идентификаторов пользователей |
role |
Invalid role #ROLE#. Allowed: #ROLE_LIST#. |
Передайте роль, которая поддерживается для выбранного типа отдела или команды |

