humanresources.employee.search
Найти сотрудников
Описание
Метод относится к REST 3.0. Особенности вызова и формат ответа новой версии API описаны в обзоре REST 3.0.
Метод humanresources.employee.search ищет сотрудников по имени.
Параметры
name
string
обязательный
Строка поиска по имени сотрудника
nodeId
integer
необязательный
Идентификатор отдела или команды для ограничения поиска.
Идентификатор можно получить методом humanresources.node.list
select
array
необязательный
Список полей сотрудника, которые нужно вернуть.
Доступные поля:
userId— идентификатор пользователяname— имя сотрудникаworkPosition— должностьavatar— ссылка на аватарurl— ссылка на профильdepartments— отделы сотрудникаteams— команды сотрудника
Примеры запроса
curl -X POST \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"name":"Иван","select":["userId","name","workPosition","avatar","url","departments","teams"]}' \
https://**put_your_bitrix24_address**/rest/api/**put_your_user_id_here**/**put_your_webhook_here**/humanresources.employee.search
curl -X POST \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"name":"Иван","select":["userId","name","workPosition","avatar","url","departments","teams"],"auth":"**put_access_token_here**"}' \
https://**put_your_bitrix24_address**/rest/api/humanresources.employee.search
// 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 EmployeeSearchResult = {
items: {
userId: number
name: string
workPosition: string
avatar: string
url: string
departments: { id: number; name: string }[]
teams: { id: number; name: string }[]
}[]
}
try {
const response = await $b24.actions.v3.call.make<EmployeeSearchResult>({
method: 'humanresources.employee.search',
params: {
name: 'Ivan',
select: [
'userId',
'name',
'workPosition',
'avatar',
'url',
'departments',
'teams',
],
},
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(result.items)
}
} 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 searchEmployees() {
try {
// Initialize the SDK inside a Bitrix24 frame
const $b24 = await B24Js.initializeB24Frame()
const response = await $b24.actions.v3.call.make({
method: 'humanresources.employee.search',
params: {
name: 'Ivan',
select: [
'userId',
'name',
'workPosition',
'avatar',
'url',
'departments',
'teams',
],
},
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(result.items)
} catch (error) {
// Thrown on transport or SDK failures (AjaxError, SdkError, etc.)
console.error(error)
}
}
document.addEventListener('DOMContentLoaded', searchEmployees)
</script>
from b24pysdk.errors import BitrixAPIError, BitrixSDKException
select = [
"userId",
"name",
"workPosition",
"avatar",
"url",
"departments",
"teams",
]
try:
bitrix_response = client.humanresources.employee.search(
name='Иван',
select=select,
).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.employee.search',
[
'name' => 'Иван',
'select' => [
'userId',
'name',
'workPosition',
'avatar',
'url',
'departments',
'teams',
],
]
);
$result = $response
->getResponseData()
->getResult();
echo 'Success: ' . print_r($result, true);
} catch (Throwable $e) {
error_log($e->getMessage());
echo 'Error: ' . $e->getMessage();
}
BX24.callMethod(
'humanresources.employee.search',
{
name: 'Иван',
select: [
'userId',
'name',
'workPosition',
'avatar',
'url',
'departments',
'teams'
]
},
function(result){
console.info(result.data());
console.log(result);
}
);
require_once('crest.php');
$result = CRest::call(
'humanresources.employee.search',
[
'name' => 'Иван',
'select' => [
'userId',
'name',
'workPosition',
'avatar',
'url',
'departments',
'teams',
],
]
);
echo '<PRE>';
print_r($result);
echo '</PRE>';
// client и ctx уже созданы — см. раздел «SDK для Go»
res, err := client.Core().Call(ctx, "humanresources.employee.search", b24.Params{
"name": "Иван",
"select": []string{"userId", "name", "workPosition", "avatar", "url", "departments", "teams"},
})
if err != nil {
return fmt.Errorf("humanresources.employee.search: %w", err)
}
// Метод заворачивает ответ в объект с ключом "items".
raw, ok := b24.Unwrap(res.Result, "items")
if !ok {
return fmt.Errorf("в ответе нет ключа items")
}
var items []struct {
UserID b24.ID `json:"userId"`
Name string `json:"name"`
WorkPosition string `json:"workPosition"`
Avatar string `json:"avatar"`
URL string `json:"url"`
}
if err := json.Unmarshal(raw, &items); err != nil {
return fmt.Errorf("разбор ответа: %w", err)
}
for _, it := range items {
fmt.Println(it.UserID)
}
Ответ
HTTP-статус: 200
{
"result": {
"items": [
{
"userId": 7,
"name": "Иван Петров",
"workPosition": "Менеджер по продажам",
"avatar": "https://example.bitrix24.ru/upload/main/avatar.jpg",
"url": "/company/personal/user/7/",
"departments": [
{
"id": 15,
"name": "Отдел продаж"
}
],
"teams": []
}
]
},
"time": {
"start": 1780407400,
"finish": 1780407400.143201,
"duration": 0.14320111274719238,
"processing": 0.11092114448547363,
"date_start": "2026-06-02T16:36:40+03:00",
"date_finish": "2026-06-02T16:36:40+03:00",
"operating_reset_at": 1780408000,
"operating": 0
}
}
Возвращаемые данные
result
object
Объект с данными ответа
items
array
Массив найденных сотрудников. Состав полей элемента зависит от select
time
time
Информация о времени выполнения запроса
Обработка ошибок
HTTP-статус: 400
{
"error": {
"code": "BITRIX_REST_V3_EXCEPTION_VALIDATION_REQUESTVALIDATIONEXCEPTION",
"message": "Ошибка при валидации объекта запроса",
"validation": [
{
"message": "Parameter \"name\" is required.",
"field": "name"
}
]
}
}
| Код | Описание | Значение |
|---|---|---|
Поле |
Описание ошибки | Как исправить |
name |
Parameter "name" is required. |
Передайте строку поиска |

