Интеграция с внешними системами
- Документы
- Создание документа
- Запрос информации о документах
- Запрос архива документа
- Запрос информации о документах по фильтрам
- Запрос полной информации по документу
- Подписание документа
- Отклонение документа
- Удаление документа
- Пользователи
- Добавление пользователей
- Обновление/изменение пользователей
- Удаление пользователей
- Запрос информации о пользователях по фильтрам
- Согласование кандидата
- Отклонение кандидата
- Проверка статуса обработки запроса на добавление/обновление/удаление/изменение пользователей
- График отпусков
- Создание сбора информации для Графика отпусков
- Запрос информации о Графиках отпусков по фильтрам (Запрос статуса графика отпусков)
- Запрос информации о Графике отпусков
- Изменение текущего остатка отпуска
Создайте ключ API
Примечание
Для интеграции с внешними системами, создайте ключ API в Коман. Созданный ключ (Bearer token) нужен для авторизации при передаче данных в Коман по средствам API.
Документы
Создание документа
Метод используется для создания документа в Коман. Если пользователь, переданный в массиве подписантов, существует, то его данные будут обновлены. Если пользователь не существует, то будет создан. Чтобы пользователь был создан или обновлен, необходимо передавать данные о пользователе аналогично методу "Изменение пользователей".
Описание метода
Метод |
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) |
Нет |
Год графика отпусков |
|
users |
Массив |
Нет |
Массив сотрудников, которых необходимо включить в график отпусков. Если не передан, Коман автоматически создаст сбор на всех сотрудников организации* |
|
snils |
Текст(11) |
Нет |
СНИЛС сотрудника |
* Сотрудники, оформленные по ГПХ в графике отпусков не учитываются
Пример тела запроса
Тело запроса (body)
{
"inn":"340958340958",
"kpp":"349054395",
"collectByDate":"2024-12-01",
"approveByDate":"2024-12-15",
"year":"2025",
"users":[
{
"snils":"83770817741"
},
{
"snils":"55654491828"
}
]
}
Формат ответа
Ответ в случае успешной обработки запроса
{
"code": "OK",
"id": 6,
"requestUuid": "018d5b06-a64b-7732-9363-5b825cf44739",
"success": true,
"uuid": "018d5b06-a739-70fc-bd65-e32609fbc1f8",
"newObject": {
"id": 6,
"datcre": "2024-01-30T18:39:39.193+03:00",
"usercre": "/api/vacation/create--018d5b06-a64b-7732-9363-5b82",
"vacationScheduleId": 6,
"clientId": 52,
"entityId": 188,
"uuid": "018d5b06-a739-70fc-bd65-e32609fbc1f8",
"status": 1,
"year": 2027,
"collectByDate": "2024-01-31T00:00:00.000+03:00",
"approveByDate": "2024-01-31T00:00:00.000+03:00",
"clientTokenId": 213,
"new": true
}
}
Пример ответа в случае ошибки обработки
{
"code": "LENGTH_IS_WRONG",
"description": "value length of field .users(1)snils is 10, but should be 11;value length of field users.jList(1)snils is 10, but should be 11",
"translation": "{lengthIsWrong}",
"errors": {
"error": [
"value length of field .users(1)snils is 10, but should be 11",
"value length of field users.jList(1)snils is 10, but should be 11"
]
},
"requestUuid": "018d5b07-557f-7dbf-9e29-5661e6e7a79c",
"success": false,
"detailedError": {
"wrongSizeFields": [
{
"fieldName": "snils",
"minSize": 11.0,
"maxSize": 11.0,
"length": 10.0
},
{
"fieldName": "snils",
"minSize": 11.0,
"maxSize": 11.0,
"length": 10.0
}
]
},
"errorObjects": []
}
Перечень возможных кодов ошибок
Возможные значения поля "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) |
Нет |
КПП |
uuid |
Текст(36) |
Нет |
UUID документа |
changedAfter |
Дата и время |
Нет |
2024-01-26T13:40:24.332+03:00 |
limit |
Текст(36) |
Да |
Кол-во возвращаемых записей |
offset |
Текст(36) |
Да |
отступ в возвращаемых записях |
Перечень статусов документа
Статус |
Комментарии |
0 |
Удален |
1 |
Сбор данных |
2 |
Согласование |
3 |
Согласован |
4 |
Готов к подписанию |
5 |
Подписание |
6 |
Подписан |
Пример тела запроса
Тело запроса (body)
{
"uuid": "UUID документа",
"changedAfter": "2024-01-26T13:40:24.332+03:00 ",
"limit": 150,
"offset": 0
}
Формат ответа
Ответ в случае успешной обработки запроса
{
"count": 6,
"data": [
{
"id": 6,
"vacationScheduleId": 6,
"clientId": 52,
"entityId": 188,
"uuid": "018d5b06-a739-70fc-bd65-e32609fbc1f8",
"status": 1,
"year": 2027,
"collectByDate": "2024-01-31T00:00:00.000+03:00",
"approveByDate": "2024-01-31T00:00:00.000+03:00",
"entityName": "Калитеро",
"inn": "340958340958",
"kpp": "349054395",
"statusName": "Сбор данных",
"lastChanged": "2024-01-30T18:39:39.193+03:00",
"new": false
}
],
"requestUuid": "018d5c20-4241-7594-b146-6efeca7c506a"
}
Ответ в случае, если документ не найден
{
"count": 0,
"requestUuid": "38ca0bf1-e23b-40d8-80f8-57ff682e3415"
}
Запрос информации о Графике отпусков
Метод используется для запроса данных Графика отпусков
Описание метода
Метод |
URL |
Headers |
GET |
`Authorization: Bearer |
Параметры запроса
Поле |
Тип |
Обяз. |
Комментарий |
document_uuid |
Текст(36) |
Да |
UUID документа Графика отпусков |
Формат ответа
Ответ в случае успешной обработки запроса
{
"id": 4,
"vacationScheduleId": 4,
"clientId": 52,
"entityId": 188,
"uuid": "018d597d-0bb8-7cb5-bb4c-880f748f68b6",
"status": 6,
"year": 2026,
"collectByDate": "2024-01-31T00:00:00.000+03:00",
"approveByDate": "2024-01-31T00:00:00.000+03:00",
"entityName": "тест",
"inn": "340958340958",
"kpp": "349054395",
"statusName": "Подписан",
"lastChanged": "2024-01-30T11:41:48.870+03:00",
"users": [
{
"id": 4,
"vacationScheduleUserId": 4,
"vacationScheduleId": 4,
"userId": 336,
"userUuid": "07357647-0f15-4e0b-84c6-dfddec1987e8",
"entityName": "тест",
"status": 3,
"statusName": "Согласован",
"vacationScheduleStatus": 6,
"clientId": 52,
"entityId": 188,
"year": 2026,
"collectByDate": "2024-01-31T00:00:00.000+03:00",
"approveByDate": "2024-01-31T00:00:00.000+03:00",
"maxVacationDays": 14,
"firstName": "Никита",
"middleName": "Дмитриевич",
"lastName": "Веселов",
"periods": [
{
"id": 4,
"datcre": "2024-01-30T11:30:45.486+03:00",
"usercre": "/rest/vacation_schedule/change_periods--018d597d-f",
"vacationScheduleUserPeriodId": 4,
"vacationScheduleId": 4,
"vacationScheduleUserId": 4,
"status": 1,
"startDate": "2026-01-01",
"endDate": "2026-01-14",
"parentId": 4,
"new": false
}
],
"userIdWithUrl": 336,
"parentId": 4,
"fullName": "Веселов Никита Дмитриевич",
"initials": "Н.Д.",
"lastNameAndInitials": "Веселов Н.Д.",
"initialsAndLastName": "Н.Д. Веселов",
"new": false
},
{
"id": 5,
"vacationScheduleUserId": 5,
"vacationScheduleId": 4,
"userId": 963,
"userUuid": "6b2a59a8-dcdc-4f5d-bd52-ad612140c0ff",
"entityName": "тест",
"status": 3,
"statusName": "Согласован",
"vacationScheduleStatus": 6,
"clientId": 52,
"entityId": 188,
"year": 2026,
"collectByDate": "2024-01-31T00:00:00.000+03:00",
"approveByDate": "2024-01-31T00:00:00.000+03:00",
"maxVacationDays": 14,
"firstName": "Инна",
"middleName": "Борисовна",
"lastName": "Волынец",
"periods": [
{
"id": 5,
"datcre": "2024-01-30T11:33:32.735+03:00",
"usercre": "/rest/vacation_schedule/change_periods--018d5980-8",
"vacationScheduleUserPeriodId": 5,
"vacationScheduleId": 4,
"vacationScheduleUserId": 5,
"status": 1,
"startDate": "2026-02-01",
"endDate": "2026-02-14",
"parentId": 5,
"new": false
}
],
"userIdWithUrl": 963,
"parentId": 4,
"fullName": "Волынец Инна Борисовна",
"initials": "И.Б.",
"lastNameAndInitials": "Волынец И.Б.",
"initialsAndLastName": "И.Б. Волынец",
"new": false
}
],
"new": false
}
Ответ в случае, если документ не найден
{
"code": "DOCUMENT_NOT_FOUND",
"translation": "{documentNotFound}",
"detailedCode": "COMAN_001",
"requestUuid": "018d5c2e-51b0-7d1a-a651-e96d94f882d5",
"success": false
}
Изменение текущего остатка отпуска
Метод используется для изменения текущего остатка отпуска сотрудника.
Описание метода
POST |
https://coman.app/api/vacation/change_current_vacation_days |
`Authorization: Bearer |
Параметры запроса
Поле |
Тип |
Обяз. |
Комментарий |
||
snils |
Текст(11) |
Да |
СНИЛС пользователя. |
||
entities |
Массив |
Да |
Массив организаций. |
||
inn |
Текст(20) |
Усл. |
ИНН организации. |
||
kpp |
Текст(20) |
Нет |
КПП организации. |
||
extCode |
Текст(40) |
Усл. |
Внешний код организации. |
||
positions |
Массив |
Нет |
Массив должностей в организации |
||
positionName |
Текст(255) |
Нет |
Должность сотрудника |
||
departmentName |
Текст(255) |
Нет |
Название отдела (подразделения) |
||
currenVacationDays |
Число |
Нет |
Текущий остаток отпуска сотрудника |
*Обязательно передавать хотя бы одно из полей.
Пример тела запроса
Тело запроса (body)
{
"snils": "45221993176",
"entities": [
{
"inn": "7218648176",
"kpp": "238957928",
"positions":[
{
"positionName":"Менеджер",
"departmentName":"Продажи",
"currenVacationDays": 16
}
]
}
]
}
Формат ответа
Ответ в случае успешной обработки запроса
{
"code": "OK",
"requestUuid": "01954cb6-f8c6-775c-9ab3-8325445e0f79",
"success": true
}
Ответ в случае ошибки обработки
{
"code": "FIELD_IS_EMPTY",
"description": ".entities(0).positions(0).currenVacationDays can't be empty;positions.jList(0).currenVacationDays can't be empty;entities.jList(0).positions(0).currenVacationDays can't be empty;positions.jList(0).currenVacationDays can't be empty",
"translation": "{.entities(0).positions(0).currenVacationDaysIsEmpty},{positions.jList(0).currenVacationDaysIsEmpty},{entities.jList(0).positions(0).currenVacationDaysIsEmpty},{positions.jList(0).currenVacationDaysIsEmpty}",
"errors": {
"error": [
".entities(0).positions(0).currenVacationDays can't be empty",
"positions.jList(0).currenVacationDays can't be empty",
"entities.jList(0).positions(0).currenVacationDays can't be empty",
"positions.jList(0).currenVacationDays can't be empty"
]
},
"detailedCode": "003",
"requestUuid": "01954cb7-b7dc-7135-b553-98419cf0b844",
"success": false,
"detailedError": {
"emptyFields": [
{
"fieldName": "currenVacationDays"
}
]
},
"errorObjects": []
}
Перечень возможных кодов ошибок
Возможные значения поля "code": |
Комментарии |
FIELD_IS_EMPTY |
Не заполнены обязательные поля |
ENTITY_NOT_FOUND |
Организация не найдена |
POSITION_NOT_FOUND |
Должность не найдена |
WRONG_FORMAT |
Неверный формат поля |