Интеграция с внешними системами

Создайте ключ API

ПримечаниеПримечание

Для интеграции с внешними системами, создайте ключ API в Коман. Созданный ключ (Bearer token) нужен для авторизации при передаче данных в Коман по средствам API.

Создание документа

Метод используется для создания документа в Коман.

Описание метода

Метод URL Headers
POST https://coman.app/api/doc/create Authorization: Bearer <token>
Content-Type: multipart/form-data; boundary= <body>

Тело запроса

Поле Тип Обяз. Описание
key_1 Файл Да Файл, прикрепляемый к документу
key_n Файл Нет Файл, прикрепляемый к документу
body Файл Да Тело запроса в формате JSON. Описание полей см. в разделе Параметры запроса.

Параметры запроса (body)

Поле Тип Обяз. Комментарий
fileNames Массив Да Файлы, прикреплённые к документу.
В массив передаётся список значений key_1 … key_n из тела запроса. Значения key должны быть уникальными в разрезе запроса (т.е. один key нельзя использовать в нескольких fileNames).
name Текст(500) Нет Имя документа.
Если значение не передано, будет записано первое значение из массива fileNames.
externalSeq Текст(500) Нет Внешний номер последовательности.
Если значение передано, то в ответе вернётся аналогичный тег со значением.
externalDocNum Текст(500) Нет Внешний номер документа.
externalDocDate Дата Нет Внешняя дата документа.
Формат даты: DD.MM.YYYY.
Если значение не передано, будет записана текущая дата.
inn Текст(20) Да ИНН организации.
kpp Текст(20) Нет КПП организации.
entityExtCode Текст(40) Нет Внешний код организации.
entityFullName Текст(255) Нет Наименование организации.
signers Массив Усл** Массив подписантов.
phone Текст(12) Усл.* Телефон пользователя.
Формат: +73332221100
firstName Текст(255) Нет Имя пользователя.
middleName Текст(255) Нет Отчество пользователя.
lastName Текст(255) Нет Фамилия пользователя.
email Текст(255) Нет Email пользователя.
snils Текст(11) Усл.* СНИЛС пользователя.
passportBatch Текст(4) Нет Серия паспорта пользователя.
passportNumber Текст(9) Нет Номер паспорта пользователя.
passportIssuingCenter Текст(50) Нет Кем выдан паспорт пользователя.
passportIssueDate Дата Нет Дата выдачи паспорта пользователя.
Формат даты: YYYY-MM-DD
qualified Логический тип Нет Подпись УКЭП.
Значение по умолчанию false.
stages Массив Усл.** Массив этапов подписания.
name Текст(500) Нет Имя этапа.
Если значение не передано, имя этапа будет пустым.
rejectForbidden Логический тип Нет Признак "Только ознакомиться".
Если значение не передано, будет использован параметр "По умолчанию этап создается с признаком "Только ознакомление".
facsimileDisabled Логический тип Нет Признак "Факсимиле не требуется".
Если значение не передано, будет использован параметр "По умолчанию этап создается с признаком "Факсимиле не требуется"
signOrder Текст (36) Нет Порядковый номер этапа.
Если значение не передано, будет записан порядок этапов такой, как пришел во входящем запросе.
signers Массив Да Данный массив, аналогичен массиву signers, описанному выше.

*Обязательно передавать одно из полей. Не допускается одновременная передача двух полей.

Пример запроса

