Перейти к содержанию

Классы выпусков

Класс выпуска это набор разнообразные параметры выпуска влияющие на его формирование (параметры одноимённые с issue.send)

Подходит для хранения "типичного набора параметров" одинаковых для нескольких черновиков или выпусков.

Так же полезен просто для классификации выпусков.

Для использования класса просто указывает его id или alias в issue.send и/или issur.draft.*

Приоритет определения параметров выпуска в случае нескольких источников описан в issue.send.

Список классов

{

  "action" : "issue.class.list" 

-- параметры фильтрации, должен быть хотя бы один параметр
--
-- если выбрана последняя порция списка то ответ содержит "last_page" : 1
--
-- доступны поля
--
-- issue_class.id             -- код класса
-- issue_class.name           -- "название" 
-- issue_class.create.date    -- "дата и время создания" -- Ys, null
-- issue_class.update.date    -- "дата и время последнего изменения" -- Ys, null
-- issue_class.alias          -- "альтернативный идентификатор" 
-- issue_class.reltype        -- число
-- issue_class.relref         -- число
--

,"filter" : [ фильтр в синтаксисе stat.uni ]

,"order" : [ сортировка ответа в синтаксисе stat.uni ]

,"skip" : количество пропускаемых записей от начала списка -- по умолчанию 0

,"first" : количество выбираемых записей после skip -- по умолчанию 50, не более 50

}

ответ

{

 <общие поля>

,"list" : [

            {

             "id" : код класса

            ,"alias" : "альтернативный идентификатор" 

            ,"name" : "название" 

            ,"create.date" : "дата и время создания" -- Ys, null

            ,"update.date" : "дата и время последнего изменения" -- Ys, null

            ,"reltype" : ...

            ,"relref" : ...
            }

            ...

           ]

}

Чтение класса

{

  "action" : "issue.class.get",

  "id" : код класса или "альтернативный идентификатор" 
}

ответ

{

  <общие поля>

  "obj" : {

      "id" : код класса

      ,"alias" : "альтернативный идентификатор" 

      ,"name" : "название класса" 

      ,"create.date" : "дата и время создания" -- Ys, null

      ,"update.date" : "дата и время последнего изменения" -- Ys, null

      ,"reltype" : ...

      ,"relref" : ...

      -- Настройки выпуска (аналогично issus.send)

      ,"relink" : .....

      ,"relink.param" : .....

      ,"multiple" : .....

      ,"tz_limit" : .....

      ,"tz_observance" : .....

      ,"tz_best" : .....

      ,"contact_rate" : .....

      ,"users.slice" : .....

      ,"only_unique" : .....

      ,"link.qsid" : .....

      ,"campaign.id" : .....

      ,"dkim.id" : .....

      ,"extra" : .....

      ,"group" : .....

      ,"issue_member_list" : .....

      ,"unsub_list" : .....

      ,"ignore_stoplist" : .....
  }

}

Создание или изменение класса

Создает или изменяет параметры и содержимое классов.

При изменении уже существующего класса, изменяются только указанные в obj параметры. Не указанные - остаются как были.

{

  "action" : "issue.class.set" 

  ,"obj" : {
            "alias" : "альтернативный идентификатор" -- не обязательно. не должен начинаться с цифры и не должен содержать пробелы
                                                     -- может использоваться во всех местах где требуется указать код класса

            ,"name" : "название класса" -- обязательно при создании

            ,"reltype" : ...

            ,"relref" : ...

           -- Настройки выпуска (аналогично issus.send)

           -- Для удаления параметра из класса используйте значение null - для части параметров играет роль даже просто их наличие

            ,"relink" : .....

            ,"relink.param" : .....

            ,"multiple" : ..... - игнорируется при issue.send.multi

            ,"tz_limit" : .....

            ,"tz_observance" : .....

            ,"tz_best" : .....

            ,"contact_rate" : .....

            ,"users.slice" : ..... - игнорируется при issue.send.multi

            ,"only_unique" : ..... - игнорируется при issue.send.multi

            ,"link.qsid" : .....

            ,"campaign.id" : "код кампании" 

            ,"dkim.id" : " : .....

            ,"extra" : .....

            ,"issue_member_list" : .....

            ,"unsub_list" : .....

            ,"ignore_stoplist" : .....
           }

  -- необязательные

  ,"id" : код класса или "альтернативный идентификатор" -- если не указан, создается новый

  ,"return_fresh_obj" : "нужно вернуть данные объекта -- да, нет ( 1 | 0 )" 

}

ответ

{

 <общие поля>

 ,obj  { ... } -- объект в формате issue.class.get если "return_fresh_obj" : 1

}

Удаление класса

{

  "action" : "issue.class.delete" 

-- одного

  ,"id" : код класса или "альтернативный идентификатор" 

--- или нескольких

  ,"id" : [код или "альтернативный идентификатор класса1", код или "альтернативный идентификатор класса2", .. ]
}

ответ

{

 <общие поля>

}