Заголовки запроса
string
required
API токен сервисного пользователя в формате Bearer. Получите токен в панели администратора школы. Формат:
Bearer YOUR_TOKEN.string
required
Уникальный идентификатор продавца в системе. Используется для разграничения доступа между разными продавцами.
string
required
Уникальный идентификатор школы в системе. Определяет контекст выполнения операции.
Департаменты — это иерархические подразделения школы. Каждый департамент может иметь родительский департамент
(
parentId), за счёт чего строится дерево организационной структуры. Департаменты используются модулем
персонала (staff) для распределения сотрудников по подразделениям и назначения руководителей.Поле
extId — внешний идентификатор департамента из системы клиента (CRM, 1C и т.п.). Он уникален в рамках
школы среди неудалённых записей, имеет длину от 1 до 50 символов и не может содержать / и пробельные символы
(значение должно быть URL-safe — оно используется в путях ext/{extId}). По extId доступны отдельные
эндпоинты обновления и удаления.Требования к правам доступа
Чтение (
tree, list) требует права StaffView. Создание, обновление и удаление требуют права
StaffManage. Во всех случаях необходима аутентификация по токену и принадлежность школы к сегменту
Corporate.Дерево департаментов
StaffView.
Эндпоинт возвращает плоский массив всех департаментов школы. Иерархия задаётся полем
parentId каждого
департамента (null — корневой департамент). Само дерево строится на стороне клиента группировкой элементов по
parentId.Ответ
array
required
Массив департаментов школы. Поле
parentId указывает на родительский департамент (null — корневой).Список департаментов
StaffView.
В отличие от
tree, эндпоинт возвращает пагинированный список департаментов. Параметры пагинации и фильтрации
передаются как query-параметры.Параметры
integer
Количество пропускаемых записей (offset-пагинация). Минимум
0.integer
Количество возвращаемых записей на странице. От
1 до 1000.integer
Номер страницы (альтернатива
skip). Минимум 1.array
Массив ID родительских департаментов для фильтрации (до 250 значений). Возвращает только дочерние департаменты
указанных родителей.
array
Массив внешних идентификаторов (
extId) для фильтрации (до 250 значений, каждый — до 50 символов).string
Поиск по названию департамента. Максимум 50 символов.
enum
Направление сортировки по дате создания. Возможные значения:
ASC, DESC.Ответ
object
required
Пагинированный объект:
items (массив департаментов), page, count, pages, isFirst, isLast, next,
prev.Создание департамента
StaffManage.
Параметры запроса
string
required
Название департамента. От 1 до 100 символов. Пробелы в начале и конце обрезаются автоматически.
string
Внешний идентификатор департамента из системы клиента (CRM/1C). От 1 до 50 символов, не может содержать
/ и
пробельные символы (URL-safe — используется в путях ext/{extId}). Должен быть уникален в рамках школы среди
неудалённых департаментов, иначе будет возвращена ошибка StaffDepartmentExtIdIsNotUniq.integer
ID родительского департамента. Родитель указывается через
parentId или parentExtId — передаётся ровно
одно поле из пары. Если указан — должен принадлежать той же школе, иначе будет возвращена ошибка
StaffDepartmentNotFound. Если родитель не указан ни одним из полей — департамент создаётся корневым.string
Внешний идентификатор (
extId) родительского департамента — альтернатива parentId (передаётся ровно одно
поле из пары). От 1 до 50 символов. Родитель должен принадлежать той же школе, иначе будет возвращена ошибка
StaffDepartmentNotFound.integer
Трудоустройство, назначаемое основным руководителем создаваемого департамента. Необязательно. Указывается
через
primaryManagerEmploymentId или primaryManagerEmploymentExtId.string
Внешний идентификатор (
extId) трудоустройства-руководителя — альтернатива primaryManagerEmploymentId
(передаётся не более одного поля из пары). От 1 до 50 символов.Обновление департамента
StaffManage.
Тело запроса совпадает с созданием (все поля необязательны):
name, extId, родитель
(parentId/parentExtId) и основной руководитель (primaryManagerEmploymentId/primaryManagerEmploymentExtId).
Передавайте только те поля, которые нужно изменить.Параметры
integer
required
ID обновляемого департамента в рамках школы.
string
Новое название департамента. От 1 до 100 символов. Пробелы в начале и конце обрезаются автоматически.
string
Новый внешний идентификатор департамента (можно переустановить). От 1 до 50 символов, не может содержать
/
и пробельные символы (URL-safe). Должен быть уникален в рамках школы среди неудалённых департаментов, иначе
будет возвращена ошибка StaffDepartmentExtIdIsNotUniq.integer
Новый родительский департамент (переподчинение). Указывается через
parentId или parentExtId.
Передайте null, чтобы сделать департамент корневым. Новый родитель должен принадлежать той же школе
(StaffDepartmentNotFound) и не может быть самим департаментом или его потомком, иначе будет возвращена
ошибка StaffDepartmentParentCreatesCycle.string
Внешний идентификатор (
extId) нового родителя — альтернатива parentId (передаётся не более одного поля из
пары). От 1 до 50 символов.integer
Трудоустройство, назначаемое основным руководителем департамента. Указывается через
primaryManagerEmploymentId или primaryManagerEmploymentExtId. Передайте null, чтобы снять
назначение.string
Внешний идентификатор (
extId) трудоустройства-руководителя — альтернатива primaryManagerEmploymentId
(передаётся не более одного поля из пары). От 1 до 50 символов.Обновление департамента по extId
StaffManage.
Аналог обычного обновления, но департамент ищется по внешнему идентификатору (
extId) в рамках школы.
Тело запроса — то же, что и у PUT /saas/v2/staff/department/{departmentId}/update. Значение extId в пути
должно быть URL-encoded. Если департамент с таким extId не найден в рамках школы — будет возвращена ошибка
StaffDepartmentNotFound.Параметры
string
required
Внешний идентификатор департамента в рамках школы. Должен быть URL-encoded.
Удаление департамента
StaffManage.
Параметры
integer
required
ID удаляемого департамента в рамках школы.
Ответ
integer
required
Количество затронутых (удалённых) записей. При успешном удалении —
1.Удаление департамента по extId
StaffManage.
Аналог обычного удаления, но департамент ищется по внешнему идентификатору (
extId) в рамках школы. Действуют
те же правила: удалить можно только «листовой» департамент без дочерних подразделений и активных сотрудников
(иначе — StaffDepartmentHasChildren / StaffDepartmentHasActiveEmployments). Значение extId в пути должно
быть URL-encoded. Если департамент с таким extId не найден в рамках школы — будет возвращена ошибка
StaffDepartmentNotFound.Параметры
string
required
Внешний идентификатор департамента в рамках школы. Должен быть URL-encoded.
Ответ
integer
required
Количество затронутых (удалённых) записей. При успешном удалении —
1.Обновлено: 2026-07-22 12:19 UTC