Тело запроса (body) c массивом **signers**
[
    {
        "externalSeq": "1",
        "fileNames": [
            "1",
            "2"
        ],
        "externalDocNum": "Приказ о приёме на работу Иванов АВ",
        "externalDocDate": "21.05.2021",
        "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) c массивом **stages**
[
  {
    "fileNames": [
      "key_1"
    ],
    "inn": "9729003736",
    "kpp": "773401001",
    "stages": [
      {
        "facsimileDisabled": true,
        "name": "Этап 1",
        "rejectForbidden": true,
        "signOrder": 1,
        "signers": [
          {
            "phone": "+79998405909",
            "firstName": "Михаил",
            "middleName": "Дмитриевич",
            "lastName": "Иванов",
            "snils": "91753552929"
          }
        ]
      },
      {
        "facsimileDisabled": false,
        "name": "Этап 2",
        "rejectForbidden": false,
        "signOrder": 2,
        "signers": [
          {
            "snils": "25360189969",
            "qualified": true
          }
        ]
      }
    ]

  }
]

Формат ответа

Ответ в случае успешной обработки запроса
{
  "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 https://coman.app/api/doc/search Authorization: Bearer <token>
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 https://coman.app/api/doc/get_archive/:uuid Authorization: Bearer <token>
Content-Type: application/json

Параметры запроса

Поле Тип Обяз. Комментарий
uuid Текст(36) Да UUID документа

Формат ответа

Заголовок Код состояния Пример содержимого
Location 302 (REDIRECT) https://coman.storage.yandexcloud.net/documents/57a172d0-e518-4a39-add5-04ac549b1035/final/final_archive.zip?response-content-disposition=attachment%3B%20filename%3DComan_Archive_458_1641912763892.zip&X-Adz-Algorithm=AWS4-HMAC-SHA256&X-Adz-Date=20220111T145243Z&X-Adz-SignedHeaders=host&X-Adz-Expires=29&X-Adz-Credential=_v_akaJsZO83XYEz5h-G%2F20220111%2Fru-central1%2Fs3%2Faws4_request&X-Adz-Signature=4f5979de709cc754209c1cf13fc4fd4ed0c42f3b0d154e4e8ea3ea75a1078f87
Ответ в случае, если документ не найден
{
  "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 https://coman.app/api/doc/list Authorization: Bearer <token>
Content-Type: application/json

Параметры запроса

Поле Тип Обяз. Комментарий
inn Текст(36) Нет ИНН
kpp Текст(36) Нет КПП
extCode Текст(36) Нет Внешний код организации
entityId Текст(36) Нет ID организации в Коман
status Текст(36) Нет Статус документа
name Текст(36) Нет Название документа
uuid Текст(36) Нет UUID документа
importUuid Текст(36) Нет UUID импорта документа
forMeToSign Логический тип Нет Документы на подпись для внешней системы
limit Текст(36) Да Кол-во возвращаемых записей
offset Текст(36) Да отступ в возвращаемых записях

Пример тела запроса

Тело запроса (body)
{
  "limit": 2,
  "offset": 0,
  "kpp": "773401001"
}

Формат ответа

Ответ в случае успешной обработки запроса
[
  {
    "count": 559,
    "data": [
      {
        "id": 1147,
        "envelopeId": 1147,
        "creatorUserId": 616,
        "creatorUserName": "Янкович Герман Игоревич",
        "entityId": 1,
        "entityName": "ООО Калитеро",
        "inn": "9729003736",
        "kpp": "773401001",
        "clientId": 2,
        "uuid": "7d574542-df52-4baf-837d-204232c1879b",
        "status": 20,
        "statusName": "В процессе подписания",
        "name": "Concole_man.txt",
        "comment": "",
        "pageCount": 2,
        "datcre": "2022-06-30T14:54:48.463+03:00",
        "datmod": "2022-06-30T14:56:19.703+03:00",
        "new": false
      },
      {
        "id": 1145,
        "envelopeId": 1145,
        "creatorUserId": 616,
        "creatorUserName": "Янкович Герман Игоревич",
        "entityId": 1,
        "entityName": "ООО Калитеро",
        "inn": "9729003736",
        "kpp": "773401001",
        "clientId": 2,
        "uuid": "04953b29-d64d-419a-bc83-950f38ebd914",
        "status": 20,
        "statusName": "В процессе подписания",
        "name": "Concole_man.txt",
        "comment": "",
        "pageCount": 2,
        "datcre": "2022-06-30T14:48:14.664+03:00",
        "datmod": "2022-06-30T14:48:35.251+03:00",
        "new": false
      }
    ],
    "requestUuid": "b748342a-770e-468e-8a87-df695edde347"
  }
]
Ответ в случае, если документ не найден
{
  "count": 0,
  "requestUuid": "38ca0bf1-e23b-40d8-80f8-57ff682e3415"
}

Запрос полной информации по документу

Метод используется для запроса документа

Описание метода

Метод URL Headers
GET https://coman.app/api/doc/:uuid Authorization: Bearer <token>
Content-Type: application/json

Параметры запроса

Поле Тип Обяз. Комментарий
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 https://coman.app/api/doc/sign/accept Authorization: Bearer <token>
Content-Type: application/json

Параметры запроса

Поле Тип Обяз. Комментарий
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 https://coman.app/api/doc/sign/reject Authorization: Bearer <token>
Content-Type: application/json

Параметры запроса

Поле Тип Обяз. Комментарий
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 https://coman.app/api/user/ Authorization: Bearer <token>
Content-Type: application/json

Параметры запроса

Поле Тип Обяз. Комментарий
phone Текст(12) Усл.* Телефон пользователя.
Формат: +73332221100
firstName Текст(255) Да Имя пользователя.
middleName Текст(255) Нет Отчество пользователя.
lastName Текст(255) Да Фамилия пользователя.
email Текст(255) Усл.* Email пользователя.
snils Текст(11) Да СНИЛС пользователя.
passportType Текст(1) Нет Тип документа: 1 – паспорт РФ, 2 – иное.
Если не передан, то по умолчанию 1 пользователя.
passportBatch Текст(4) Нет Серия паспорта пользователя.
passportNumber Текст(9) Нет Номер паспорта пользователя.
passportIssuingCenter Текст(50) Нет Кем выдан паспорт пользователя.
passportIssueDate Дата Нет Дата выдачи паспорта пользователя.
Формат даты: YYYY-MM-DD
entities Массив Да Массив организаций.
inn Текст(20) Усл.** ИНН организации.
kpp Текст(20) Нет КПП организации.
extCode Текст(40) Усл.** Внешний код организации.
managerSnils Текст(255) Нет СНИЛС руководителя пользователя

*Обязательно передавать хотя бы одно из полей.

**Обязательно передавать хотя бы одно из полей.

Пример запроса

Тело запроса
[
    {
        "firstName": "Иван",
        "middleName": "Иванович",
        "lastName": "Иванова",
        "phone": "+79999888888",
        "snils": "67866037659",
        "email": "email@kalite.ro",
        "passportBatch": "8090",
        "passportNumber": "790123",
        "passportIssuingCenter": "УВД г. Москвы",
        "passportIssueDate": "2022-05-18",
        "entities": [
            {
                "inn": "9729003736",
                "kpp": "773401001",
                "managerSnils": "68867037650"
            }
        ]
    }
]

Формат ответа

Ответ в случае успешной обработки запроса
{
  "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
DELETE https://coman.app/api/user/ Authorization: Bearer <token>
Content-Type: application/json

Параметры запроса

Поле Тип Обяз. Комментарий
snils Текст(11) Усл.* СНИЛС пользователя.
email Текст(36) Усл.* Email пользователя.
phone Текст(12) Усл.* Телефон пользователя.
entities Массив Да Массив организаций.
inn Текст(20) Усл.** ИНН организации.
kpp Текст(20) Нет КПП организации.
extCode Текст(40) Усл.** Внешний код организации.

*Обязательно передавать хотя бы одно из полей.

**Обязательно передавать хотя бы одно из полей.

Пример запроса

Тело запроса
[
    {
        "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 https://coman.app/api/user/change Authorization: Bearer <token>
Content-Type: application/json

Параметры запроса

Поле Тип Обяз. Комментарий
phone Текст(12) Усл.* Телефон пользователя.
Формат: +73332221100
firstName Текст(255) Да Имя пользователя.
middleName Текст(255) Нет Отчество пользователя.
lastName Текст(255) Да Фамилия пользователя.
email Текст(255) Усл.* Email пользователя.
snils Текст(11) Да СНИЛС пользователя.
passportType Текст(1) Нет Тип документа: 1 – паспорт РФ, 2 – иное.
Если не передан, то по умолчанию 1 пользователя.
passportBatch Текст(4) Усл.** Серия паспорта пользователя.
passportNumber Текст(9) Усл.** Номер паспорта пользователя.
passportIssuingCenter Текст(50) Усл.** Кем выдан паспорт пользователя.
passportIssueDate Дата Усл.** Дата выдачи паспорта пользователя.
Формат даты: YYYY-MM-DD
entities Массив Нет Массив организаций.
inn Текст(20) Усл.*** ИНН организации.
kpp Текст(20) Нет КПП организации.
extCode Текст(40) Усл.*** Внешний код организации.
managerSnils Текст(255) Нет СНИЛС руководителя пользователя

*Обязательно передавать хотя бы одно из полей. **Обязательно передавать все поля для нового пользователя. ***Обязательно передавать хотя бы одно из полей.

Пример запроса

Тело запроса
[
    {
        "firstName": "Иван",
        "middleName": "Иванович",
        "lastName": "Иванова",
        "phone": "+79999888888",
        "snils": "67866037659",
        "email": "email@kalite.ro",
        "passportBatch": "8090",
        "passportNumber": "790123",
        "passportIssuingCenter": "УВД г. Москвы",
        "passportIssueDate": "2022-05-18",
        "entities": [
            {
                "inn": "9729003736",
                "kpp": "773401001",
                "managerSnils": "68867037650"
            }
        ]
    }
]

Формат ответа

Ответ в случае успешной обработки запроса
{
    "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 https://coman.app/api/user/search/ Authorization: Bearer <token>
Content-Type: application/json

Параметры запроса

Поле Тип Обяз. Комментарий
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 Переданы больше одного поля