Введение в API PCSP

Последнее обновление: 16 июля 2019 г.

Содержание

Описание базы данных

Структура и синтаксис запросов

Описание параметров

Веб-версия web.se.ecatalog.ru

Описание базы данных

База данных продукции Schneider Electric (она же “API PCSP”, “локальная продуктовая база”, “локальное API”, имеется в виду локально для России) насчитывает информацию более чем о 200 000 референсов (или “артикулов”). Основная информация структурирована в соответствии со стандартом Etim версий 5 и 6. Дополнительная информация имеет свои собственные классификацию и структуру данных, простые для использования.

Надо отметить, что наиболее полная информация содержится по тарифному периметру (около 75 000 референсов). Для них всегда есть информация о цене и остатках. Для всех остальных информации может быть значительно меньше или отсутствовать вообще. Например, чтобы узнать цену или наличие у нетарифных референсов, необходимо запрашивать эту информацию отдельно у вашего менеджера со стороны Schneider Electric. Для таких референсов через API эти данные не передаются.

Информация по референсам (в основном тарифные) обновляется ежедневно и содержит в себе:

  • Названия референсов
  • Принадлежность к тарифу и цены
  • Серии и их id
  • Описания
  • Изображения - главное и дополнительные
  • Сертификаты на продукцию для разных стран
  • Основные характеристики
  • Ссылку на плеер фото 360
  • Фото в интерьере
  • Инфографику
  • Статьи
  • Видео
  • Коммерческое название
  • Коммерческое описание
  • Etim характеристики версий 5 и 6 - в соответствии с международной классификацией
  • Каталоги и дополнительные материалы
  • Логистические данные
  • Дополнительные характеристики
  • Информацию о распродажах
  • Остатки
  • Ключевые слова
  • Связанные референсы


Получение данных представляет собой работу с REST API через GET-запросы по протоколу HTTP. Ответ приходит в виде структурированных сообщений форматов XML или JSON, в кодировке UTF-8.

Пример выдачи в XML:

<content>
<result>success</result>
<data>
<reference>
<commercialRef>GSL000434</commercialRef>
<tariff>
<value>moscow</value>
<description>ШЭ (Москва)</description>
</tariff>
<description>
GLOSSA СВЕТОРЕГУЛЯТОР (диммер) поворотный, 300Вт, в сборе, ТИТАН
</description>
<images>
<image>
<url>
http://static-pcsp.se-ecatalog.ru/image/50732/TMcGh147.jpeg
</url>
<is_main>1</is_main>
<size>991557</size>
<type>jpeg</type>
</image>
<image>
<url>
http://static-pcsp.se-ecatalog.ru/image/50732/527b8cd7b383dce5b38f7b0c20fc7767101.jpg
</url>
<size>60205</size>
<type>jpg</type>
</image>


Пример выдачи в JSON:

