Интеграция с внешними системами
- Документы
- Создание документа
- Запрос информации о документах
- Запрос архива документа
- Запрос информации о документах по фильтрам
- Запрос полной информации по документу
- Подписание документа
- Отклонение документа
- Удаление документа
- Пользователи
- Добавление пользователей
- Обновление/изменение пользователей
- Удаление пользователей
- Запрос информации о пользователях по фильтрам
- Согласование кандидата
- Отклонение кандидата
- Проверка статуса обработки запроса на добавление/обновление/удаление/изменение пользователей
- График отпусков
- Создание сбора информации для Графика отпусков
- Запрос информации о Графиках отпусков по фильтрам (Запрос статуса графика отпусков)
- Запрос информации о Графике отпусков
- Изменение данных по числу дней отпуска
Примечание
Для интеграции с внешними системами, создайте ключ API в Коман .
Актуальное описание API с указанием всех полей доступно по ссылке: https://coman.app/api-docs
Документы
Создание документа
Метод используется для создания документа в Коман. Если пользователь, переданный в массиве подписантов, существует, то его данные будут обновлены. Если пользователь не существует, то будет создан. Чтобы пользователь был создан или обновлен, необходимо передавать данные о пользователе аналогично методу "Изменение пользователей".
Описание метода
Метод |
URL |
Headers |
POST |
`Authorization: Bearer `Content-Type: multipart/form-data; boundary= ` |
Тело запроса
Поле |
Тип |
Обяз. |
Описание |
key_1 |
Файл |
Да |
Файл, прикрепляемый к документу |
key_n |
Файл |
Нет |
Файл, прикрепляемый к документу |
body |
Файл |
Да |
Тело запроса в формате JSON. Описание полей см. в разделе Параметры запроса. |
Параметры запроса (в файле, который указан в body)
|
Поле |
Тип |
Обяз. |
Комментарий |
||||
fileNames |
Массив |
Да |
Файлы, прикреплённые к документу. |
||||
В массив передаётся список значений key_1 … key_n из тела запроса. Значения key должны быть уникальными в разрезе запроса (т.е. один key нельзя использовать в нескольких fileNames). |
|||||||
name |
Текст(500) |
Нет |
Имя документа. |
||||
Если значение не передано, будет записано первое значение из массива fileNames. |
|||||||
externalSeq |
Текст(500) |
Нет |
Внешний номер последовательности. |
||||
Если значение передано, то в ответе вернётся аналогичный тег со значением. |
|||||||
externalDocNum |
Текст(500) |
Нет |
Внешний номер документа. |
||||
externalDocDate |
Дата |
Нет |
Внешняя дата документа. |
||||
inn |
Текст(20) |
Да |
ИНН организации. |
||||
kpp |
Текст(20) |
Нет |
КПП организации. |
||||
entityExtCode |
Текст(40) |
Нет |
Внешний код организации. |
||||
entityFullName |
Текст(255) |
Нет |
Наименование организации. |
||||
documentType |
Текст(10) |
Нет |
|||||
vacationScheduleUuid |
Текст(36) |
Нет |
UUID Графика отпусков в Коман. Указывается, для связки отправляемого документа со сбором Графика отпусков Коман. |
||||
stages |
Массив |
Усл.** |
Массив этапов подписания. |
||||
name |
Текст(500) |
Нет |
Имя этапа. |
||||
Если значение не передано, имя этапа будет пустым. |
|||||||
daysToSign |
Текст (36) |
Нет |
Срок подписания. Количество дней до окончания срока подписания. |
||||
rejectForbidden |
Логический тип |
Нет |
Признак "Только ознакомиться". |
||||
Если значение не передано, будет использован параметр "По умолчанию этап создается с признаком "Только ознакомление". |
|||||||
facsimileDisabled |
Логический тип |
Нет |
Признак "Факсимиле не требуется". |
||||
Если значение не передано, будет использован параметр "По умолчанию этап создается с признаком "Факсимиле не требуется" |
|||||||
signOrder |
Текст (36) |
Нет |
Порядковый номер этапа. |
||||
Если значение не передано, будет записан порядок этапов такой, как пришел во входящем запросе. |
|||||||
signers |
Массив |
Да |
Массив с данными о подписантах в этапе |
||||
phone |
Текст(12) |
Усл.* |
Телефон пользователя. |
||||
Формат: +73332221100 |
|||||||
firstName |
Текст(255) |
Да |
Имя пользователя. |
||||
middleName |
Текст(255) |
Нет |
Отчество пользователя. |
||||
lastName |
Текст(255) |
Да |
Фамилия пользователя. |
||||
Текст(255) |
Усл.* |
Email пользователя. |
|||||
snils |
Текст(11) |
Да |
СНИЛС пользователя. |
||||
passportType |
Текст(1) |
Нет |
Тип документа: 1 – паспорт РФ, 2 – иное. |
||||
Если не передан, то по умолчанию 1 пользователя. |
|||||||
passportBatch |
Текст(4) |
Нет |
Серия паспорта пользователя. |
||||
passportNumber |
Текст(9) |
Нет |
Номер паспорта пользователя. |
||||
passportIssuingCenter |
Текст(50) |
Нет |
Кем выдан паспорт пользователя. |
||||
passportIssueDate |
Дата |
Нет |
Дата выдачи паспорта пользователя. |
||||
Формат даты: YYYY-MM-DD |
|||||||
passportInfo |
Текст(500) |
Нет |
Информация о документе. Передается, если тип документа - иное (passportType = 2) |
||||
registrationAddress |
Текст(500) |
Нет |
Адрес регистрации |
||||
qualified |
Логический тип |
Нет |
Подпись УКЭП. |
||||
Значение по умолчанию false. |
|||||||
targetSigner |
Логический тип |
Да |
Сотрудник документа. true - сотрудник документа (документ в отношении этого пользователя) false - просто подписант |
||||
entities |
Массив |
Да |
Массив организаций. |
||||
inn |
Текст(20) |
Да |
ИНН организации. |
||||
kpp |
Текст(20) |
Нет |
КПП организации. |
||||
gphContract |
Логический тип |
Нет |
Устроен по договору ГПХ Значение по умолчанию false. |
||||
extCode |
Текст(40) |
Нет |
Внешний код организации. |
||||
maxVacationDays |
Число |
Нет |
Количество доступных дней отпуска в организации (Целое число) |
||||
managerSnils |
Текст(255) |
Нет |
СНИЛС руководителя пользователя |
||||
positions |
Массив |
Нет |
Массив должностей в организации |
||||
departmentName |
Текст(255) |
Нет |
Название отдела (подразделения) |
||||
positionName |
Текст(255) |
Нет |
Должность сотрудника |
||||
personnelNumber |
Текст(255) |
Нет |
Табельный номер сотрудника |
||||
*Обязательно передавать одно из полей. Не допускается одновременная передача двух полей.
**Обязательно передавать одно из полей. Не допускается одновременная передача двух полей.
Пример запроса
Тело запроса (body) с массивом **signers**
[
{
"externalSeq": "1",
"fileNames": [
"1",
"2"
],
"externalDocNum": "Приказ о приёме на работу Иванов АВ",
"externalDocDate": "21.05.2021",
"documentType": "02.001",
"inn": "9729003736",
"kpp": "773401001",
"entityExtCode": "ООО Калитеро",
"entityFullName": "Общество с ограниченной ответственностью Калитеро",
"signers": [
{
"phone": "+79160733304",
"firstName": "Алексей",
"middleName": "Васильевич",
"lastName": "Иванов",
"email": "av.ivanov@protonmail.com",
"snils": "11144444651",
"passportBatch": "1612",
"passportNumber": "107404",
"passportIssuingCenter": "130007",
"passportIssueDate": "13.01.2005"
},
{
"phone": "+79252947870",
"firstName": "Петр",
"middleName": "Васильевич",
"lastName": "Иванов",
"email": "pv.ivanov@protonmail.com",
"snils": "21144444651",
"passportBatch": "2612",
"passportNumber": "307404",
"passportIssuingCenter": "330007",
"passportIssueDate": "23.01.2005",
"qualified": true
},
{
"phone": "+79160733304",
"firstName": "Дмитрий",
"middleName": "Васильевич",
"lastName": "Иванов",
"email": "dv.ivanov@protonmail.com",
"snils": "31144444651",
"passportBatch": "3612",
"passportNumber": "307404",
"passportIssuingCenter": "330007",
"passportIssueDate": "2005-02-12"
}
]
},
{
"fileNames": [
"3"
],
"inn": "1729003736",
"signers": [
{
"phone": "+78160733304"
},
{
"snils": "31144444651"
}
]
}
]
Тело запроса (body) с массивом **stages**
[
{
"fileNames":[
"key_1"
],
"inn":"9729003736",
"kpp":"773401001",
"documentType":"02.001",
"stages":[
{
"facsimileDisabled":true,
"name":"Этап 1",
"rejectForbidden":true,
"signOrder":1,
"signers":[
{
"phone":"+79160733304",
"firstName":"Дмитрий",
"middleName":"Васильевич",
"lastName":"Иванов",
"email":"dv.ivanov@protonmail.com",
"snils":"31144444651",
"passportBatch":"3612",
"passportNumber":"307404",
"passportIssuingCenter":"330007",
"passportIssueDate":"2005-02-12",
"entities":[
{
"inn":"7707083893",
"kpp":"773601001",
"positions":[
{
"positionName":"Главный бухгалтер"
}
]
},
{
"facsimileDisabled":false,
"name":"Этап 2",
"rejectForbidden":false,
"signOrder":2,
"signers":[
{
"phone":"+79160733304",
"firstName":"Алексей",
"middleName":"Васильевич",
"lastName":"Иванов",
"email":"av.ivanov@protonmail.com",
"snils":"11144444651",
"passportBatch":"1612",
"passportNumber":"107404",
"passportIssuingCenter":"130007",
"passportIssueDate":"13.01.2005",
"registrationAddress":"400131, Волгоградская обл, Волгоград г, Советская ул, дом № 3, квартира 30",
"entities":[
{
"inn":"7707083893",
"kpp":"773601001",
"positions":[
{
"positionName":"Главный бухгалтер"
}
]
}
]
}
]
}
]
}
]
}
]
}
]
Формат ответа
Ответ в случае успешной обработки запроса
{
"code": "OK",
"responseList": [
{
"code": "OK",
"id": 131,
"requestUuid": "79edd9e1-21ba-4d5c-a907-01e6a955400a",
"success": true,
"uuid": "69701124-d06c-4505-95d0-b41eb01bbba3",
"newObject": {
"id": 131,
"datcre": "2023-01-26T18:46:15.519+03:00",
"usercre": "/api/doc/create--79edd9e1-21ba-4d5c-a907-01e6a9554",
"inEnvelopeId": 131,
"clientId": 2,
"clientTokenId": 103,
"uuid": "69701124-d06c-4505-95d0-b41eb01bbba3",
"importUuid": "79edd9e1-21ba-4d5c-a907-01e6a955400a",
"status": 0,
"name": "Приказ_введении положения об ЭДО.docx",
"inn": "9729003736",
"kpp": "773401001",
"autoSend": false,
"fileNames": [
"key_1"
],
"signers": [],
"stages": [
{
"name": "Этап 1",
"signOrder": 1,
"rejectForbidden": true,
"facsimileDisabled": true,
"signers": [
{
"id": 182,
"datcre": "2023-01-26T18:46:15.805+03:00",
"usercre": "/api/doc/create--79edd9e1-21ba-4d5c-a907-01e6a9554",
"inEnvelopeSignerId": 182,
"inEnvelopeStageId": 59,
"inEnvelopeId": 131,
"phone": "+79998406909",
"firstName": "Михаил",
"middleName": "Дмитриевич",
"lastName": "Иванов",
"snils": "91753552929",
"qualified": false,
"parentId": 131,
"headerId": 131,
"new": true
}
],
"new": false
},
{
"name": "Этап 2",
"signOrder": 2,
"rejectForbidden": false,
"facsimileDisabled": false,
"signers": [
{
"id": 183,
"datcre": "2023-01-26T18:46:16.055+03:00",
"usercre": "/api/doc/create--79edd9e1-21ba-4d5c-a907-01e6a9554",
"inEnvelopeSignerId": 183,
"inEnvelopeStageId": 60,
"inEnvelopeId": 131,
"snils": "25360189969",
"qualified": true,
"parentId": 131,
"headerId": 131,
"new": true
}
],
"new": false
}
],
"importMaster": false,
"completed": false,
"inProcess": true,
"new": true
}
},
{
"code": "OK",
"id": 130,
"requestUuid": "670892d9-716d-4c7e-a7a9-0e8296ca77d9",
"success": true,
"uuid": "8c5a2e74-ee15-409a-8143-4733d520c9f0",
"newObject": {
"id": 130,
"datcre": "2023-01-26T18:45:12.203+03:00",
"usercre": "/api/doc/create--670892d9-716d-4c7e-a7a9-0e8296ca7",
"inEnvelopeId": 130,
"clientId": 2,
"clientTokenId": 103,
"uuid": "8c5a2e74-ee15-409a-8143-4733d520c9f0",
"importUuid": "670892d9-716d-4c7e-a7a9-0e8296ca77d9",
"status": 0,
"name": "Уведомление о переходе на ЭДО.docx",
"externalDocNum": "Приказ о приёме на работу Иванов АВ",
"externalDocDate": "19.01.2023",
"inn": "9729003736",
"kpp": "773401001",
"entityExtCode": "ООО Калитеро",
"autoSend": false,
"fileNames": [
"key_1"
],
"signers": [
{
"id": 181,
"datcre": "2023-01-26T18:45:12.439+03:00",
"usercre": "/api/doc/create--670892d9-716d-4c7e-a7a9-0e8296ca7",
"inEnvelopeSignerId": 181,
"inEnvelopeId": 130,
"phone": "+79998406909",
"firstName": "Михаил",
"middleName": "Дмитриевич",
"lastName": "Иванов",
"snils": "91753552929",
"qualified": false,
"parentId": 130,
"headerId": 130,
"new": true
}
],
"stages": [],
"extCode": "ООО Калитеро",
"importMaster": false,
"completed": false,
"inProcess": true,
"new": true
}
}
],
"importUuid": "d5414092-68b8-4fcd-b920-71083dfbe1fe",
"importLink": "https://coman.app/import/d5414092-68b8-4fcd-b920-71083dfbe1fe"
Ответ в случае ошибки обработки
{
"code": "OK",
"responseList": [
{
"code": "FIELD_IS_EMPTY",
"description": "inn can't be empty;.signers(0) should have at least one of fields: phone,snils ",
"translation": "{fieldIsEmpty}",
"errors": {
"error": [
"inn can't be empty",
".signers(0) should have at least one of fields: phone,snils "
]
},
"detailedCode": "COMAN_003",
"requestUuid": "d052768a-08be-46fe-b9fe-0e0430af6fc5",
"externalSeq": "1"
},
{
"code": "EMPTY_FILE_NAMES",
"translation": "{emptyFileNames}",
"requestUuid": "d052768a-08be-46fe-b9fe-0e0430af6fc5",
"externalSeq": "2"
}
],
"importUuid": "944a580a-40cb-4ff5-bb63-b2569fe81f54"
}
Перечень возможных кодов ошибок
Возможные значения поля "code", внутри массива "responseList": |
Комментарии |
FIELD_IS_EMPTY |
Не заполнены обязательные поля |
EMPTY_FILE_NAMES |
Массив fileNames пустой |
REQUEST_IS_EMPTY |
Отправлен пустой запрос |
NO_FILE |
Отсутствуют загружаемые файлы, указанные в массиве fileNames |
DUPLICATE_FILE |
В массиве fileNames найдены повторяющиеся ключи |
LENGTH_IS_WRONG |
Некорректная длина поля |
WRONG_FORMAT |
Неверный формат поля |
Запрос информации о документах
Метод используется для запроса информации о документах в КОМАН.
Описание метода
Метод |
URL |
Headers |
POST |
`Authorization: Bearer `Content-Type: application/json` |
Параметры запроса
Поле |
Тип |
Обяз. |
Комментарий |
importUuid |
Текст(36) |
Усл.* |
UUID импорта документа |
uuid |
Текст(36) |
Усл.* |
UUID документа |
*Обязательно передавать одно из полей. Не допускается одновременная передача двух полей.
Пример тела запроса
Тело запроса (body)
{
"importUuid": "51479df2-3890-4179-b02e-fc024b6c135a"
}
Формат ответа
Ответ в случае успешной обработки запроса
[
{
"importUuid": "51479df2-3890-4179-b02e-fc024b6c135a",
"uuid": "a67a97d4-6927-48e7-8f82-95d6171d88c5",
"name": "21110516230401-29.12.2021__14_41_49.xlsx",
"status": 50
},
{
"importUuid": "51479df2-3890-4179-b02e-fc024b6c135a",
"uuid": "a67a97d4-6927-48e7-8f82-95d6171d88c4",
"name": "1",
"status": 10
}
]
Ответ в случае, если документ не найден
{
"code": "DOCUMENT_NOT_FOUND",
"translation": "{documentNotFound}",
"detailedCode": "COMAN_001",
"requestUuid": "c49bacc9-be0d-44be-ac6c-4f4d3664521c"
}
Ответ в случае ошибки обработки
{
"code": "TOO_MUCH_VALUES",
"description": " can have only one of fields: importUuid,uuid ",
"translation": "{tooMuchValues}",
"errors": {
"error": [
" can have only one of fields: importUuid,uuid "
]
},
"requestUuid": "6773a41f-2652-4900-b4a5-8ea230e24d6f"
}
Перечень статусов документа
Статус |
Комментарии |
0 |
Документ в статусе “В обработке” в интерфейсной таблице |
10 |
Документ в статусе “Мастер импорта” в интерфейсной таблице |
20 |
Документ в статусе “Черновик” в рабочей таблице |
40 |
Документ в статусе “В процессе подписания” в рабочей таблице |
50 |
Документ в статусе “Отклонено” в рабочей таблице |
60 |
Документ в статусе “Удалено” в рабочей таблице |
98 |
Документ в статусе “Ошибка” в интерфейсной таблице |
99 |
Документ в статусе “Ошибка” в рабочей таблице |
100 |
Документ в статусе “Завершено” в рабочей таблице |
Перечень возможных кодов ошибок
Возможные значения поля "code", внутри массива "responseList": |
Комментарии |
FIELD_IS_EMPTY |
Не заполнены обязательные поля |
DOCUMENT_NOT_FOUND |
Не найдено ни одного документа |
TOO_MUCH_VALUES |
Нарушена условная обязательность передаваемых полей |
Запрос архива документа
Метод используется для запроса архива, содержащего оригинал документа и открепленные подписи в КОМАН
Описание метода
Метод |
URL |
Headers |
GET |
`Authorization: Bearer |
Параметры запроса
Поле |
Тип |
Обяз. |
Комментарий |
document_uuid |
Текст(36) |
Да |
UUID документа |
Формат ответа
Заголовок |
Код состояния |
Пример содержимого |
Location |
302 (REDIRECT) |
Ответ в случае, если документ не найден
{
"code": "DOCUMENT_NOT_FOUND",
"translation": "{documentNotFound}",
"detailedCode": "COMAN_001",
"requestUuid": "c49bacc9-be0d-44be-ac6c-4f4d3664521c"
}
Перечень возможных кодов ошибок
Возможные значения поля "code", внутри массива "responseList": |
Комментарии |
DOCUMENT_NOT_FOUND |
Не найдено ни одного документа |
WRONG_STATUS |
Некорректный статус документа. Выгрузка архива доступна только в статусах “В процессе подписания”, “Отклонено”, “Завершено” |
Запрос информации о документах по фильтрам
Метод используется для запроса информации о документах в КОМАН.
Описание метода
Метод |
URL |
Headers |
POST |
`Authorization: Bearer |
Параметры запроса
Поле |
Тип |
Обяз. |
Комментарий |
inn |
Текст(36) |
Нет |
ИНН |
kpp |
Текст(36) |
Нет |
КПП |
extCode |
Текст(36) |
Нет |
Внешний код организации |
entityId |
Текст(36) |
Нет |
ID организации в Коман |
status |
Текст(36) |
Нет |
Статус документа |
name |
Текст(36) |
Нет |
Название документа |
uuid |
Текст(36) |
Нет |
UUID документа |
importUuid |
Текст(36) |
Нет |
UUID импорта документа |
forMeToSign |
Логический тип |
Нет |
Документы на подпись для внешней системы |
changedAfter |
Дата и время |
Нет |
2024-01-26T13:40:24.332+03:00 |
createdByApi |
Логический тип |
Нет |
true - показывает документы, созданные через интеграцию не передан - показывает все документы |
createdFromForm |
Логический тип |
Нет |
true - показывает документы, созданные из "Шаблона" (см. Шаблоны документов ) false - показывает документы, созданные НЕ из "Шаблона" не передан - показывает все документы |
limit |
Текст(36) |
Да |
Кол-во возвращаемых записей |
offset |
Текст(36) |
Да |
отступ в возвращаемых записях |
Пример тела запроса
Тело запроса (body)
{
"forMeToSign": false,
"changedAfter": "2024-01-26T13:40:24.332+03:00",
"limit": 150,
"offset": 0,
"createdByApi": false,
"createdFromForm": false
}
Формат ответа
Ответ в случае успешной обработки запроса
{
"count": 2,
"data": [
{
"id": 15578,
"envelopeId": 15578,
"creatorUserId": 1,
"creatorUserName": "Чугреев Владимир Сергеевич",
"entityId": 153,
"entityName": "ООО \"Калитеро\"",
"inn": "7707083893",
"kpp": "773601001",
"clientId": 52,
"uuid": "018d5a59-1fee-7835-8a50-71f6bbd38546",
"status": 0,
"statusName": "Черновик",
"name": "Шаблон_плейсхолдеры (1).docx",
"pageCount": 1,
"datcre": "2024-01-30T15:30:06.830+03:00",
"datmod": "2024-01-30T15:30:14.645+03:00",
"lastChanged": "2024-01-30T15:30:14.645+03:00",
"createdByApi": false,
"createdFromForm": false,
"new": false
},
{
"id": 15571,
"envelopeId": 15571,
"entityId": 188,
"entityName": "тест",
"inn": "340958340958",
"kpp": "349054395",
"clientId": 52,
"uuid": "018d5985-32a0-7be3-9b51-05ddc8ce8894",
"importUuid": "018d5985-325a-704a-aa38-2e8b4033593c",
"status": 100,
"statusName": "Подписан",
"name": "Сценарий.txt",
"pageCount": 1,
"datcre": "2024-01-30T11:38:41.669+03:00",
"datmod": "2024-01-30T11:41:43.280+03:00",
"lastChanged": "2024-01-30T11:41:43.280+03:00",
"documentType": "01.010",
"documentTypeName": "Ознакомление с локальным нормативным актом, непосредственно связанным с трудовой деятельностью",
"createdByApi": true,
"createdFromForm": false,
"new": false
},
],
"requestUuid": "018d5ab8-903f-70de-a391-e6cd420ebc05"
}
Ответ в случае, если документ не найден
{
"count": 0,
"requestUuid": "38ca0bf1-e23b-40d8-80f8-57ff682e3415"
}
Запрос полной информации по документу
Метод используется для запроса документа
Описание метода
Метод |
URL |
Headers |
GET |
`Authorization: Bearer |
Параметры запроса
Поле |
Тип |
Обяз. |
Комментарий |
document_uuid |
Текст(36) |
Да |
UUID документа |
Формат ответа
Ответ в случае успешной обработки запроса
[
{
"clientId": 1,
"datcre": "2022-04-05T15:37:29.508+03:00",
"datmod": "2022-04-05T15:39:22.701+03:00",
"entityId": 1,
"entityName": "ООО «Калитеро»",
"envelopeId": 342,
"files": [
{
"contentType": "application/pdf",
"fileName": "certificate_221989260.pdf",
"fileOrder": 1,
"pageCount": 1
}
],
"id": 342,
"importUuid": "3c954828-5c8c-45bc-baff-1c0d89652b4d",
"inn": "9729003736",
"kpp": "773401001",
"name": "certificate_221989260.pdf",
"new": false,
"pageCount": 1,
"stages": [
{
"allUsers": false,
"signOrder": 1,
"signers": [
{
"status": 2,
"statusName": "Отказ",
"userId": 1,
"lastName": "Чугреев",
"firstName": "Владимир",
"middleName": "Сергеевич",
"snils": "42353252234",
"qualified": false,
"initials": "В.С.",
"initialsAndLastName": "В.С. Чугреев",
"lastNameAndInitials": "Чугреев В.С."
}
]
}
],
"status": 40,
"statusName": "Отклонено",
"uuid": "a45b8641-609f-4746-a259-f53c1263bc9e"
}
]
Ответ в случае, если документ не найден
{
"code": "DOCUMENT_NOT_FOUND",
"translation": "{documentNotFound}",
"detailedCode": "COMAN_001",
"requestUuid": "c49bacc9-be0d-44be-ac6c-4f4d3664521c"
}
Подписание документа
Метод используется для подписания документа внешней системой в КОМАН.
Описание метода
Метод |
URL |
Headers |
POST |
`Authorization: Bearer |
Параметры запроса
Поле |
Тип |
Обяз. |
Комментарий |
uuid |
Текст(36) |
Да |
UUID документа |
Пример тела запроса
Тело запроса (body)
{
"uuid": "41765df6-d757-4658-9da3-3af3615c3afb"
}
Формат ответа
Ответ в случае успешной обработки запроса
{
"requestUuid": "d40415a0-ffe4-481f-95bc-cb13886d74e8",
"success": true
}
Ответ в случае, если документ не найден
{
"code": "DOCUMENT_NOT_FOUND",
"translation": "{documentNotFound}",
"detailedCode": "COMAN_001",
"requestUuid": "35e827b0-b0d4-476d-8d50-f80af2fd94ce",
"success": false
}
Отклонение документа
Метод используется для отклонения документа внешней системой в КОМАН.
Описание метода
Метод |
URL |
Headers |
POST |
`Authorization: Bearer |
Параметры запроса
Поле |
Тип |
Обяз. |
Комментарий |
uuid |
Текст(36) |
Да |
UUID документа |
comment |
Текст(200) |
Нет |
Причина отклонения |
Пример тела запроса
Тело запроса (body)
{
"uuid": "41765df6-d757-4658-9da3-3af3615c3afb"
}
Формат ответа
Ответ в случае успешной обработки запроса
{
"requestUuid": "d40415a0-ffe4-481f-95bc-cb13886d74e8",
"success": true
}
Ответ в случае, если документ не найден
{
"code": "DOCUMENT_NOT_FOUND",
"translation": "{documentNotFound}",
"detailedCode": "COMAN_001",
"requestUuid": "35e827b0-b0d4-476d-8d50-f80af2fd94ce",
"success": false
}
Удаление документа
Метод используется для удаления документа внешней системой в КОМАН.
Описание метода
Метод |
URL |
Headers |
POST |
`Authorization: Bearer |
Параметры запроса
Поле |
Тип |
Обяз. |
Комментарий |
documents |
массив |
Да |
Массив документов для удаления |
uuid |
Текст(36) |
Да |
UUID документа |
comment |
Текст(200) |
Нет |
Причина удаления |
Пример тела запроса
Тело запроса (body)
{
"documents":[
{
"uuid":"f531f4cd-e6e1-4573-aa72-a0c3e1ec8f8a",
"comment":"Причина удаления 1"
},
{
"uuid":"51db09ba-9f07-4411-a0e9-6faa4c3967bb",
"comment":"Причина удаления 2"
}
]
}
Формат ответа
Ответ в случае успешной обработки запроса
{
"code": "OK",
"responseList": [
{
"code": "OK",
"requestUuid": "4c22f6fa-5ec2-49c7-b373-b51399e93e56",
"success": true },
{
"code": "OK",
"requestUuid": "4c22f6fa-5ec2-49c7-b373-b51399e93e56",
"success": true
}
]
}
Ответ в случае ошибок
{
"code": "OK",
"responseList": [
{
"code": "WRONG_STATUS",
"translation": "{wrongStatus}",
"requestUuid": "621e2d10-ed13-483f-a32a-97675619f0d5",
"success": false
},
{
"code": "DOCUMENT_NOT_FOUND",
"translation": "{documentNotFound}",
"detailedCode": "COMAN_001",
"requestUuid": "621e2d10-ed13-483f-a32a-97675619f0d5",
"success": false
}
]
}
Пользователи
Добавление пользователей
Метод используется для добавления пользователей в Коман. Метод принимает массив элементов, описанных в разделе Параметры запроса.
Описание метода
Метод |
URL |
Headers |
POST |
`Authorization: Bearer |
Параметры запроса
Поле |
Тип |
Обяз. |
Комментарий |
||
phone |
Текст(12) |
Усл.* |
Телефон пользователя. |
||
firstName |
Текст(255) |
Да |
Имя пользователя. |
||
middleName |
Текст(255) |
Нет |
Отчество пользователя. |
||
lastName |
Текст(255) |
Да |
Фамилия пользователя. |
||
Текст(255) |
Усл.* |
Email пользователя. |
|||
snils |
Текст(11) |
Да |
СНИЛС пользователя. |
||
passportType |
Текст(1) |
Нет |
Тип документа: 1 – паспорт РФ, 2 – иной документ. |
||
passportBatch |
Текст(4) |
Нет |
Серия паспорта пользователя. |
||
passportNumber |
Текст(9) |
Нет |
Номер паспорта пользователя. |
||
passportIssuingCenter |
Текст(50) |
Нет |
Кем выдан паспорт пользователя. |
||
passportIssueDate |
Дата |
Нет |
Дата выдачи паспорта пользователя. |
||
passportInfo |
Текст(500) |
Нет |
Информация о документе. Передается, если тип документа - иное (passportType = 2) |
||
registrationAddress |
Текст(500) |
Нет |
Адрес регистрации |
||
entities |
Массив |
Да |
Массив организаций. |
||
inn |
Текст(20) |
Усл.** |
ИНН организации. |
||
kpp |
Текст(20) |
Нет |
КПП организации. |
||
gphContract |
Логический тип |
Нет |
Устроен по договору ГПХ Значение по умолчанию false. |
||
extCode |
Текст(40) |
Усл.** |
Внешний код организации. |
||
managerSnils |
Текст(255) |
Нет |
СНИЛС руководителя пользователя |
||
maxVacationDays |
Число |
Нет |
Количество доступных дней отпуска в организации (Целое число) |
||
positions |
Массив |
Нет |
Массив должностей в организации |
||
positionName |
Текст(255) |
Нет |
Должность сотрудника |
||
departmentName |
Текст(255) |
Нет |
Название отдела (подразделения) |
||
personnelNumber |
Текст(255) |
Нет |
Табельный номер сотрудника |
||
*Обязательно передавать хотя бы одно из полей.
**Обязательно передавать хотя бы одно из полей.
Пример тела запроса
Тело запроса (body)
[
{
"firstName": "Иван",
"middleName": "Иванович",
"lastName": "Иванов",
"phone": "+79999888888",
"snils": "67866037659",
"email": "email@kalite.ro",
"passportBatch": "8090",
"passportNumber": "790123",
"passportIssuingCenter": "УВД г. Москвы",
"passportIssueDate": "2022-05-18",
"registrationAddress":"Г. Москва, ул. Маршала Рыбалко, д.2, корп.8, оф. 304",
"entities": [
{
"inn": "9729003736",
"kpp": "773401001",
"gphContract": true,
"managerSnils": "68867037650",
"positions":[
{
"positionName":"Консультант"
}
}
]
}
]
Формат ответа
Ответ в случае успешной обработки запроса
{
"code": "OK",
"responseList": [
{
"code": "OK",
"id": 147,
"requestUuid": "cc39593c-96fa-4e22-9a62-8664703f1145",
"success": true,
"uuid": "266d1d9f-26e6-4496-95b6-07a2c7e67882",
"newObject": {
"id": 147,
"datcre": "2023-02-02T10:57:15.529+03:00",
"usercre": "/api/user/--cc39593c-96fa-4e22-9a62-8664703f1145",
"inCUserId": 147,
"clientId": 2,
"clientTokenId": 105,
"uuid": "266d1d9f-26e6-4496-95b6-07a2c7e67882",
"phone": "+75090010132",
"firstName": "Никита",
"middleName": "Николаевич",
"lastName": "Теврюков",
"snils": "***********",
"email": "tevryukov@gmail.com",
"passportBatch": "****",
"passportNumber": "982374",
"passportIssuingCenter": "УВД г. Москвы",
"passportIssueDate": "2022-05-18",
"importUuid": "498fa3d4-1967-4bd7-8806-6bfe092e4a89",
"entities": [
{
"id": 40,
"datcre": "2023-02-02T10:57:15.725+03:00",
"usercre": "/api/user/--cc39593c-96fa-4e22-9a62-8664703f1145",
"inCUserEntityId": 40,
"inn": "9729003736",
"kpp": "773401001",
"managerSnils": "42455766800",
"new": true
}
],
"processed": false,
"inProcess": true,
"new": true
}
}
],
"importUuid": "498fa3d4-1967-4bd7-8806-6bfe092e4a89"
}
Ответ в случае ошибки обработки
{
"responseList": [
{
"code": "FIELD_IS_EMPTY",
"description": "snils can't be empty",
"translation": "{snilsIsEmpty}",
"errors": {
"error": [
"snils can't be empty"
]
},
"detailedCode": "COMAN_003",
"requestUuid": "2a5ee7e3-9e85-4ac2-a90d-dfb3e31652a8",
"success": false
}
],
"importUuid": "99babd21-5d5f-44f4-bfeb-2133586f52a0"
}
Перечень возможных кодов ошибок
Возможные значения поля "code", внутри массива "responseList": |
Комментарии |
FIELD_IS_EMPTY |
Не заполнены обязательные поля |
REQUEST_IS_EMPTY |
Отправлен пустой запрос |
LENGTH_IS_WRONG |
Некорректная длина поля |
WRONG_FORMAT |
Неверный формат поля |
Обновление/изменение пользователей
Метод используется для изменения пользователей в Коман. Если пользователь, переданный в сообщении, существует, то его данные будут обновлены. Если пользователь не существует, то будет создан. Метод принимает массив элементов, описанных в разделе Параметры запроса.
Описание метода
Метод |
URL |
Headers |
PUT |
`Authorization: Bearer |
или
POST |
`Authorization: Bearer |
Параметры запроса
Поле |
Тип |
Обяз. |
Комментарий |
||
phone |
Текст(12) |
Усл.* |
Телефон пользователя. |
||
firstName |
Текст(255) |
Да |
Имя пользователя. |
||
middleName |
Текст(255) |
Нет |
Отчество пользователя. |
||
lastName |
Текст(255) |
Да |
Фамилия пользователя. |
||
Текст(255) |
Усл.* |
Email пользователя. |
|||
snils |
Текст(11) |
Да |
СНИЛС пользователя. |
||
passportType |
Текст(1) |
Нет |
Тип документа: 1 – паспорт РФ, 2 – иной документ. |
||
passportBatch |
Текст(4) |
Нет |
Серия паспорта пользователя. |
||
passportNumber |
Текст(9) |
Нет |
Номер паспорта пользователя. |
||
passportIssuingCenter |
Текст(50) |
Нет |
Кем выдан паспорт пользователя. |
||
passportIssueDate |
Дата |
Нет |
Дата выдачи паспорта пользователя. |
||
passportInfo |
Текст(500) |
Нет |
Информация о документе. Передается, если тип документа - иное (passportType = 2) |
||
registrationAddress |
Текст(500) |
Нет |
Адрес регистрации |
||
entities |
Массив |
Да |
Массив организаций. |
||
inn |
Текст(20) |
Усл. |
ИНН организации. |
||
kpp |
Текст(20) |
Нет |
КПП организации. |
||
gphContract |
Логический тип |
Нет |
Устроен по договору ГПХ Значение по умолчанию false. |
||
extCode |
Текст(40) |
Усл. |
Внешний код организации. |
||
managerSnils |
Текст(255) |
Нет |
СНИЛС руководителя пользователя |
||
maxVacationDays |
Число |
Нет |
Количество доступных дней отпуска в организации (Целое число) |
||
positions |
Массив |
Нет |
Массив должностей в организации |
||
positionName |
Текст(255) |
Нет |
Должность сотрудника |
||
departmentName |
Текст(255) |
Нет |
Название отдела (подразделения) |
||
personnelNumber |
Текст(255) |
Нет |
Табельный номер сотрудника |
||
*Обязательно передавать хотя бы одно из полей.
Пример тела запроса
Тело запроса (body)
[
{
"firstName": "Иван",
"middleName": "Иванович",
"lastName": "Иванов",
"phone": "+79999888888",
"snils": "67866037659",
"email": "email@kalite.ro",
"passportBatch": "8090",
"passportNumber": "790123",
"passportIssuingCenter": "УВД г. Москвы",
"passportIssueDate": "2022-05-18",
"registrationAddress":"Г. Москва, ул. Маршала Рыбалко, д.2, корп.8, оф. 304",
"entities": [
{
"inn": "9729003736",
"kpp": "773401001",
"managerSnils": "68867037650",
"positions":[
{
"positionName":"Консультант"
}
}
]
}
]
Формат ответа
Ответ в случае успешной обработки запроса
{
"responseList": [
{
"id": 61,
"requestUuid": "cc7506c7-25fc-4dd3-9ea6-3c9108b2f8e7",
"success": true,
"uuid": "02a3864e-c73b-43a1-ab18-18e5b271cb54"
}
],
"importUuid": "ed55ff72-c42c-42fa-ac5a-64e9de88131e"
}
Ответ в случае ошибки обработки
{
"responseList": [
{
"code": "FIELD_IS_EMPTY",
"description": "snils can't be empty",
"translation": "{snilsIsEmpty}",
"errors": {
"error": [
"snils can't be empty"
]
},
"detailedCode": "COMAN_003",
"requestUuid": "2a5ee7e3-9e85-4ac2-a90d-dfb3e31652a8",
"success": false
}
],
"importUuid": "99babd21-5d5f-44f4-bfeb-2133586f52a0"
}
Перечень возможных кодов ошибок
Возможные значения поля "code", внутри массива "responseList": |
Комментарии |
FIELD_IS_EMPTY |
Не заполнены обязательные поля |
REQUEST_IS_EMPTY |
Отправлен пустой запрос |
LENGTH_IS_WRONG |
Некорректная длина поля |
WRONG_FORMAT |
Неверный формат поля |
Удаление пользователей
Метод используется для удаления пользователей из Коман (увольнения из организации). Метод принимает массив элементов, описанных в разделе Параметры запроса.
Описание метода
Метод |
URL |
Headers |
POST |
`Authorization: Bearer |
Параметры запроса
Поле |
Тип |
Обяз. |
Комментарий |
|
snils |
Текст(11) |
Усл.* |
СНИЛС пользователя. |
|
Текст(36) |
Усл.* |
Email пользователя. |
||
phone |
Текст(12) |
Усл.* |
Телефон пользователя. |
|
entities |
Массив |
Да |
Массив организаций. |
|
inn |
Текст(20) |
Усл.** |
ИНН организации. |
|
kpp |
Текст(20) |
Нет |
КПП организации. |
|
extCode |
Текст(40) |
Усл.** |
Внешний код организации. |
|
*Обязательно передавать хотя бы одно из полей.
**Обязательно передавать хотя бы одно из полей.
Пример тела запроса
Тело запроса (body)
[
{
"snils": "67866037659",
"entities": [
{
"inn": "9729003736",
"kpp": "773401001"
}
]
}
]
Формат ответа
Ответ в случае успешной обработки запроса
{
"responseList": [
{
"id": 61,
"requestUuid": "cc7506c7-25fc-4dd3-9ea6-3c9108b2f8e7",
"success": true,
"uuid": "02a3864e-c73b-43a1-ab18-18e5b271cb54"
}
],
"importUuid": "ed55ff72-c42c-42fa-ac5a-64e9de88131e"
}
Ответ в случае ошибки обработки
{
"responseList": [
{
"code": "FIELD_IS_EMPTY",
"description": "snils can't be empty",
"translation": "{snilsIsEmpty}",
"errors": {
"error": [
"snils can't be empty"
]
},
"detailedCode": "COMAN_003",
"requestUuid": "2a5ee7e3-9e85-4ac2-a90d-dfb3e31652a8",
"success": false
}
],
"importUuid": "99babd21-5d5f-44f4-bfeb-2133586f52a0"
}
Перечень возможных кодов ошибок
Возможные значения поля "code", внутри массива "responseList": |
Комментарии |
FIELD_IS_EMPTY |
Не заполнены обязательные поля |
REQUEST_IS_EMPTY |
Отправлен пустой запрос |
LENGTH_IS_WRONG |
Некорректная длина поля |
WRONG_FORMAT |
Неверный формат поля |
Запрос информации о пользователях по фильтрам
Метод используется для запроса информации о пользователях в КОМАН.
Описание метода
Метод |
URL |
Headers |
POST |
`Authorization: Bearer |
Параметры запроса
Поле |
Тип |
Обяз. |
Комментарий |
inn |
Текст(36) |
Нет |
ИНН |
kpp |
Текст(36) |
Нет |
КПП |
extCode |
Текст(36) |
Нет |
Внешний код организации |
status |
Текст(36) |
Нет |
Статус пользователя |
changedAfter |
Дата и время |
Нет |
2024-01-26T13:40:24.332+03:00 |
createdByApi |
Логический тип |
Нет |
true - показывает пользователей, созданных через интеграцию не передан - показывает всех пользователей |
limit |
Текст(36) |
Да |
Кол-во возвращаемых записей |
offset |
Текст(36) |
Да |
отступ в возвращаемых записях |
Пример тела запроса
Тело запроса (body)
{
"inn": "7707083893",
"kpp":"773601001",
"changedAfter":"2023-01-26T13:40:24.332+03:00"
}
Формат ответа
Ответ в случае успешной обработки
{
"count": 4,
"requestedLimit": 50,
"requestedOffset": 0,
"maxLimit": 10000,
"data": [
{
"id": 8119,
"userId": 8119,
"uuid": "01907897-f509-7c10-867c-e42c3c81cdc3",
"importUuid": "01907897-f4f8-7f0c-88ec-30797da83cc0",
"clientId": 89,
"status": 20,
"statusName": "Требуется исправление личных данных пользователя",
"rejectionComment": "",
"phone": "+72951502889",
"firstName": "Трубецкой",
"lastName": "Ляпис",
"middleName": "",
"snils": "97477889215",
"passportType": 2,
"passportInfo": "AB, 1273829, IS546, 02.11.2023, 03.11.2033",
"registrationAddress": "РОССИЯ, Москва г, пр-кт Ленинский, д. 15, к. 2, кв. 16",
"createdByApi": true,
"lastChanged": "2024-07-09T13:27:13.001+03:00",
"new": false
},
{
"id": 8060,
"userId": 8060,
"uuid": "018cf8da-21af-75c8-96d6-d2fb39e95998",
"clientId": 89,
"status": 100,
"statusName": "Активный",
"phone": "+72951502887",
"firstName": "Инна",
"lastName": "Волынец",
"middleName": "Борисовна",
"snils": "55654491828",
"passportType": 2,
"passportBatch": "4519",
"passportNumber": "848828",
"passportIssuingCenter": "УВД по г. Москве",
"passportIssueDate": "2019-05-17",
"passportInfo": "AB, 0065691, АГУ, 04.04.2018, 04.04.2025",
"registrationAddress": "РОССИЯ, Москва г, рыбалко Маршала, д. 2, к. 8, офис 408",
"createdByApi": true,
"lastChanged": "2024-01-11T17:25:53.731+03:00",
"new": false
},
{
"id": 704,
"userId": 704,
"uuid": "af205b5f-998c-49e0-859a-73bc8079794b",
"clientId": 89,
"status": 100,
"statusName": "Активный",
"phone": "+72951502890",
"firstName": "Михаил",
"lastName": "Иванов",
"middleName": "Александрович",
"snils": "73998551988",
"passportType": 1,
"passportBatch": "4515",
"passportNumber": "439564",
"passportIssuingCenter": "Отделением УФМС",
"passportIssueDate": "2014-12-09",
"registrationAddress": "РОССИЯ, Москва г, рыбалко Маршала, д. 2",
"createdByApi": true,
"lastChanged": "2024-01-12T01:00:49.314+03:00",
"new": false
},
{
"id": 365,
"userId": 365,
"uuid": "818cf87a-f7d6-405c-94fd-6816768f23df",
"clientId": 89,
"status": 100,
"statusName": "Активный",
"phone": "+72951502886",
"firstName": "Никита",
"lastName": "Веселов",
"middleName": "Дмитриевич",
"snils": "83770817741",
"passportType": 1,
"passportBatch": "4522",
"passportNumber": "347733",
"passportIssuingCenter": "ОУФМС",
"passportIssueDate": "2019-01-31",
"registrationAddress": "РОССИЯ, Москва г, Рыбалко Маршала, д. 2, к. 8, офис 406",
"createdByApi": false,
"lastChanged": "2024-07-15T17:32:49.917+03:00",
"new": false
}
],
"requestUuid": "0190b85f-5709-747b-85e2-44ecf6fac23b"
}
Согласование кандидата
Метод используется для согласования Кандидата и перевода его в статус "Согласован"
Описание метода
Метод |
URL |
Headers |
POST |
`Authorization: Bearer |
Параметры запроса
Поле |
Тип |
Обяз. |
Комментарий |
userUuid |
Текст(36) |
Да |
UUID кандидата |
Пример тела запроса
Тело запроса (body)
{
"userUuid": "41765df6-d757-4658-9da3-3af3615c3afb"
}
Формат ответа
Ответ в случае успешной обработки запроса
{
"requestUuid": "d40415a0-ffe4-481f-95bc-cb13886d74e8",
"success": true
}
Ответ в случае, если документ не найден
{
"code": "DOCUMENT_NOT_FOUND",
"translation": "{documentNotFound}",
"detailedCode": "COMAN_001",
"requestUuid": "35e827b0-b0d4-476d-8d50-f80af2fd94ce",
"success": false
}
Отклонение кандидата
Метод используется для отклонения Кандидата и преевода его в статус "Отклонен"
Описание метода
Метод |
URL |
Headers |
POST |
`Authorization: Bearer |
Параметры запроса
Поле |
Тип |
Обяз. |
Комментарий |
userUuid |
Текст(36) |
Да |
UUID кандидата |
comment |
Текст(200) |
Нет |
Причина отклонения |
Пример тела запроса
Тело запроса (body)
{
"userUuid": "41765df6-d757-4658-9da3-3af3615c3afb",
"comment": "Некорректный снилс"
}
Формат ответа
Ответ в случае успешной обработки запроса
{
"requestUuid": "d40415a0-ffe4-481f-95bc-cb13886d74e8",
"success": true
}
Ответ в случае, если документ не найден
{
"code": "DOCUMENT_NOT_FOUND",
"translation": "{documentNotFound}",
"detailedCode": "COMAN_001",
"requestUuid": "35e827b0-b0d4-476d-8d50-f80af2fd94ce",
"success": false
Проверка статуса обработки запроса на добавление/обновление/удаление/изменение пользователей
Метод используется для получения данных о пользователях и запросах на их добавление/обновление/удаление/изменение в Коман.
Описание метода
Метод |
URL |
Headers |
POST |
`Authorization: Bearer |
Параметры запроса
Поле |
Тип |
Обяз. |
Комментарий |
uuid |
Текст(36) |
Усл.* |
UUID пользователя пользователя. |
importUuid |
Текст(36) |
Усл.* |
UUID импорта |
snils |
Текст(11) |
Усл.* |
СНИЛС пользователя. |
*Обязательно передавать только одно из полей.
Формат ответа
Ответ в случае успешной обработки запроса
[
{
"importUuid": "c7e94d94-bed6-4c16-8ccc-79834bb96a3f",
"uuid": "322d53f8-d403-4edd-9952-f604bbebf506",
"status": 100,
"statusName": "Активный",
"phone": "+79999888888",
"firstName": "Иван",
"middleName": "Иванович",
"lastName": "Иванова",
"snils": "67866037659",
"passportType": 1,
"passportTypeName": "",
"passportBatch": "8090",
"passportNumber": "790123",
"passportIssuingCenter": "УВД г. Москвы",
"passportIssueDate": "2022-05-18T00:00:00.000+03:00",
"errCode": "",
"errComm": "",
"entities": [
{
"inn": "9729003736",
"kpp": "773401001"
}
]
},
{
"importUuid": "c7e94d94-bed6-4c16-8ccc-79834bb96a3f",
"uuid": "e070d524-797c-4bf7-8c7f-3b592204d46c",
"status": 100,
"statusName": "Активный",
"phone": "+79999888888",
"firstName": "Иван",
"middleName": "Иванович",
"lastName": "Иванова",
"snils": "67866037659",
"passportType": 1,
"passportTypeName": "",
"passportBatch": "8090",
"passportNumber": "790123",
"passportIssuingCenter": "УВД г. Москвы",
"passportIssueDate": "2022-05-18T00:00:00.000+03:00",
"errCode": "",
"errComm": "",
"entities": [
{
"inn": "9729003736",
"kpp": "773401001"
}
]
}
]
Перечень статусов пользователя
Статус |
Комментарии |
0 |
Пользователь в статусе “В обработке” в интерфейсной таблице |
10 |
Пользователь в статусе “Требуется проверка личных данных пользователем” в рабочей таблице |
20 |
Пользователь в статусе “Требуется исправление личных данных пользователя” в рабочей таблице |
30 |
Пользователь в статусе “Создается УНЭП” в рабочей таблице |
40 |
Пользователь в статусе “Требуется предварительная проверка личных данных пользователя” в рабочей таблице |
50 |
Пользователь в статусе “Персональные данные не введены” в рабочей таблице |
98 |
Пользователь в статусе “Ошибка” в интерфейсной таблице |
100 |
Пользователь в статусе “Активный” в рабочей таблице |
Ответ в случае ошибки обработки
{
"code": "DOCUMENT_NOT_FOUND",
"translation": "{documentNotFound}",
"detailedCode": "COMAN_001",
"requestUuid": "36ae3cf9-e7b0-4fa6-8e49-bfda89cf3c9d",
"success": false
}
Перечень возможных кодов ошибок
Возможные значения поля "code", внутри массива "responseList": |
Комментарии |
USER_NOT_FOUND |
Пользователь не найден |
FIELD_IS_EMPTY |
Переданы не все обязательные поля |
TOO_MUCH_VALUES |
Переданы больше одного поля |
График отпусков
Создание сбора информации для Графика отпусков
Метод используется для создания сбора планируемых дат отпуска для "Графика отпусков" в Коман.
Описание метода
Метод |
URL |
Headers |
POST |
`Authorization: Bearer |
Параметры запроса
Поле |
Тип |
Обяз. |
Комментарий |
|
inn |
Текст(20) |
Да |
ИНН организации |
|
kpp |
Текст(20) |
Нет |
КПП организации |
|
collectByDate |
Дата |
Да |
Дата окончания сбора Дата, до которой сотрудники должны внести даты отпуска |
|
approveByDate |
Дата |
Да |
Дата окончания согласования Дата, до которой руководители и ответственные лица должны согласовать даты отпусков сотрудников |
|
year |
Текст(4) |
Нет |
Год графика отпусков |
|
approveType |
Число |
нет |
Тип согласования. Возможные значения: 0 - Все руководители 1 - Руководители по управленческой структуре 2 - Руководители по юридической структуре (значение по умолчанию) 3 - Согласование не требуется |
|
comment |
Текст (2000) |
Нет |
Комментарий по заполнению графика отпусков |
|
name |
Текст (500) |
Нет |
Наименование графика отпусков |
|
users |
Массив |
Нет |
Массив сотрудников, которых необходимо включить в график отпусков. Если не передан, Коман автоматически создаст сбор на всех сотрудников организации, которые еще не включены в сборы графика отпусков этой организации на этот год |
|
snils |
Текст(11) |
Да |
СНИЛС сотрудника |
|
maxVacationDays |
Число |
Да |
Количество дней отпуска для распределения в графике отпусков |
|
positionName |
Текст |
Да |
Должность сотрудника |
|
departmentName |
Текст |
Нет |
Подразделение в организации, к которому относится должность сотрудника |
|
Пример тела запроса
Тело запроса (body) без массива пользователей
{
"inn":"340958340958",
"kpp":"349054395",
"collectByDate":"2024-12-01",
"approveByDate":"2024-12-15",
"approveType": 2,
"comment": "Заполненные периоды должен будет согласовать руководитель в подразделении",
"name": "График УД-20"
}
Тело запроса (body) с массивом пользователей
{
"inn":"340958340958",
"kpp":"349054395",
"collectByDate":"2024-12-01",
"approveByDate":"2024-12-15",
"approveType": 2,
"comment": "Заполненные периоды должен будет согласовать руководитель в подразделении",
"name": "График УД-20",
"users":[
{
"snils":"36141302935",
"departmentName": "Основное",
"positionName": "специалист",
"maxVacationDays": 32
},
{
"snils":"22517799587",
"departmentName": "Производство",
"positionName": "специалист",
"maxVacationDays": 28
},
{
"snils":"03928230257",
"departmentName": "Основное",
"positionName": "менеджер",
"maxVacationDays": 30
} ]
}
Формат ответа
Ответ в случае успешной обработки запроса
{
"success": true,
"code": "OK",
"requestUuid": "0199cdab-5586-70a5-9ec0-ac3876a36951",
"id": 14,
"uuid": "0199cdab-5699-7917-8bef-3e897db67a4d"
}
Пример ответа в случае ошибки обработки
{
"success":false,
"code":"APPROVE_BY_DATE_SHOULD_BE_AFTER_COLLECT_BY_DATE",
"translation":"{approveByDateShouldBeAfterCollectByDate}",
"requestUuid":"0199c39a-8df9-7537-b503-617e87dffefa"
}
Перечень возможных кодов ошибок
Возможные значения поля "code" в ответе |
Комментарии |
COLLECT_BY_DATE_SHOULD_BE_IN_FUTURE |
Дата окончания сбора должна быть больше текущей |
APPROVE_BY_DATE_SHOULD_BE_BEFORE_LAST_POSSIBLE_DATE |
Дата окончания согласования должна быть не позже 31 декабря текущего года |
ENTITY_NOT_FOUND |
Организация не найдена |
WRONG_FORMAT |
Некорректный формат данных |
WRONG_USER_DATA |
Ошибка в данных сотрудников |
ALREADY_EXISTS |
Сбор данных для этой организации и на указанный год уже существует в Коман |
CEO_USER_ID_IS_EMPTY |
У Организации в Коман не указан руководитель. Добавьте руководителя и повторите |
Возможные значения поля "code" в массиве users при получении ошибки WRONG_USER_DATA |
|
MAX_VACATION_DAYS_IS_EMPTY |
У сотрудника не заполнено доступное количество дней отпуска |
USER_NOT_FOUND |
Сотрудник не найден |
Запрос информации о Графиках отпусков по фильтрам (Запрос статуса графика отпусков)
Метод используется для запроса информации о Графике отпусков в КОМАН.
Описание метода
Метод |
URL |
Headers |
POST |
https://coman.app/api/vacation/list |
`Authorization: Bearer |
Параметры запроса
Поле |
Тип |
Обяз. |
Комментарий |
inn |
Текст(36) |
Нет |
ИНН |
kpp |
Текст(36) |
Нет |
КПП |
year |
Число |
Нет |
год графика отпусков |
changedAfter |
Дата и время |
Нет |
2024-01-26T13:40:24.332+03:00 |
limit |
Текст(36) |
Да |
Кол-во возвращаемых записей |
offset |
Текст(36) |
Да |
отступ в возвращаемых записях |
Перечень статусов Графика отпусков
Статус |
Комментарии |
0 |
Удален |
1 |
Сбор данных |
2 |
Согласование |
3 |
Согласован |
4 |
Готов к подписанию |
5 |
Подписание |
6 |
Подписан |
7 |
Импортирован |
Пример тела запроса
Тело запроса (body)
{
"inn": "7261606085",
"kpp": "568744251",
"limit": 1000,
"offset": 0,
"createdByApi": false,
"changedAfter": "2025-10-08T11:00:00.000+03:00"
}
Формат ответа
Ответ в случае успешной обработки запроса
{
"requestUuid":"0199c302-d1e3-76c4-9963-ecea534f5069",
"count":1,
"requestedLimit":1000,
"requestedOffset":0,
"data":[
{
"id":269,
"vacationScheduleId":269,
"uuid":"0199be92-a1e4-71ce-ae27-f2e258540727",
"name":"005",
"status":3,
"statusName":"Согласован",
"year":2026,
"collectByDate":"2025-10-31T00:00:00.000+03:00",
"approveByDate":"2025-11-07T00:00:00.000+03:00",
"entityId":365,
"entityName":"ООО \"Ромашка\"",
"inn":"7261606085",
"kpp":"568744251","lastChanged":"2025-10-08T11:49:12.685+03:00",
"departments":[]
}],
"maxLimit":10000
}
Ответ в случае, если документ не найден
{
"requestUuid":"0199c421-7c75-7b32-98b4-765cae2dffbd",
"count":0,
"requestedLimit":1000,
"requestedOffset":0,
"data":[],
"maxLimit":10000
}
Запрос информации о Графике отпусков
Метод используется для запроса данных Графика отпусков
Описание метода
Метод |
URL |
Headers |
GET |
`Authorization: Bearer |
Параметры запроса
Поле |
Тип |
Обяз. |
Комментарий |
document_uuid |
Текст(36) |
Да |
UUID документа Графика отпусков |
Формат ответа
Ответ в случае успешной обработки запроса
{
"id":266,
"vacationScheduleId":266,
"uuid":"0199be6c-0412-72e7-bd2c-40a8205806d4",
"name":"",
"status":3,
"statusName":"Согласован",
"year":2026,
"collectByDate":"2025-10-23T00:00:00.000+03:00",
"approveByDate":"2025-11-02T00:00:00.000+03:00",
"entityId":364,
"entityName":"ООО \"Васильки\"",
"inn":"2155999300",
"kpp":"485388495",
"creatorUserName":"Дементьев Егор Петрович",
"lastChanged":"2025-10-07T14:27:03.786+03:00",
"users":[
{
"id":1152,
"userUuid":"0192b800-5881-78bd-83d8-84d472b58008",
"userId":1489,
"firstName":"Валентин",
"middleName":"Романович",
"lastName":"Прохоров",
"snils":"84295340019",
"maxVacationDays":28,
"status":3,
"statusName":"Согласован",
"periods":[
{"startDate":"2026-03-02","endDate":"2026-03-31","status":1},
{"startDate":"2026-07-02","endDate":"2026-07-03","status":1},
{"startDate":"2026-07-20","endDate":"2026-07-23","status":1}
],
"positionName":"Специалист",
"departmentName":"Основное"},
{
"id":1153,
"userUuid":"0192b800-5881-78bd-83d8-84d472b58008",
"userId":1489,
"firstName":"Валентин",
"middleName":"Романович",
"lastName":"Прохоров",
"snils":"84295340019",
"maxVacationDays":28,
"status":3,
"statusName":"Согласован",
"periods":[
{"startDate":"2026-03-02","endDate":"2026-03-29","status":1},
{"startDate":"2026-04-08","endDate":"2026-04-08","status":1}
],
"positionName":"Разнорабочий",
"departmentName":"Вспомогательное"},
{
"id":1154,
"userUuid":"01999984-0371-7c96-b0ba-dcd8f3614234",
"userId":1734,
"firstName":"Мирослава",
"middleName":"Ивановна",
"lastName":"Рябова",
"snils":"16035965265",
"status":3,
"statusName":"Согласован",
"periods":[
{"startDate":"2026-02-02","endDate":"2026-03-02","status":1}
],
"positionName":"Разнорабочий",
"departmentName":"Вспомогательное"
}
]
}
Ответ в случае, если документ не найден
{
"code": "DOCUMENT_NOT_FOUND",
"translation": "{documentNotFound}",
"detailedCode": "COMAN_001",
"requestUuid": "018d5c2e-51b0-7d1a-a651-e96d94f882d5",
"success": false
}
Изменение данных по числу дней отпуска
Метод используется для изменения данных по текущему остатка отпуска сотрудника и по числу дней, доступному для распределения в графике отпусков.
Описание метода
POST |
https://coman.app/api/vacation/change_vacation_days |
`Authorization: Bearer |
Параметры запроса
Поле |
Тип |
Обяз. |
Комментарий |
||
snils |
Текст(11) |
Да |
СНИЛС пользователя. |
||
entities |
Массив |
Да |
Массив организаций. |
||
inn |
Текст(20) |
Усл.* |
ИНН организации. |
||
kpp |
Текст(20) |
Нет |
КПП организации. |
||
extCode |
Текст(40) |
Усл.* |
Внешний код организации. |
||
positions |
Массив |
Да |
Массив должностей в организации |
||
positionName |
Текст(255) |
Да |
Должность сотрудника |
||
departmentName |
Текст(255) |
Нет |
Название отдела (подразделения) |
||
currenVacationDays |
Число |
Да |
Текущий остаток отпуска сотрудника |
||
maxVacationDays |
Число |
Да |
Максимальное число дней отпуска для распределения в графике отпусков |
||
*Обязательно передавать хотя бы одно из полей.
Пример тела запроса
Тело запроса (body)
{
"snils": "86490840852",
"entities": [
{
"inn": "5738538593",
"kpp": "613543335",
"positions": [
{
"positionName": "Продавец",
"departmentName": "Основное",
"currentVacationDays": 12,
"maxVacationDays": 35
}
]
}
]
}
Формат ответа
Ответ в случае успешной обработки запроса
{"success":true,"code":"OK","requestUuid":"0199e117-5b2d-7057-9984-92441318c796"}
Ответ в случае ошибки обработки
{"success":false,"code":"USER_NOT_FOUND","translation":"{userNotFound}","requestUuid":"0199e117-56e9-7009-ad3b-9247e5bfe632"}
Перечень возможных кодов ошибок
Возможные значения поля "code": |
Комментарии |
FIELD_IS_EMPTY |
Не заполнены обязательные поля |
ENTITY_NOT_FOUND |
Организация не найдена |
POSITION_NOT_FOUND |
Должность не найдена |
WRONG_FORMAT |
Неверный формат поля |