Работа с подразделениями
В Диадоке есть возможность настраивать структуру организации с помощью подразделений. Подразделения позволяют организовать хранение документов и ограничить доступ сотрудников к документам других подразделений.
Примечание
Добавление, обновление и удаление подразделений доступно только администраторам ящика.
Создание подразделения
Чтобы создать новое подразделение, используйте метод CreateDepartment.
Пример HTTP-запроса метода CreateDepartment:
POST /admin/CreateDepartment?boxid={{boxId}} HTTP/1.1
Host: diadoc-api.kontur.ru
Authorization: Bearer {{access_token}}
Accept: application/json; charset=utf-8
Пример тела запроса метода CreateDepartment:
{
"Name": "Бухгалтерия",
"Abbreviation": "Б",
"Kpp": "456701001",
"Routing": {
"kpp": "true"
}
}
Пример тела ответа метода CreateDepartment:
{
"Id": "79b8d436-b650-43f6-b1bb-f1f9eac05c92",
"ParentDepartmentId": "00000000-0000-0000-0000-000000000000",
"Name": "Бухгалтерия",
"Abbreviation": "Б",
"Kpp": "456701001",
"Routing": {
"Kpp": true,
"Address": false
},
"CreationTimestamp": {
"Ticks": 638833410546481606
}
}
Получение информации о подразделениях
Информация об одном подразделении организации
Получить информацию о подразделении можно с помощью метода GetDepartment (V2).
Пример HTTP-запроса метода GetDepartment:
GET /V2/GetDepartment?boxid={{boxId}}&departmentid=b651ed54-04d8-4ca8-99b5-960fba733147 HTTP/1.1
Host: diadoc-api.kontur.ru
Authorization: Bearer {{access_token}}
Accept: application/json; charset=utf-8
Пример тела ответа метода GetDepartment:
{
"DepartmentId": "b651ed54-04d8-4ca8-99b5-960fba733147",
"ParentDepartmentId": "00000000-0000-0000-0000-000000000000",
"Name": "Подразделение 1",
"Abbreviation": "П1",
"Address": {
"RussianAddress": {
"Region": "50",
"City": "Дзержинский",
"Street": "Садовая",
"Building": "2",
"Block": "",
"Apartment": "",
"OtherInformation": ""
},
"AddressCode": ""
},
"IsDisabled": false
}
Информация обо всех подразделениях организации
Получить информацию обо всех подразделениях организации можно с помощью метода GetDepartments.
Пример HTTP-запроса метода GetDepartments:
GET /admin/GetDepartments?boxid={{boxId}} HTTP/1.1
Host: diadoc-api.kontur.ru
Authorization: Bearer {{access_token}}
Accept: application/json; charset=utf-8
Пример тела ответа метода GetDepartments:
{
"Departments": [
{
"Id": "00000000-0000-0000-0000-000000000000",
"ParentDepartmentId": "",
"Name": "Головное подразделение",
"Abbreviation": "ГП",
"Routing": {
"Kpp": false,
"Address": false
},
"CreationTimestamp": {
"Ticks": 0
}
},
{
"Id": "6d710055-9b5d-4bc0-ba2f-9e54adda034e",
"ParentDepartmentId": "00000000-0000-0000-0000-000000000000",
"Name": "Дочернее подразделение",
"Abbreviation": "ДП",
"Routing": {
"Kpp": false,
"Address": false
},
"CreationTimestamp": {
"Ticks": 638568885150838885
}
},
{
"Id": "b651ed54-04d8-4ca8-99b5-960fba733147",
"ParentDepartmentId": "00000000-0000-0000-0000-000000000000",
"Name": "Подразделение 1",
"Abbreviation": "П1",
"Address": {
"RussianAddress": {
"Region": "50",
"City": "Дзержинский",
"Street": "Садовая",
"Building": "2",
"Block": "",
"Apartment": "",
"OtherInformation": ""
},
"AddressCode": ""
},
"Routing": {
"Kpp": false,
"Address": false
},
"CreationTimestamp": {
"Ticks": 638569024178105899
}
},
{
"Id": "32cb2cd3-ed3a-403a-b220-7dfd59c757db",
"ParentDepartmentId": "00000000-0000-0000-0000-000000000000",
"Name": "Подразделение 2",
"Abbreviation": "П2",
"Routing": {
"Kpp": false,
"Address": false
},
"CreationTimestamp": {
"Ticks": 638569024257522740
}
},
{
"Id": "17969b71-a3a1-4484-a4f0-5091931afc3d",
"ParentDepartmentId": "00000000-0000-0000-0000-000000000000",
"Name": "Бухгалтерия",
"Abbreviation": "Б",
"Kpp": "456701001",
"Routing": {
"Kpp": true,
"Address": false
},
"CreationTimestamp": {
"Ticks": 638833410039546296
}
}
],
"TotalCount": 5
}
Изменение данных подразделения
Чтобы обновить данные подразделения, используйте метод UpdateDepartment. Метод позволяет изменить следующие свойства подразделения:
родительское подразделение,
название подразделения,
КПП подразделения,
адрес подразделения,
тип маршрутизации.
Пример HTTP-запроса метода UpdateDepartment:
POST /admin/UpdateDepartment?boxid={{boxId}}&departmentId=6d710055-9b5d-4bc0-ba2f-9e54adda034e HTTP/1.1
Host: diadoc-api.kontur.ru
Authorization: Bearer {{access_token}}
Content-Type: application/json; charset=utf-8
Пример тела запроса метода UpdateDepartment:
{
"ParentDepartment": {
"ParentDepartmentId": "17969b71-a3a1-4484-a4f0-5091931afc3d"
},
"DepartmentNaming": {
"Name": "Отдел кадров",
"Abbreviation": "ОК"
}
}
Пример тела ответа метода UpdateDepartment:
{
"Id": "6d710055-9b5d-4bc0-ba2f-9e54adda034e",
"ParentDepartmentId": "17969b71-a3a1-4484-a4f0-5091931afc3d",
"Name": "Отдел кадров",
"Abbreviation": "ОК",
"Routing": {
"Kpp": false,
"Address": false
},
"CreationTimestamp": {
"Ticks": 638568885150838885
}
}
Удаление подразделения
Чтобы удалить подразделение, используйте метод DeleteDepartment.
Пример HTTP-запроса метода DeleteDepartment:
POST /admin/DeleteDepartment?boxid={{boxId}}&departmentid=6d710055-9b5d-4bc0-ba2f-9e54adda034e HTTP/1.1
Host: diadoc-api.kontur.ru
Authorization: Bearer {{access_token}}
Перемещение документов между подразделениями
Инструкция по перемещению документов из одного подразделения в другое приведена в разделе Перемещение документов между подразделениями.