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

Добавить сегмент

POST

/organization/segment/add

 

Заголовки

token // Токен доступа выданный при авторизации

 

Входной JSON

{

//[Необязательный]. Если не передан - сервис генерирует и возвращает в ответе новый идентификатор.

   "id":"c66bb307-2a0a-4c14-b665-e0fe97a42ebf",

 

// Группа, в которой должен быть сегмент карт

   "parent_id":"",

 

   "name": "Детская одежда со скидкой 5%",

 

//[Необязательный]. Максимальный процент оплаты сегмента. -1 - Не указан.

   "max_payment_percent":33.333

 

//[Необязательный]. Признак того, что это группа, по умолчанию false, может быть в true

"isgroup":false

}

 

Выходной JSON

{
       "code": 0,
       "message": "Операция выполнена",

       "id": "c66bb307-2a0a-4c14-b665-e0fe97a42ebf"

}

 

Изменить сегмент

POST

/organization/segment/{id}

 

Параметры

id // Идентификатор существующего сегмента

 

Заголовки

token // Токен доступа выданный при авторизации

 

Входной JSON

{

   "name": "Детская одежда со скидкой 5%" ,

   "max_payment_percent":33.333

//[Необязательный]. Максимальный процент оплаты сегмента. -1 - Не указан.

}

 

Выходной JSON

{
   "code": 0,
   "message": "Операция выполнена"

}

 

 

Удалить сегмент

POST

/organization/segment/{id}/delete

 

Параметры

id // Идентификатор существующего сегмента

 

Заголовки

token // Токен доступа выданный при авторизации

 

Выходной JSON

{
   "code": 0,
   "message": "Операция выполнена"

}

 

 

Получить сегмент

GET

/organization/segment/{id}

 

Параметры

id // Идентификатор существующего сегмента

 

Заголовки

token // Токен доступа выданный при авторизации

 

Выходной JSON

{
   "code": 0,
   "message": "Операция выполнена",

   "segment": 

    {

      "row_number":      1,

      "id":"82bbec33-e4c4-483a-9db0-0da6d7265a3b",

      "parent_id":"",

      "isgroup":false,

      "name":"Белье"  

      "max_payment_percent":20

    }

}

 

 

Получить список сегментов

GET

/organization/segment

 

Параметры в запросе

page //[Необязательный]. Номер страницы которую нужно получить

per_page //[Необязательный]. Количество строк на страницу

 

Заголовки

token // Токен доступа выданный при авторизации

 

Выходной JSON

{

  "code":  0,

  "message":"Операция выполнена",

  "segments": 

  [

     {

      "row_number":      1,

      "id":"82bbec33-e4c4-483a-9db0-0da6d7265a3b",

      "parent_id":"",

      "isgroup":false,

      "name":"Белье"  

      "max_payment_percent":20

    },

    {

      "row_number":      2,

      "id":"19dbf9b3-1381-452b-9a51-e74d858f0299",

      "parent_id":"",

      "isgroup":false,

      "name":"Верхняя одежда",

      "max_payment_percent":30  

    }

  ],

  "pagination": 

      {

         "per_page":    2,    // Количество строк на страницу

         "page"    :    1,     // Номер текущей страницы

         "items"   :    15275, // Всего записей

         "pages"   :    1528   // Всего страниц

     }

}

 

 

Добавить номенклатуру сегмента

POST

/organization/article/add

 

Заголовки

token // Токен доступа выданный при авторизации

 

Входной JSON

{

// Обязательный. Идентификатор номенклатуры. Должны совпадать с идентификаторами передаваемыми при расчете скидок.

Сервис не генерирует идентификаторы номенклатуры.

 "id":"8ecc047b-ad9f-4fdd-98ee-88e2618f9191",

 

  "segment_id":"b6a16c0c-d543-4f7f-8386-4d4821ea3018",

  "name":"Тапочки, Белые, 45"

 

// Необязательный. Цена, которая действует на артикул. Необходимо для срабатывания одной из типов скидок

      "special_price":0,

 

// Необязательный. Дата начала действия цены

      "start_date":      0,

 

// Необязательный. Дата окончания действия цены

      "end_date":      0 

 

}

 

