API: Каталог доменных пользователей
Базовый URL: /api/v1/directory
Доступ: только portal_admin. LDAP должен быть настроен в админке (Службы → Синхронизация AD → Настройки). См. admin.md.
GET /directory/search
Заголовок раздела «GET /directory/search»Поиск пользователей в Active Directory / LDAP для добавления в группы portal до первого входа пользователя.
Query:
| Параметр | Описание |
|---|---|
| q | Строка поиска (мин. 2 символа) |
Ответ 200:
{ "success": true, "data": [ { "externalId": "S-1-5-21-...", "login": "ivanov", "displayName": "Ivan Ivanov", "email": "ivanov@company.local" } ]}Результаты кэшируются на 2 минуты (ldap:search:*).
Ошибки:
| Код | Причина |
|---|---|
| 400 | LDAP не настроен или запрос короче 2 символов |
| 403 | Не администратор |
Пример curl:
curl "http://localhost/api/v1/directory/search?q=ivan" \ -H "Cookie: portal_token=..."Связанные эндпоинты
Заголовок раздела «Связанные эндпоинты»| Метод | Путь | Описание |
|---|---|---|
| GET | /admin/settings/ldap | Параметры подключения |
| PUT | /admin/settings/ldap | Сохранить подключение |
| GET | /admin/settings/ldap-status | Проверка подключения |
| GET | /admin/settings/ldap-sync | Sync: фильтры, флаги групп, cronDeactivateMissing, catalog / syncUserAttributes / customUserAttributes |
| PUT | /admin/settings/ldap-sync | Сохранить настройки синхронизации |
| POST | /services/ad-sync/run | Запуск; без тела — деактивация из cronDeactivateMissing; опционально { "deactivateMissing": bool } |
UI: Службы → Синхронизация AD → Настройки (/services/ad-sync). Каталог служб: ad-sync. Подробные поля — API: admin → LDAP.