Авторизация (получение токена)

Прежде всего для работы с API требуется пройти авторизацию (получить токен).

Для получения токена используется сервис Authorization.asmx

WSDL можно скачать с демо-сайта: https://stage1.corteos.ru/XmlGate/V3/Authorization.asmx?WSDL

Для работы в продуктовой среде необходимо заменить “stage1.corteos.ru на свой домен (на котором работают пользователи вашей компании).

Метод получения токена Loginhttps://stage1.corteos.ru/XmlGate/V3/Authorization.asmx?op=Login

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

Для генерации токена передаются следующие поля:

  • Email - адрес электронной почты пользователя;

  • Password - пароль пользователя;

  • validityDate - дата и время действия токена; если время не указано, то оно автоматически считается как 00:00:00.

<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>

 

Пример ответа

  • DateCreate - дата и время получения запроса;

  • TokenValue - значение токена, самое важное поле ответа, которое будет использовано в других запросах - GUID;

  • DateValid - дата и время действия токена.

<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>

Пример ошибки

<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 для клиентов.

Агент может только работать с заказами, а для работы со статикой (персоны, коды и так далее) клиента ему необходимо войти в один из договоров при помощи механизма получения клиентского контекста.
____