Выходной JSON

{
       "code": 0,
       "message": "Операция выполнена",

       "id": "c66bb307-2a0a-4c14-b665-e0fe97a42ebf"

}

 

Изменить номенклатуру сегмента

POST

/organization/article/{id}

 

Параметры

id // Идентификатор существующей номенклатуры

 

Заголовки

token // Токен доступа выданный при авторизации

 

Входной JSON

{

// [Необязательный]. Если передан, сервис пытается найти номенклатуру в указанном сегменте. В противном случае, выполняется поиск во всех сегментах.

  "segment_id":"b6a16c0c-d543-4f7f-8386-4d4821ea3018",

 

// Новое наименование номенклатуры

  "name":"Тапочки, Белые, 48"

 

// Необязательный. Цена, которая действует на артикул. Необходимо для срабатывания одной из типов скидок

      "special_price":0,

 

// Необязательный. Дата начала действия цены

      "start_date":      0,

 

// Необязательный. Дата окончания действия цены

      "end_date":      0

}

 

Выходной JSON

{
       "code": 0,
       "message": "Операция выполнена"

}

 

 

 

 

 

Удалить номенклатуру сегмента

POST

/organization/article/{id}/delete

 

Параметры

id // Идентификатор существующей номенклатуры

 

Заголовки

token // Токен доступа выданный при авторизации

 

Входной JSON

{

  "segment_id":"b6a16c0c-d543-4f7f-8386-4d4821ea3018",

// [Необязательный]. Если передан, сервис пытается найти номенклатуру в указанном сегменте. В противном случае, выполняется поиск во всех сегментах.

}

 

Выходной JSON

{
       "code": 0,
       "message": "Операция выполнена"

}

 

 

Получить номенклатуру сегмента

GET

/organization/article

 

Параметры в строке запроса

segment_id  // [Необязательный]. Идентификатор сегмента, для которого необходимо получить номенклатуру

 

page //[Необязательный]. Номер страницы которую нужно получить

per_page //[Необязательный]. Количество строк на страницу

 

Заголовки

token // Токен доступа выданный при авторизации

 

Выходной JSON

{

  "code":  0,

  "message":"Операция выполнена",

  "articles": 

  [

    {

      "id":"b125f15e-08c7-4ff9-a05d-3df319a4306e",

      "segment_id":"ad6aa9e3-3194-4ae4-b620-987598bc8794",

      "name":"Тапочки, Белые, 48", 

      "special_price":0,

      "start_date":      0,

      "end_date":      0 

    } 

  ],

     "pagination": 

       {

         "per_page":    1,    // Количество строк на страницу

         "page"    :    1,     // Номер текущей страницы

         "items"   :    15275, // Всего записей

         "pages"   :    1528   // Всего страниц

      }

}

 

 

 

 

 

Пакетная обработка номенклатуры сегмента

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

POST

/organization/article/batch/{operation}

 

Параметры

operation = [add,update,delete] // Обязательный. Одно из перечисленных значений.

 

Заголовки

token // Токен доступа выданный при авторизации

 

Входной JSON

{

  "articles": 

  [

    {

      "id":"5dece660-8c3a-4570-a4be-196b11528df3",

// При операции delete - необязательный. Если не передается - удаляется вся номенклатура сегмента

      "segment_id":"96c90178-d3ee-4236-8185-545317821120",

      "name":"Тапочки, Белые, 46",

      "special_price":0,

      "start_date":      0,

      "end_date":      0      

    },

    {

      "id":"5fc3f73d-bbc8-4f30-bb7a-e9844f66e693",

// При операции delete - необязательный. Если не передается - удаляется вся номенклатура сегмента

      "segment_id":"96c90178-d3ee-4236-8185-545317821120",

      "name":"Тапочки, Красные, 43",

      "special_price":0,

      "start_date":      0,

      "end_date":      0      

    } 

  ]

}

 

Выходной JSON

{
       "code": 0,
       "message": "Операция выполнена"

}