{"result":"success","data":[{"commercialRef":"GSL000434","tariff":"moscow","description":"GLOSSA \u0421\u0412\u0415\u0422\u041e\u0420\u0415\u0413\u0423\u041b\u042f\u0422\u041e\u0420 (\u0434\u0438\u043c\u043c\u0435\u0440) \u043f\u043e\u0432\u043e\u0440\u043e\u0442\u043d\u044b\u0439, 300\u0412\u0442, \u0432 \u0441\u0431\u043e\u0440\u0435, \u0422\u0418\u0422\u0410\u041d","images":[{"url":"http:\/\/static-pcsp.se-ecatalog.ru\/image\/50732\/TMcGh147.jpeg","size":991557,"type":"jpeg","is_main":1},{"url":"http:\/\/static-pcsp.se-ecatalog.ru\/image\/50732\/527b8cd7b383dce5b38f7b0c20fc7767101.jpg","size":60205,"type":"jpg"},{"url":"http:\/\/static-pcsp.se-ecatalog.ru\/image\/50732\/6c9b0ec745ef9ec03216e8ac07b8c345.jpg","size":55208,"type":"jpg"},{"url":"http:\/\/static-pcsp.se-ecatalog.ru\/image\/50732\/817b8cd7b383dce5b38f7b0c20fc7767101.jpg","size":35450,"type":"jpg"}


В дальнейшем будут рассматриваться примеры выдачи в формате XML, как более простые для визуального восприятия.

Структура и синтаксис запросов

В примерах могут встречаться фигурные скобки {}. В синтаксисе эти скобки не используются, все значения необходимо указывать без них.

Пример ссылки для вызова методов:
http://web.se-ecatalog.ru/new-api/XML/getdata?accessCode={YourApiToken}

/new-api - версия API. Старая версия имеет категорию api/ и более не поддерживается. Во избежание ошибок настроена принудительная переадресация всех ссылок на новую версию.

/XML - формат выдачи данных. Поддерживаются форматы XML и JSON.

/getdata - наименование используемого метода для получения данных

/?accessCode={} - параметр, передающий ваш API-Token. Токен должен указываться сразу после знака равно = и не иметь пробелов.

В качестве основного параметра используется API-Token, выдаваемый пользователю при регистрации в системе. Без него доступ к API не будет разрешен системой безопасности.

Описание параметров

Каждый метод поддерживает свой собственный список параметров. Этот список обозначается вначале каждого раздела документации.

&page={N} - пагинация, осуществляет переход к указанной странице, где N - ее номер. Общее количество страниц в выдаче системой не определяется (нецелесообразно), поэтому осуществлять перебор данных постранично нужно до тех пор, пока ответ не перестанет возвращать продуктовые данные (выдача станет пустой).

Пример запроса:
http://web.se-ecatalog.ru/new-api/XML/getdata?accessCode={YourApiToken}&page=2

&pageSize={N} – задает количество записей в выдаче, где N - числовое значение. По умолчанию большинство методов содержит лимит в 50 записей на страницу. Максимальное значение лимита не установлено, но не рекомендуется указывать больше 1 000, иначе запрос может долго отрабатывать.

Пример запроса:
http://web.se-ecatalog.ru/new-api/XML/getdata?accessCode={YourApiToken}&pageSize=100

&commercialRef={N} – запрос данных по конкретному референсу или списку референсов, где N - точное обозначение референса, например GSL000434. Если в качестве значения задается список референсов, то они должны перечисляться через запятую без пробелов: GSL000434,16765,18636. Максимальное значение лимита не установлено, но не рекомендуется указывать больше 1 000, иначе запрос может долго отрабатывать.

Примеры запросов:
http://web.se-ecatalog.ru/new-api/XML/getdata?accessCode={YourApiToken}&commercialRef=GSL000434
http://web.se-ecatalog.ru/new-api/XML/getdata?accessCode={YourApiToken}&commercialRef=GSL000434,16765,18636

&date={N} – указывает на дату, от которой следует запросить обновленные данные. Параметр поддерживается только методами delta. Формат данных «дд.мм.гггг», например «20.04.2019».

Пример запроса:
http://web.se-ecatalog.ru/new-api/XML/getdeltaproducts?accessCode={YourApiToken}&date=15.07.2019

Запросы можно строить с использованием нескольких параметров одновременно.

Пример запрос с использованием нескольких параметров:
http://web.se-ecatalog.ru/new-api/XML/getdata?accessCode={YourApiToken}&page=2&pageSize=100

Для связи параметров используется знак апмерсанд &. Порядок указания параметров может быть в разной последовательности, на выдачу это не влияет.


&discount=1 - добавляет в выдачу метода getprice информацию о распродаже. Если референс имеет дисконтную цену, то в выдаче появляются теги <discount_start> - дата начала распродажи и <discount_end> - дата завершения распродажи включительно. Цена отображается уже с учетом скидки. Для отключения действия используется значение 0.

Пример запроса информации по скидкам:
http://web.se-ecatalog.ru/new-api/XML/getprice?accessCode={YourApiToken}&discount=1

Пример выдачи со скидками:

<reference>
<commercialRef>A9C62225</commercialRef>
<description>АВТ. ВЫКЛ. REFLEX iC60N 2П 25A C Ti24</description>
<series>Acti9_Smartlink</series>
<price>4432.36</price>
<date>10.06.2019</date>
<discount_start>01.06.2019</discount_start>
<discount_end>31.08.2019</discount_end>
<unit>за штуку</unit>
</reference>
Крайне не рекомендуется работа с API напрямую. Стройте архитектуру вашего приложения таким образом, чтобы все данные сперва сохранялись в вашей БД, а уже потом использовались вами. В ином случае, излишние прямые запросы к API нагружают сервер, а при его сбое ваше приложение перестанет корректно работать.

Веб-версия web.se.ecatalog.ru

Веб-версия базы web.se-ecatalog.ru поддерживает поиск и выгрузку некоторой продуктовой информации. На примере референса GSL000434 можно видеть наличие той или иной информации. Веб-версия не предназначена для массового получения сведений о продуктах, поэтому для получения больших объемов данных и их автоматического обновления необходимо использовать API.