Введение

Для запроса к API в заголовке необходимо передать ContentType “application/xml” если хотим работать с XML, или “application/json” если работаем с json.

Авторизация и безопасность

userName – ID пользователя.

hPassword – вычисляется как MD5(userName+password)

token – строка выданная rkeeper для доступа к API на сервер передается MD5 от этой строки.

Для получения токена — отправьте заявку в свободной форме на integrations@rkeeper.ru. В теме должно быть указано: Доступ к API l.ucs.ru

все хеши передаются в нижнем регистре

Для авторизации в Api к заголовку запроса нужно добавить

usr : Base64(userName + “;” + hPassword + “;” + md5(token)). Такой заголовок нужно передавать во все запросы.

Пример:

GET http://some.addr/api/dealer/getall HTTP/1.1
Content-Type: application/xml
usr: MTtiNTljNjdiZjE5NmE0NzU4MTkxZTQyZjc2NjcwY2ViYTsxQTVGNjYzQTczQzlBNzdDQUIyNkI1MUU2NDIyMjI4RA==
Host: localhost

Описание запросов (управление объектами)

Все запросы возвращают объекты вида

<Objects>
<Id>102620000</Id>
<Name>Central office</Name>
<CorparationId>10262</CorparationId>
<CorparationCode>10262</CorparationCode>
<CorparationName>ООО "Сабвей-КВ" м.Белые ворота</CorparationName>
<CityId>5555</CityId>
<CityName>Не определен</CityName>
<Country>Не определен</Country>
<CountryId>0</CountryId>
<IsMain xsi:nil="true"/>
<OwnerId xsi:nil="true"/>
<IsActive xsi:nil="true"/>
<Deleted>0</Deleted>
<DateOpen xsi:nil="true"/>
<IdGroupObject>1</IdGroupObject>
<GroupName>Все</GroupName>
<Code>102620000</Code>
<DealerId>1</DealerId>
<DealerName>rkeeper-Москва</DealerName>
<AutoCreateKey xsi:nil="true"/>
<LimitationGeneration xsi:nil="true"/>
<Color>#fff</Color>  
<Flag>1</Flag>  
<EeiKey>066d5ae4-ce4f-4757-a35f-cb515de56152</EeiKey>    
</Objects>

Полный список объектов доступный пользователю

api/Object/Get

Объекты корпорации

api/Object/GetObjectsByCorporation?corpId=10262

Объект по Id

api/Object/GetObjectsById/102620000

Объекты по Названию

api/Object/GetObjectsByName?name=Шоурум

Описание запросов (работа с лицензиями)

Информация о мастер лицензиях объекта

Для получения списка мастер лицензий посылаем GET запрос

/api/License/GetMasterLicense?objectId=199999999

в ответ получаем

<ArrayOfMasterLicense xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <MasterLicense>
        <SoftId>1</SoftId>
        <SoftName>RKeeper 7 Stations</SoftName>
        <Qty>108</Qty>
        <ExpirationDate>2014-12-31T00:00:00</ExpirationDate>
        <Certificate>5345345,3456</Certificate>
    </MasterLicense>
    <MasterLicense>
        <SoftId>8</SoftId>
        <SoftName>RKeeper 7 Web Reports</SoftName>
        <Qty>2</Qty>
        <ExpirationDate>2014-05-21T00:00:00</ExpirationDate>
    </MasterLicense>
</ArrayOfMasterLicense>

Информация о лицензиях объекта

Для получения списка мастер лицензий посылаем GET запрос

/api/License/GetLicenseByObject?objectId=199999999

в ответ получаем

<ArrayOfLicense xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
     <License>
        <SoftId>6</SoftId>
        <SoftName>RKeeper 7 Report Server</SoftName>
        <Qty>2</Qty>
        <ExpirationDate>2014-01-09T00:00:00</ExpirationDate>
        <Key>2E987C25</Key>
        <LicenseCode>12277-2861-29784-54975-5483-18707</LicenseCode>
        <User>2356</User>
        <Tag>0</Tag>
        <DateGeneration>2013-10-09T13:02:15.479</DateGeneration>
        <Status>Active</Status>
        <LicenseType>License</LicenseType>
    </License>
    <License>
        <SoftId>1</SoftId>
        <SoftName>RKeeper 7 Stations</SoftName>
        <Qty>2</Qty>
        <ExpirationDate>2013-10-10T00:00:00</ExpirationDate>
        <Key>2A9B690B</Key>
        <LicenseCode>24403-31800-37576-58968-52854-10312</LicenseCode>
        <User>2240</User>
        <Tag>0</Tag>
        <DateGeneration>2013-09-10T13:36:07.772</DateGeneration>
        <Status>OldLicense</Status>
        <LicenseType>SOSCode</LicenseType>
    </License>  
</ArrayOfLicense>

Генерация лицензии

Для генерации лицензии отправляется POST запрос на адрес

api/license/GenerateLicense

c xml

<?xml version="1.0" encoding="utf-8"?>
<GeneratedInfo>
  <LicType>License</LicType>  или SOSCode
  <CustomerId>199999999</CustomerId>
  <SoftId>1</SoftId>
  <ExpirationDate>2014-12-31T00:00:00</ExpirationDate>
  <LimitQty>1</LimitQty>
  <RequestCode>34820-45281-26343-936-46392-33585-45586</RequestCode>
  <Comment>Обязательно для генерации соскода</Comment>
</GeneratedInfo>

ответ:

<?xml version="1.0" encoding="utf-8"?>
    <License>
        <SoftId>1</SoftId>
        <SoftName>RKeeper 7 Stations</SoftName>
        <Qty>2</Qty>
        <ExpirationDate>2013-10-10T00:00:00</ExpirationDate>
        <Key>2A9B690B</Key>
        <LicenseCode>24403-31800-37576-58968-52854-10312</LicenseCode>
        <User>2240</User>
        <Tag>0</Tag>
        <DateGeneration>2013-09-10T13:36:07.772</DateGeneration>
        <Status>OldLicense</Status>
        <LicenseType>SOSCode</LicenseType>
    </License>