Прежде всего для работы с API требуется пройти авторизацию (получить токен).
Info |
---|
Для получения токена используется |
...
сервис Authorization.asmx WSDL можно скачать с демо-сайта: https:// |
...
stage1.corteos.ru/XmlGate/V3/Authorization.asmx?WSDL Для работы в продуктовой среде необходимо |
...
заменить “stage1.corteos.ru |
...
” на свой домен (на котором работают пользователи вашей компании). Метод |
...
получения токена Login: https:// |
...
Пример запроса
Для генерации токена передаются следующие поля:
Email - адрес электронной почты пользователя;
Password - пароль пользователя;
validityDate - дата и время действия токена; если время не указано, то оно автоматически считается как 00:00:00.
Code Block |
---|
...
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:cor="http://corteos.ru"> <soapenv:Header/> <soapenv:Body> <cor:Login> <!--Optional:--> <cor:Email>user@domain.ru</cor:Email> <!--Optional:--> <cor:Password>secretpassword</cor:Password> <cor:validityDate>2019-08-31</cor:validityDate> </cor:Login> </soapenv:Body> </soapenv:Envelope> |
Для генерации токена передаются следующие поля:
...
Email - адрес электронной почты пользователя
...
Password - пароль пользователя
...
Пример ответа
...
DateCreate - дата и время получения запроса;
TokenValue - значение токена, самое важное поле ответа, которое будет использовано в других запросах - GUID;
DateValid - дата и время действия токена.
Code Block |
---|
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" |
...
> <soap:Body> <LoginResponse xmlns="http://corteos.ru" |
...
> <LoginResult> <AuthToken deleted="false" |
...
> <DateCreate>2019-08-30T19:34:33.883384+03:00</ |
...
DateCreate> <DateChanged>2019-08-30T19:34:33.883384+03:00</ |
...
DateChanged> <TokenValue>549d1529-****-****-b3cb-bbb3d0501ebf</ |
...
TokenValue> <DateValid>2019-08-31T00:00:00</ |
...
DateValid> </AuthToken> </LoginResult> </LoginResponse> </soap: |
...
Body> </soap:Envelope> |
...
Пример ошибки
...
...
Code Block |
---|
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> |
...
<soap:Body> |
...
<soap:Fault> |
...
<faultcode>soap:Server</faultcode> |
...
<faultstring>System.Web.Services.Protocols.SoapException: Серверу не удалось обработать запрос. ---> JavelinBL2.Exceptions.AuthorizationException: Неверно указан адрес электронной почты или пароль для пользователя user@domain.ru. |
...
в JavelinBL2.ControllerContainer.TryAuth(String Email, String Password, SessionParameters seance) в C:\Jenkins\workspace\javelinprojectv3\JavelinBL2\ControllerContainer.cs:строка 374 |
...
в JavelinView3.XmlGate.V3.Authorization.Login(String Email, String Password, DateTime validityDate) в C:\Jenkins\workspace\javelinprojectv3\JavelinView3\XmlGate\V3\Authorization.asmx.cs:строка 29 |
...
--- Конец трассировки внутреннего стека исключений ---</faultstring> |
...
<detail/> |
...
</soap:Fault> |
...
</soap:Body> |
...
</soap:Envelope> |
После получения клиентского токена клиент может работать со статикой при помощи CRUD или Orchestrated API, а также работать с заказами при помощи API для клиентов.
Агент может только работать с заказами, а для работы со статикой (персоны, коды и так далее) клиента ему необходимо войти в один из договоров при помощи механизма получения клиентского контекста.
____