[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"docs-entities\u002Fusers\u002Ffields":3,"docs-tabs-entities\u002Fusers\u002Ffields":6},{"content":4,"lastmod":5},"\n## Поля сотрудника\n\n`GET \u002Fv1\u002Fusers\u002Ffields`\n\nВозвращает полный список полей сущности «сотрудник», включая пользовательские (`UF_*`) поля портала.\n\n## Примеры\n\n### curl — личный ключ\n\n```bash\ncurl \"https:\u002F\u002Fvibecode.bitrix24.tech\u002Fv1\u002Fusers\u002Ffields\" \\\n  -H \"X-Api-Key: YOUR_API_KEY\"\n```\n\n### curl — OAuth-приложение\n\n```bash\ncurl \"https:\u002F\u002Fvibecode.bitrix24.tech\u002Fv1\u002Fusers\u002Ffields\" \\\n  -H \"X-Api-Key: YOUR_APP_KEY\" \\\n  -H \"Authorization: Bearer USER_SESSION_TOKEN\"\n```\n\n### JavaScript — личный ключ\n\n```javascript\nconst res = await fetch('https:\u002F\u002Fvibecode.bitrix24.tech\u002Fv1\u002Fusers\u002Ffields', {\n  headers: {\n    'X-Api-Key': 'YOUR_API_KEY',\n  },\n})\n\nconst { success, data } = await res.json()\nconsole.log('Полей:', Object.keys(data.fields).length)\n```\n\n### JavaScript — OAuth-приложение\n\n```javascript\nconst res = await fetch('https:\u002F\u002Fvibecode.bitrix24.tech\u002Fv1\u002Fusers\u002Ffields', {\n  headers: {\n    'X-Api-Key': 'YOUR_APP_KEY',\n    'Authorization': 'Bearer USER_SESSION_TOKEN',\n  },\n})\n\nconst { success, data } = await res.json()\n```\n\n## Поля ответа\n\n| Поле | Битрикс24 | Тип | RO | Описание |\n|------|----------|-----|:--:|---------|\n| `id` | `ID` | number | да | Идентификатор сотрудника |\n| `name` | `NAME` | string | | Имя |\n| `lastName` | `LAST_NAME` | string | | Фамилия |\n| `secondName` | `SECOND_NAME` | string | | Отчество |\n| `email` | `EMAIL` | string | | Email — обязательное при создании, должно быть уникальным |\n| `active` | `ACTIVE` | boolean | | Признак активности (`true` — работает, `false` — деактивирован) |\n| `workPosition` | `WORK_POSITION` | string | | Должность |\n| `workPhone` | `WORK_PHONE` | string | | Рабочий телефон |\n| `personalPhone` | `PERSONAL_PHONE` | string | | Личный телефон |\n| `personalMobile` | `PERSONAL_MOBILE` | string | | Мобильный телефон |\n| `personalBirthday` | `PERSONAL_BIRTHDAY` | string | | Дата рождения (формат ISO 8601) |\n| `personalGender` | `PERSONAL_GENDER` | string | | Пол: `M` — мужской, `F` — женский |\n| `personalCity` | `PERSONAL_CITY` | string | | Город |\n| `personalPhoto` | `PERSONAL_PHOTO` | string | | URL фотографии |\n| `departmentId` | `UF_DEPARTMENT` | number[] | | Массив ID отделов. Список: `GET \u002Fv1\u002Fdepartments` |\n| `xmlId` | `XML_ID` | string | | Внешний идентификатор для интеграций |\n| `isAdmin` | `IS_ADMIN` | boolean | да | Признак администратора портала. Наполняется только в `GET \u002Fv1\u002Fusers\u002Fme` (`true`\u002F`false`\u002F`null`); в `GET \u002Fv1\u002Fusers\u002F:id` и списке недоступно |\n| `isOnline` | `IS_ONLINE` | boolean | да | Сотрудник сейчас в сети |\n| `dateRegister` | `DATE_REGISTER` | datetime | да | Дата регистрации в портале |\n| `lastLogin` | `LAST_LOGIN` | datetime | да | Дата последнего входа |\n| `lastActivityDate` | `LAST_ACTIVITY_DATE` | datetime | да | Дата последней активности |\n| `timeZone` | `TIME_ZONE` | string | | Часовой пояс сотрудника. Пример: `\"Europe\u002FMoscow\"` |\n| `title` | `TITLE` | string | | Обращение \u002F звание |\n| `personalWww` | `PERSONAL_WWW` | string | | Личный сайт |\n| `personalProfession` | `PERSONAL_PROFESSION` | string | | Профессия |\n| `personalIcq` | `PERSONAL_ICQ` | string | | ICQ (устаревшее поле Битрикс24) |\n| `personalFax` | `PERSONAL_FAX` | string | | Факс |\n| `personalPager` | `PERSONAL_PAGER` | string | | Пейджер |\n| `personalStreet` | `PERSONAL_STREET` | string | | Улица |\n| `userType` | `USER_TYPE` | string | да | Тип учётной записи: `\"employee\"` — штатный сотрудник, `\"extranet\"` — внешний пользователь |\n| `timestampX` | `TIMESTAMP_X` | datetime | да | Метка последнего изменения записи в Битрикс24. Для части пользователей возвращается пустым объектом `{}` |\n\n**Пользовательские поля** (`UF_*`) также возвращаются в ответах и принимаются при создании или обновлении. У пользовательского поля типа «список» (`enumeration`) в ответе есть массив `items` с возможными значениями (`ID`, `VALUE`, `DEF`, `XML_ID`) — при условии, что у ключа выдан скоуп `user.userfield`; без него поле возвращается с подписью, но без `items`.\n\n## Пример ответа\n\n```json\n{\n  \"success\": true,\n  \"data\": {\n    \"fields\": {\n      \"id\": { \"type\": \"number\", \"readonly\": true },\n      \"name\": { \"type\": \"string\", \"readonly\": false },\n      \"lastName\": { \"type\": \"string\", \"readonly\": false },\n      \"email\": { \"type\": \"string\", \"readonly\": false },\n      \"active\": { \"type\": \"boolean\", \"readonly\": false },\n      \"workPosition\": { \"type\": \"string\", \"readonly\": false },\n      \"departmentId\": { \"type\": \"array\", \"readonly\": false },\n      \"personalPhone\": { \"type\": \"string\", \"readonly\": false },\n      \"isAdmin\": { \"type\": \"boolean\", \"readonly\": true },\n      \"lastLogin\": { \"type\": \"datetime\", \"readonly\": true },\n      \"timeZone\": { \"type\": \"string\", \"readonly\": false },\n      \"userType\": { \"type\": \"string\", \"readonly\": true },\n      \"UF_DEPARTMENT\": { \"type\": \"string\", \"readonly\": false, \"label\": \"UF_DEPARTMENT\" },\n      \"UF_PHONE_INNER\": { \"type\": \"string\", \"readonly\": false, \"label\": \"UF_PHONE_INNER\" },\n      \"UF_USR_STATUS\": {\n        \"type\": \"enumeration\",\n        \"readonly\": false,\n        \"label\": \"Статус\",\n        \"items\": [\n          { \"ID\": \"1\", \"VALUE\": \"Новый\", \"DEF\": \"N\", \"XML_ID\": \"x1\" },\n          { \"ID\": \"2\", \"VALUE\": \"В работе\", \"DEF\": \"Y\", \"XML_ID\": \"x2\" }\n        ]\n      }\n    },\n    \"batch\": [\"create\", \"update\", \"delete\"]\n  }\n}\n```\n\nПоказаны несколько полей из общего списка. Реальный ответ содержит 30+ полей схемы в `camelCase`, не-mapped поля Битрикс24 в `UPPER_SNAKE_CASE` (`WORK_*`, часть `PERSONAL_*`) и UF-поля конкретного портала.\n\n## Пример ответа при ошибке\n\n403 — нет скоупа:\n\n```json\n{\n  \"success\": false,\n  \"error\": {\n    \"code\": \"SCOPE_DENIED\",\n    \"message\": \"This endpoint requires 'user' scope\"\n  }\n}\n```\n\n## Ошибки\n\n| HTTP | Код | Описание |\n|------|-----|---------|\n| 401 | `TOKEN_MISSING` | API-ключ не имеет настроенных токенов |\n| 403 | `SCOPE_DENIED` | API-ключ не имеет скоупа `user` |\n\nПолный список общих ошибок API — [Ошибки](\u002Fdocs\u002Ferrors).\n\n## Смотрите также\n\n- [Создать сотрудника](\u002Fdocs\u002Fentities\u002Fusers\u002Fcreate) — какие поля можно передать\n- [Обновить сотрудника](\u002Fdocs\u002Fentities\u002Fusers\u002Fupdate) — какие поля можно изменить\n- [Список сотрудников](\u002Fdocs\u002Fentities\u002Fusers\u002Flist) — фильтрация и поиск\n- [Пользовательские поля](\u002Fdocs\u002Fuserfields) — управление UF-полями\n- [Лимиты и оптимизация](\u002Fdocs\u002Foptimization)\n","2026-07-09",{}]