6.5 KiB
6.5 KiB
Отправка цепочки согласований
Основные моменты
- URI для запроса
- Dev
https://crm-dev.itdev.adsw.io/ServiceModel/ElmaService.svc/CreateChainOfApproval - Prod
https://crm.adsw.io/ServiceModel/ElmaService.svc/CreateChainOfApproval
- Dev
- Header для запроса
X-Elma-Service - Значение Header должно храниться в системе ELMA и быть зашифрованным (для dev и prod стендов разные значения). Будут переданы позднее
- Перед выполнением запроса необходимо расшифровать значение Header и добавить его в запрос
- В поле
chain_of_approvalотправляютсяemailпо порядку, исходя из цепочки согласований
Примеры
curl --location 'https://crm-dev.itdev.adsw.io/ServiceModel/ElmaService.svc/CreateChainOfApproval' \
--header 'X-Elma-Service: 123' \
--header 'Content-Type: application/json' \
--data '{
"id_crm": "123-123",
"chain_of_approval": "test1@mail.com"
}'
Специальные условия
- По матрице согласования нет подходящих условий
- Согласование происходит автоматически в системе ELMA
- ELMA отправляет запрос в формате
{ "id_crm": "035e0f7b-18d2-4f24-87d8-59f107110a01", "chain_of_approval": "Согласовано" }- BPMSoft при получении такого ответа автоматически согласовывает условие
Примеры ответов
Успешный ответ
{
"status": 200,
"error_message": ""
}
Отсутствует заголовок авторизации или он неверный
{
"status": 403,
"error_message": "Выполнение запрещено. Проверьте все необходимые данные"
}
Пустое тело
{
"status": 400,
"error_message": "Значение поля id_crm не может быть пустым"
}
Отсутствует поле id_crm или его значение пустое
{
"status": 400,
"error_message": "Значение поля id_crm не может быть пустым"
}
Отсутствует поле chain_of_approval или его значение пустое
{
"status": 400,
"error_message": "Значение поля chain_of_approval не может быть пустым"
}
Согласование с Id из поля id_crm не найдено в BPMSoft
{
"status": 400,
"error_message": "Согласование с Id {0} не найдено в системе BPMSoft. Проверьте корректность запроса"
}
Контакт с email из поля chain_of_approval не найден в BPMSoft
{
"status": 400,
"error_message": "Контакт с email {0} не найден в системе. Проверьте корректность запроса"
}
Внутренняя ошибка BPMSoft
{
"status": 500,
"error_message": "Ошибка в процессе обработки"
}
Отправка результата согласования
Основные моменты
- URI для запроса
- Dev
https://crm-dev.itdev.adsw.io/ServiceModel/ElmaService.svc/ChangeApproverResolution - Prod
https://crm.adsw.io/ServiceModel/ElmaService.svc/ChangeApproverResolution
- Dev
- Header для запроса
X-Elma-Service - Значение Header должно храниться в системе ELMA и быть зашифрованным (для dev и prod стендов разные значения). Будут переданы позднее
- Перед выполнением запроса необходимо расшифровать значение Header и добавить его в запрос
- В поле
approverотправляетсяemailсогласующего - В поле
resolutionотправляется строка, один из вариантов ("Согласовано" или "Отклонено")
Примеры
curl --location 'https://crm-dev.itdev.adsw.io/ServiceModel/ElmaService.svc/ChangeApproverResolution' \
--header 'X-Elma-Service: 123' \
--header 'Content-Type: application/json' \
--data-raw '{
"id_crm": "123-123",
"approver": "test@mail.com",
"resolution": "Согласовано"
}'
Примеры ответов
Успешный ответ
{
"status": 200,
"error_message": ""
}
Отсутствует заголовок авторизации или он неверный
{
"status": 403,
"error_message": "Выполнение запрещено. Проверьте все необходимые данные"
}
Пустое тело
{
"status": 400,
"error_message": "Значение поля id_crm не может быть пустым"
}
Отсутствует поле id_crm или его значение пустое
{
"status": 400,
"error_message": "Значение поля id_crm не может быть пустым"
}
Отсутствует поле approver или его значение пустое
{
"status": 400,
"error_message": "Значение поля approver не может быть пустым"
}
Отсутствует поле resolution или его значение пустое
{
"status": 400,
"error_message": "Значение поля resolution не может быть пустым"
}
Согласование с Id из поля id_crm не найдено в BPMSoft
{
"status": 400,
"error_message": "Согласование с Id {0} не найдено в системе BPMSoft. Проверьте корректность запроса"
}
Контакт с email из поля approver не найден в BPMSoft
{
"status": 400,
"error_message": "Контакт с email {0} не найден в системе. Проверьте корректность запроса"
}
Внутренняя ошибка BPMSoft
{
"status": 500,
"error_message": "Ошибка в процессе обработки"
}