Пакетная загрузка с использованием XML-фида
Назначение
Одним из требований технической интеграции DMS с Авто.ру Бизнес является реализация полноценного REST клиента.
Для упрощения интеграции с Авто.ру Бизнес имеется возможность загрузки информации об автомобилях в DMS при помощи XML-фида.
Как работает?
- На стороне DMS реализуется выгрузка в XML-файл текущего склада, а также недавно выбывших со склада и удаленных авто.
- Предоставляется общий доступ к этому файлу для Авто.ру Бизнес через HTTP(s)/FTP(s) протоколы обязательной авторизацией.
- В службу поддержки Авто.ру Бизнес направляется запрос на подключение загрузки фида. Указываются URL фида, логин и пароль для доступа к этому фиду, а также CLIENTID (см. авторизацию в API), от которого будет производиться загрузка склада из файла.
- После подключения фида, Авто.ру Бизнес будет загружать и обрабатывать XML-фид каждые три часа.
- Отчет по обработке фида будет отправлен на email, указанный в XML-фиде.
Рекомендации к серверу и уровню безопасности данных
- В целях обеспечения безопасности, помимо basic-аутентификации, желательно использовать криптографический протокол TLS 1.2 и выше для защиты передаваемых данных.
- Желательно настроить веб-сервер таким образом, чтобы передавать HTTP-заголовок
Content-Type: application/xml; charset=utf-8
, как это рекомендует RFC 7303.
XML-фид
Фид может содержать информацию о:
- Размещенных на складе автомобилях.
- Автомобилях, выбывших за последнее время (например, за последние 10 дней).
- Удаленных из DMS авто.
Фид не должен содержать более 1000 объектов – в этом случае обрабатываются только первые по списку записи, остальные игнорируются. Информация о необработанных автомобилях содержится в отчете.
Главная секция <feed>
Атрибут |
Обязательность |
Описание |
Пример значения |
<version> |
Да |
Версия. Должна быть «1» |
1 |
<creationDate> |
Да |
Дата и время генерации фида в формате RFC 3339 |
2021-07-12T14:38:09+03:00 |
<email> |
Нет |
Email, на который будет отправлено письмо с результатами обработки фида |
robot@cm.expert |
<dmsCars> |
Да |
Коллекция элементов <dmsCar> |
Секция <dmsCar>
- ID автосалона в теге
<dealerId>
и номер авто на складе в теге<dmsCarId>
(обязательно для всех случаев). - Информация об авто в формате XML (для авто на складе или выбывшего авто).
- Тег
<deleted>
со значением True или true (для удаленного из DMS авто).
Имена тегов и их значения (кроме тега <deleted>
) соответствуют атрибутам авто на складе в Авто.ру Бизнес. См. раздел «Атрибуты авто на складе в Авто.ру Бизнес», а также описание атрибутов в Swagger документации API.
Внимание
Названия атрибутов должны точно соответствовать документации, в том числе в части регистра.
Пример
<?xml version="1.0" encoding="UTF-8" ?>
<feed>
<version>1</version>
<creationDate>2021-07-12T14:38:09+03:00</creationDate>
<email>robot@cm.expert</email>
<dmsCars>
<dmsCar>
<dmsCarId>#A</dmsCarId>
<year>2014</year>
<mileage>118100</mileage>
<vin>XTA217130F0118693</vin>
<stockState>inv/stockState>
<arrivedAt>2018-08-27T00:00:00+03:00</arrivedAt>
<buyoutPrice>220000</buyoutPrice>
<markup>220000</markup>
<sellingPrice>220000</sellingPrice>
<contractType>tradeinnew</contractType>
<photosUrls>http://example.org/photo1.jpg</photosUrls>
<photosUrls>http://example.org/photo2.jpg</photosUrls>
<photosUrls>http://example.org/photo3.jpg</photosUrls>
<photosUrls>http://example.org/photo4.jpg</photosUrls>
<dealerId>1</dealerId>
</dmsCar>
<dmsCar>
<dmsCarId>#B</dmsCarId>
<year>2014</year>
<mileage>118100</mileage>
<vin>XTA217130F0118693</vin>
<stockState>out</stockState>
<outReason>other</outReason>
<outAt>2018-09-11T00:00:00+03:00</outAt>
<arrivedAt>2018-08-27T00:00:00+03:00</arrivedAt>
<buyoutPrice>220000</buyoutPrice>
<markup>220000</markup>
<sellingPrice>220000</sellingPrice>
<contractType>tradeinnew</contractType>
<dealerId>2</dealerId>
</dmsCar>
<dmsCar>
<dmsCarId>#C</dmsCarId>
<dealerId>1</dealerId>
<deleted>true</deleted>
<dmsDeletedAt>2017-03-10T05:40:00+03:00</dmsDeletedAt>
</dmsCar>
</dmsCars>
</feed>