SellOut+

Интеграция с API

Терминология

Источник — источник данных.

Запись источника — исходные данные, которые были загружены в SellOut+. Записи источника не могут быть изменены через интерфейс приложения. Изменение записи источника возможно лишь при загрузке данных. Запись источника может быть связана (смеплена) с одной итоговой записью.

Итоговая запись — редактируемая через интерфейс приложения запись таблицы. Содержит обработанные операторами данные. С одной итоговой записью может связано несколько записей источника.

Мепинг — связь записи источника с обработанной итоговой записью.

Краткое описание

SellOut+ предоставляет API для интеграции загруженных данных с другими системами. API доступен по этому адресу

https://app.sellout.plus/api/sellout/sync

API возвращает данные в одном из двух режимов:

  • все данные из таблицы (не указан параметр RowVersion);
  • изменившиеся (в т.ч. и удалённые) с момента прошлой выгрузки данные (указан параметр RowVersion).

Список доступных таблиц

Используя API можно получить данные из следующих таблиц:

  • ref.Company — справочник компаний
  • ref.Customer — справочник торговых точек и складов;
  • ref.LegalEntity — справочник юр. лиц;
  • ref.OutletAssortmentCategory — категории ассортимента товара;
  • ref.OutletCategory — категории торговых точек;
  • ref.OutletFormat — справочник форматов торговых точек;
  • ref.SKU — справочник SKU;
  • ref.TradeType — справочник типов торговли;
  • data.Matrix — ассортиментная матрица в изначальном виде (по формату, по категории ассортимента и т.д.);
  • data.MatrixTotal — ассортиментная матрица по торговым точкам;
  • data.Sales_OffTake — данные по продажам из торговых точек;
  • data.Sales_SellOut — данные по отгрузкам в торговые точки;
  • data.Sales_Purchase — данные по закупкам на склады;
  • data.Stock_Warehouse — данные по остаткам на складах;
  • data.Stock_Outlet — данные по остаткам в торговых точках;
  • data.Load — информация по загруженным файлам.

Авторизация

Table Обязательный параметр. Название таблицы, данные из которой нужно получить. Может принимать одно из значений из списка доступных таблиц. RowVersion Необязательный параметр. Восьмибайтовое целое число. Версия изменений данных. Если не указано, то возвращаются все данные из таблицы. Если указано, то к выходным данным применяется фильтр where RowVersion > @RowVersion и возвращаются только изменённые данные. Список изменений данных с момента прошлой выгрузки можно получить, передавая максимальный RowVersion из результатов прошлого запроса.

Входные данные (параметры)

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

Authorization: Bearer  < token >

< token > — уникальный токен пользователя, который можно получить обративших в службу поддержки support@sellout.plus.

Выходные данные

API возвращает данные в формате CSV. В качестве разделителя между столбцами используется ;

В одной строке данных возвращаются:

  • атрибуты записи источника;
  • системный атрибут RowVersion. Восьмибайтный целочисленный счётчик, который увеличивается при каждой операции вставки или обновления в таблице. Значение уникально. Нужен для отслеживания изменений данных;
  • системный атрибут FlagDeleted. Если равен 1, то запись была удалена из SellOut+, и нужно соответствующим образом обработать эту ситуация в Вашей системе;
  • атрибуты cвязанной итоговой записи, если запись источника уже была смеплена. Названия атрибутов итоговой записи начинаются с префикса ID_mapping_MDT

Для удалённых записей будут заполнены только три атрибута: ID , RowVersion, FlagDeleted.

Примеры использования

Рассмотрим работу с API на примере получения данных из справочника ref.Customer. Для обращений к API используем системную программу cURL

Все данные из таблицы ref.Customer

curl -H "Authorization: Bearer 202CB962AC59075B964B07152D234B90"
"https://app.sellout.plus/api/sellout/sync?
Table=ref.LegalEntity" -o result.csv

Запрос возвращает содержимое справочника ref.Customer целиком, результат сохраняется в файле result.csv

 

 

Изменившиеся данные в таблице ref.Customer

Передадим в качестве RowVersion максимальное значение из полученного ранее набора данных 1235

curl -H "Authorization: Bearer 202CB962AC59075B964B07152D234B90"
"https://app.sellout.plus/api/sellout/sync?
Table=ref.LegalEntity&RowVersion=1235" -o result.csv

Запрос возвращает только строки данных с версией изменений больше чем 1235.