Account — обслуживание абонентов (для обслуживающей организации)

Методы группы Account внешнего программного интерфейса Менеджера сервиса предназначены для обслуживания абонентов

Сводка по методам

МетодПримечание
root
update_sso_keyВыполняет запрос на отправку обновления ключа SSO авторизации.
confirm_sso_key Подтверждает получение ключа SSO авторизации.
truncate_sso_keyУдаляет все ключи SSO авторизации кроме актуального.
attached_info_for_subscribingПолучение списка дополнительных сведений абонента, нужных для оформления платной подписки
customers
listВозвращает список обслуживаемых абонентов
infoВозвращает информацию об указанном обслуживаемом абоненте.

attached_info

Возвращает дополнительную информацию (реквизиты и свойства) обслуживаемого абонента.

update_attached_info

Обновляет дополнительную информацию (реквизиты и свойства) обслуживаемого абонента.
fill_by_public_idЗаполнение сведений абонента по публичному идентификатору.

customer_subscriptions

listВозвращает список подписок обслуживаемых абонентов
infoВозвращает информацию об указанной подписке обслуживаемого абонента
createСоздает новую подписку для указанного обслуживаемого абонента
сreate_enhancedСоздает новую подписку на расширение тарифа для указанного абонента
renewВозобновляет указанную подписку (создает аналогичную с новым сроком действия)
prolongСоздает продлевающую подписку
extendСоздает расширяющую подписку
set_servant_tariffУстанавливает тариф обслуживающей организации в существующей подписке

site

listВозвращает список сайтов обслуживающей организации по коду абонента обслуживающей организации

account/update_sso_key

Выполняет запрос на отправку обновления ключа SSO авторизации.

ПараметрТипПримечание
Запрос
accountЧислоКод обслуживающей организации.
key_idСтрока(36)

Идентификатор ключа в формате GUID, генерируется на стороне обслуживающей организации.

max_ageЧисло

Срок жизни ключа авторизации.

Ответ (1)
key_idСтрока(36)Идентификатор ключа в формате GUID.

В результате вызова на сервис для получения ключа SSO придет POST-запрос с данными ключа.

Пример тела POST запроса с данными ключа SSO
{
"id": "19ab9b16-3262-49da-93a6-beef57a5e9fa",
"expired": "2018-08-10T09:43:42",
"key": "VT/QeNEo4yPotXZT6YNC2RHJwub4pAPqGs6Lq2Kbeqg="
}

Адрес сервиса для получения ключа SSO-авторизации задается в настройках отправки SSO-ключа администраторам облачного сервиса Фреш.

Пример запроса
POST {{server}}/{{url}}
Authorization: Basic {{auth}}
 
{
    "auth": {
        "account": 3
    },
    "general": {
        "type": "usr",
        "method": "account/update_sso_key"
    },
    "account": 3,
    "key_id": "19ab9b16-3262-49da-93a6-beef57a5e9fa",
    "max_age": 1800
}

 Вверх

account/confirm_sso_key

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

ПараметрТипПримечание
Запрос
accountЧислоКод обслуживающей организации.
key_idСтрока(36)

Идентификатор подтверждаемого ключа в формате GUID.

Ответ (1)
 нет параметров  


Пример запроса
POST {{server}}/{{url}}
Authorization: Basic {{auth}}
 
{
    "auth": {
        "account": 3
    },
    "general": {
        "type": "usr",
        "method": "account/confirm_sso_key"
    },
    "account": 3,
    "key_id": "19ab9b16-3262-49da-93a6-beef57a5e9fa"
}

 Вверх

account/truncate_sso_key

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

ПараметрТипПримечание
Запрос
accountЧислоКод обслуживающей организации.
actual_key_idСтрока(36)

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

Ответ (1)
 нет параметров  


Пример запроса
POST {{server}}/{{url}}
Authorization: Basic {{auth}}
 
{
    "auth": {
        "account": 3
    },
    "general": {
        "type": "usr",
        "method": "account/truncate_sso_key"
    },
    "account": 3,
    "actual_key_id": "a92c3998-a0c4-4530-9345-f2495cf37fb3"
}

 Вверх

account/attached_info_for_subscribing

Получение списка дополнительных сведений абонента, нужных для оформления платной подписки

ПараметрТипОписаниеПример
Запрос
idЧисло (+12.0)Код абонента1010
Ответ
errorsБулевоПризнак наличия ошибок заполненияfalse
propertiesСписок (0..*)Дополнительные сведения
  - keyСтрока переменная (100)Имя свойстваТариф
  - name *Строка переменная (75)Заголовок свойстваТариф
  - value *Число (любое), Строка неограниченной длины, Дата и время в строке формата ISO, БулевоЗначение свойстваИТСааС ПРОФ
  - typeСтрока неограниченной длиныТип свойстваadditional_value
  - required *БулевоЗаполнять обязательноtrue
  - tooltip *Строка неограниченной длиныПодсказкаТекст подсказки.
  - error *БулевоПризнак ошибкиfalse
  - message *Строка неограниченной длиныОписание ошибки
fieldsСписок (0..*)Дополнительные реквизиты
  - keyСтрока переменная (100)Имя реквизитаИНН
  - name *Строка переменная (75)Заголовок реквизитаИНН
  - value *Число (любое), Строка неограниченной длины, Дата и время в строке формата ISO, БулевоЗначение реквизита7799555550
  - typeСтрока неограниченной длиныТип реквизитаstring
  - required *БулевоЗаполнять обязательноtrue
  - tooltip *Строка неограниченной длиныПодсказкаТекст подсказки.
  - error *БулевоПризнак ошибкиfalse
  - message *Строка неограниченной длиныОписание ошибки
Пример запроса  Развернуть
{
  "id": 1010,
  "auth": {
    "account": 1010
  },
  "general": {
    "type": "usr",
    "method": "account/attached_info_for_subscribing"
  }
}
Пример ответа  Развернуть
{
  "errors": false,
  "properties": [
    {
      "key": "Тариф",
      "name": "Тариф",
      "value": "ИТСааС ПРОФ",
      "type": "additional_value",
      "required": true,
      "tooltip": "Текст подсказки.",
      "error": false,
      "message": ""
    }
  ],
  "fields": [
    {
      "key": "ИНН",
      "name": "ИНН",
      "value": "7799555550",
      "type": "string",
      "required": true,
      "tooltip": "Текст подсказки.",
      "error": false,
      "message": ""
    }
  ],
  "general": {
    "response": 10200,
    "error": false,
    "message": "",
    "version": 19,
    "sm_version": "1.1.7.3",
    "sm_timezone": "Europe/Moscow"
  }
}

 Вверх

account/customers/list

Метод возвращает список абонентов, обслуживаемых указанным абонентом. Абонент считается обслуживаемым, если между ним и указанным абонентом установлены взаимоотношения вида "Обслуживающая организация - абонент".

ПараметрТипПримечание
Запрос
idЧислоКод абонента обслуживающей организации
Ответ: customer (0..*)
idЧислоКод обслуживаемого абонента
nameСтрокаНаименование обслуживаемого абонента
public_idСтрокаПубличный идентификатор абонента
emailСтрокаЭлектронная почта абонента


Пример запроса  Развернуть
{
  "id": 1000,
  "auth": {
    "type": "user",
    "account": 1010
  },
  "general": {
    "version": 25,
    "type": "usr",
    "method": "account/customers/list",
    "debug": true
  }
}
Пример ответа  Развернуть
{
  "customer": [
    {
      "id": 1010,
      "name": "Конфетпром",
      "public_id": "7728793234",
      "email": "info@example.com"
    }
  ],
  "general": {
    "response": 10200,
    "error": false,
    "message": "",
    "version": 25,
    "sm_version": "1.1.25.12",
    "sm_timezone": "Europe/Moscow"
  }
}

 Вверх

account/customers/info

Метод возвращает свойства и контактные данные указанного обслуживаемого абонента.

ПараметрТипПримечание
Запрос
idЧислоКод ведущего абонента.
accountЧислоКод обслуживаемого абонента.
Ответ: customer (1)
idЧислоКод абонента.
nameСтрокаНаименование.
commentСтрокаКомментарий.
siteСтрокаСайт из "Контактной информации".
cityСтрокаГород из "Контактной информации".
emailСтрокаПочта из "Контактной информации".
phoneСтрокаТелефон из "Контактной информации"
site_idЧислоКод страницы внешней регистрации, на который был зарегистрирован абонент
invitation_idСтрокаКод приглашения
Пример запроса
{
  "id": 5,
  "account": 862,
  "auth": {
    "type": "user",
    "account": 5
  },
  "general": {
    "version": 20,
    "type": "usr",
    "method": "account/customers/info",
    "debug": true
  }
}

 Вверх

Пример ответа
{
  "customer": {
    "name": "ООО Ромашка",
    "id": 1010,
    "city": "Москва",
    "site": "www.ooo_romashka.biz",
    "email": "info@ooo_romashka.biz",
    "phone": "+7 (495) 123-45-67",
    "comment": "Текст комментария",
    "site_id": 5,
    "invitation_id": "6e1c1d26-4ab2-42fb-8893-422784345a3c"
  },
  "general": {
  "response": 10200,
  "error": false,
  "message": "",
  "version": 20,
  "sm_version": "1.1.13.17",
  "sm_timezone": "Europe/Moscow"
  }
}

 Вверх

account/customers/attached_info

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

ПараметрТипОписаниеПример
Запрос
idЧисло (+12.0)Код ведущего абонента1 000
accountЧисло (+12.0)Код обслуживаемого абонента1 010
Ответ
public_idСтрока переменная (36)Публичный идентификатор7713754211
propertiesСписок (0..*)Дополнительные сведения
  - keyСтрока переменная (100)Имя свойстваТариф
  - value *Число (любое), Строка неограниченной длины, Дата и время в строке формата ISO, БулевоЗначение свойстваИТСааС ПРОФ
  - type *Строка неограниченной длиныТип свойстваadditional_value
fieldsСписок (0..*)Дополнительные реквизиты
  - keyСтрока переменная (100)Имя реквизитаИНН
  - value *Число (любое), Строка неограниченной длины, Дата и время в строке формата ISO, БулевоЗначение реквизита7799555550
  - type *Строка неограниченной длиныТип реквизитаstring
Пример запроса
{
  "id": 1000,
  "account": 1010,
  "auth": {
    "account": 1010
  },
  "general": {
    "version": 8,
    "type": "usr",
    "method": "account/customers/attached_info",
    "debug": true
  }
}


Пример ответа
{
  "public_id": "7713754211",
  "properties": [
    {
      "key": "Тариф",
      "value": "ИТСааС ПРОФ",
      "type": "additional_value"
    }
  ],
  "fields": [
    {
      "key": "ИНН",
      "value": "7799555550",
      "type": "string"
    }
  ],
  "general": {
    "response": 10200,
    "error": false,
    "message": "",
    "version": 8,
    "sm_version": "1.0.90.7",
    "sm_timezone": "Europe/Moscow"
  }
}

 Вверх

account/customers/update_attached_info

Обновить дополнительные реквизиты и сведения обслуживаемого абонента.

Если в массивах будут указаны названия дополнительных реквизитов и свойств, которые не настроены в информационной базе "Менеджер сервиса", будет выдано сообщение об ошибке.

ПараметрТипОписаниеПример
Запрос
idЧисло (+12.0)Код ведущего абонента1 000
accountЧисло (+12.0)Код обслуживаемого абонента1 010
public_idСтрока переменная (36)Публичный идентификатор7713754211
properties *
Дополнительные сведения
- keyСтрока переменная (100)Имя свойстваТариф
- value*Число (любое), Строка неограниченной длины, Дата и время в строке формата ISO, БулевоЗначение свойства.
Для типа type = additional_value поддерживается поиск значения по вхождению подстроки, например, при указании значения с указанием знака "%" будет подобрано первое подходящее значение.
ИТСааС ПРОФ
- type*Строка неограниченной длиныТип свойстваadditional_value
fields *
Дополнительные реквизиты
- keyСтрока переменная (100)Имя реквизитаИНН
- value *Число (любое), Строка неограниченной длины, Дата и время в строке формата ISO, БулевоЗначение реквизита7799555550
- type *Строка неограниченной длиныТип реквизитаstring
Ответ
Нет параметров


Пример запроса
{
  "id": 1000,
  "account": 1010,
  "public_id": "7713754211",
  "properties": [
    {
      "key": "Тариф",
      "value": "ИТСааС ПРОФ",
      "type": "additional_value"
    }
  ],
  "fields": [
    {
      "key": "ИНН",
      "value": "7799555550",
      "type": "string"
    }
  ],
  "auth": {
    "account": 1000
  },
  "general": {
    "type": "usr",
    "method": "account/customers/update_attached_info",
  }
}
Пример ответа
{
  "general": {
  "response": 10200,
  "error": false,
  "message": "",
  "version": 8,
  "sm_version": "1.0.90.7",
  "sm_timezone": "Europe/Moscow"
  }
}

 Вверх

account/customers/fill_by_public_id

Заполнение сведений абонента по публичному идентификатору.

ПараметрТипОписаниеПример
Запрос
idЧисло (+12.0)Код ведущего абонента1 000
accountЧисло (+12.0)Код обслуживаемого абонента1 010
public_idСтрока переменная (36)Публичный идентификатор7713754211
Ответ
public_idСтрока переменная (36)Публичный идентификатор7713754211
propertiesСписок (0..*)Дополнительные сведения
  - keyСтрока переменная (100)Имя свойстваТариф
  - value *Число (любое), Строка неограниченной длины, Дата и время в строке формата ISO, БулевоЗначение свойстваИТСааС ПРОФ
  - type *Строка неограниченной длиныТип свойстваadditional_value
fieldsСписок (0..*)Дополнительные реквизиты
  - keyСтрока переменная (100)Имя реквизитаИНН
  - value *Число (любое), Строка неограниченной длины, Дата и время в строке формата ISO, БулевоЗначение реквизита7799555550
  - type *Строка неограниченной длиныТип реквизитаstring
Пример запроса
{
  "id": 1000,
  "account": 1010,
  "public_id": "7713754211",
  "auth": {
    "account": 1010
  },
  "general": {
    "type": "usr",
    "method": "account/customers/fill_by_public_id"
  }
}
Пример ответа
{
  "public_id": "7713754211",
  "properties": [{
    "key": "Тариф",
    "value": "ИТСааС ПРОФ",
    "type": "additional_value"
    }],
  "fields": [{
    "key": "ИНН",
    "value": "7799555550",
    "type": "string"
    }],
  "general": {
  "response": 10200,
  "error": false,
  "message": "",
  "version": 8,
  "sm_version": "1.0.90.7",
  "sm_timezone": "Europe/Moscow"
  }
}

 Вверх

account/customer_subscriptions/list

Метод возвращает информацию о подписках абонентов, обслуживаемых указанным абонентом.

Абонент считается обслуживаемым, если между ним и указанным абонентом установлены взаимоотношения вида Обслуживающая организация - абонент.

ПараметрТипОписаниеПример
Запрос
servantЧисло (+12.0)Код ведущего абонента1 000
account *Число (+12.0)Код обслуживаемого абонента1 010
active *БулевоПолучение только активных подписокДа
start_date *Дата и время в строке формата ISOВыводить подписки с датой создания не ранее start_date01.01.2020 0:00:00
end_date *Дата и время в строке формата ISOВыводить подписки с датой создания не позднее end_date28.02.2020 0:00:00
Ответ:  subscription  (0..*)
idСтрока переменная (9)Номер подписки000000001
createdДата и время в строке формата ISOДата оформления подписки28.02.2019 0:00:00
startДата и время в строке формата ISOНачало действия14.04.2020 0:00:00
completionДата и время в строке формата ISOЗавершение действия13.04.2021 23:59:59
accountЧисло (+12.0)Код обслуживаемого абонента1 010
servantЧисло (+12.0)Код ведущего абонента1 000
servant_tariff *Строка переменная (9)Код тарифа обслуживающей организацииSERV00001
tariffСтрока переменная (9)Код тарифаPROV00001
period *Строка переменная (10)Код периода действия1YR
parent *Строка переменная (9)Номер основной подписки
amountЧисло (+12.0)Количество (может быть больше 1 для подписок на расширения тарифов)1
typeСтрока неограниченной длиныТип подпискиbasic

Возможные значения поля type:

  • basic - Основная подписка.
  • prolonging - Продлевающая подписка.
  • extending - Расширяющая подписка.
Пример запроса  Развернуть
{
  "servant": 1000,
  "active": true,
  "start_date": "2020-06-01T00:00:00",
  "end_date": "2020-07-31T23:59:59",
  "auth": {
    "account": 1010
  },
  "general": {
    "version": 10,
    "type": "usr",
    "method": "account/customer_subscriptions/list",
    "debug": true
  }
}
Пример ответа  Развернуть
{
  "subscription": [
    {
      "id": "000000001",
      "created": "2019-02-28T00:00:00",
      "start": "2020-04-14T00:00:00",
      "completion": "2021-04-13T23:59:59",
      "account": 1010,
      "servant": 1000,
      "servant_tariff": "SERV00001",
      "tariff": "PROV00001",
      "period": "1YR",
      "parent": "",
      "amount": 1,
      "type": "basic"
    }
  ],
  "general": {
    "response": 10200,
    "error": false,
    "message": "",
    "version": 10,
    "sm_version": "1.0.96.7",
    "sm_timezone": "Europe/Moscow"
  }
}

 Вверх

account/customer_subscriptions/info

Метод возвращает информацию об указанной подписке обслуживаемого абонента.

Информация о подписке обслуживаемого абонента

ПараметрТипОписаниеПример
Запрос
idСтрока переменная (9)Номер подписки000000001
servant *Число (+12.0)Код ведущего абонента1 000
account *Число (+12.0)Код обслуживаемого абонента1 010
Ответ:  subscription  (1)
idСтрока переменная (9)Номер подписки000000001
createdДата и время в строке формата ISOДата оформления подписки28.02.2019 0:00:00
startДата и время в строке формата ISOНачало действия14.04.2020 0:00:00
completionДата и время в строке формата ISOЗавершение действия13.04.2021 23:59:59
accountЧисло (+12.0)Код обслуживаемого абонента1 010
servantЧисло (+12.0)Код ведущего абонента1 000
servant_tariff *Строка переменная (9)Код тарифа обслуживающей организацииSERV00001
tariffСтрока переменная (9)Код тарифаPROV00001
period *Строка переменная (10)Код периода действия1YR
parent *Строка переменная (9)Номер основной подписки
amountЧисло (+12.0)Количество (может быть больше 1 для подписок на расширения тарифов)1
typeСтрока неограниченной длиныТип подпискиbasic

Возможные значения поля type:

  • basic - Основная подписка.
  • prolonging - Продлевающая подписка.
  • extending - Расширяющая подписка.
Пример запроса  Развернуть
{
  "servant": 1000,
  "account": 1010,
  "id": "000000001",
  "auth": {
    "account": 1010
  },
  "general": {
    "version": 10,
    "type": "usr",
    "method": "account/customer_subscriptions/info",
    "debug": true
  }
}
Пример ответа  Развернуть
{
  "subscription": {
    "id": "000000001",
    "created": "2019-02-28T00:00:00",
    "start": "2020-04-14T00:00:00",
    "completion": "2021-04-13T23:59:59",
    "account": 1010,
    "servant": 1000,
    "servant_tariff": "SERV00001",
    "tariff": "PROV00001",
    "period": "1YR",
    "parent": "",
    "amount": 1,
    "type": "basic"
  },
  "general": {
    "response": 10200,
    "error": false,
    "message": "",
    "version": 10,
    "sm_version": "1.0.96.7",
    "sm_timezone": "Europe/Moscow"
  }
}

 Вверх

account/customer_subscriptions/create

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

Для создания подписки на тариф, для которого заданы периоды действия, при вызове метода:

  • должен быть указан параметр  period 
  • не должен быть указан параметр completion

Для создания подписки на тариф, для которого не заданы периоды действия, при вызове метода:

  • должен быть указан параметр completion 
  • не должен быть указан параметр period.

Создать новую подписку обслуживаемого абонента

ПараметрТипОписаниеПример
Запрос
servantЧисло (+12.0)Код ведущего абонента1 000
accountЧисло (+12.0)Код обслуживаемого абонента1 010
startДата и время в строке формата ISOНачало действия14.04.2020 0:00:00
completion *Дата и время в строке формата ISOЗавершение действия13.04.2021 23:59:59
servant_tariff *Строка переменная (9)Код тарифа обслуживающей организацииSERV00001
tariffСтрока переменная (9)Код тарифаPROV00001
period *Строка переменная (10)Код периода действия1YR
accept_intersectionsБулевоДопустимо наличие пересечений по периоду действия с имеющимися подписками на тот же тарифtrue
Ответ: subscription (1)
id *Строка переменная (9)Номер созданной подписки000000002
completion *Дата и время в строке формата ISOЗавершение действия13.04.2021 23:59:59
Пример запроса: создание подписки на тариф, для которого заданы периоды действия  Развернуть
{
  "servant": 5,
  "account": 333,
  "tariff": "BO2",
  "start": "2020-06-19T00:00:00",
  "period": "1YR",
  "accept_intersections": true,
  "auth": {
    "type": "user",
    "account": 5
  },
  "general": {
    "version": 10,
    "type": "usr",
    "method": "account/customer_subscriptions/create",
    "debug": true
  }
}
Пример запроса: создание подписки на тариф, для которого не заданы периоды действия  Развернуть
{
  "servant": 5,
  "account": 333,
  "tariff": "BO2",
  "start": "2020-06-19T00:00:00",
  "completion": "2021-06-18T23:59:59",
  "accept_intersections": true,
  "auth": {
    "type": "user",
    "account": 5
  },
  "general": {
    "version": 10,
    "type": "usr",
    "method": "account/customer_subscriptions/create",
    "debug": true
  }
}
Пример ответа  Развернуть
{
"id": "000361511",
"completion": "2021-06-18T23:59:59",
"general": {
"response": 10200,
"error": false,
"message": "",
"version": 10,
"sm_version": "1.0.98.9",
"sm_timezone": "Europe/Moscow"
}
}

Примечание

Если при создании подписки оказалось, что последняя подписка на тот же тариф для того же абонента была продлевающей подпиской, а в настройках менеджера сервиса установлен режим Вычитать использованный период продлевающей подписки, то:

  • значение поля completion будет уменьшено на использованный абонентом период этой продлевающей подписки;
  • значение кода возврата general.response будет установлено в 10240
  • в поле  general.message будет содержаться строка  completion_offset_due_to_extension

 Вверх

account/customer_subscriptions/create_enhanced

Метод создает и записывает новую подписку или несколько подписок на расширение тарифа с указанными свойствами для указанного обслуживаемого абонента. Выполнение метода равнозначно выполнению команд "Подписать на расширение тарифа" и "Провести" в интерфейсе Личного кабинета.

Для создания подписки на тариф, для которого заданы периоды действия, при вызове метода:

  • должен быть указан параметр period
  • не должен быть указан параметр completion

Для создания подписки на тариф, для которого не заданы периоды действия, при вызове метода:

  • может быть указан параметр completion (если он не указан, используется дата завершения основной подписки)
  • не должен быть указан параметр period

Если параметр start  не указан, используется дата подключения основной подписки.

Если при создании подписки на тариф дата завершения подписки оказывается большей даты завершения основной подписки, то дата завершения созданной подписки устанавливается равной дате завершения основной подписки, а для кода возврата response устанавливается значение  10240.

ПараметрТипПримечание
Запрос
servantЧислоКод ведущего абонента.
accountЧислоКод обслуживаемого абонента.
start *ДатаДата начала действия подписки (подписок)
completion *ДатаДата завершения действия подписки (подписок)
period *СтрокаКод периода действия подписки
tariffСтрокаКод тарифа
servant_tariffСтрокаКод тарифа обслуживающей организации
parentСтрокаКод основной подписки
amount *ЧислоКоличество создаваемых подписок.
Ответ: (1)
subscriptionМассивМассив строк с номерами созданных подписок
subscription_infoМассив Массив структур вида
  • id — Строка, код созданной подписки
  • completion — Дата, дата завершения действия созданной подписки


Пример запроса
{
   "auth":{
      "account": 1000
   },
   "general": {
      "type": "usr",
      "method": "account/customer_subscriptions/create_enhanced"
   },
   "servant": 1000,
   "account": 1001,
   "parent": "000000330",
   "tariff": "211",	
   "start": "2018-01-01T00:00:00",
   "period": "1M"
}


Пример ответа
{
"subscription": ["000000331"],
"subscription_info": [
   {"id": "000000331",
    "completion": "2020-04-04T23:59:59"}
],
"general": {
"response": 10240,
"error": false,
"message": "Дата окончания подписки на расширение скорректирована в соответствии с датой окончания основной подписки.",
"version": 6,
"sm_version": "1.0.84.5",
"sm_timezone": "UTC"}
}

 Вверх

account/customer_subscriptions/renew

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

Для создания подписки на тариф, для которого заданы периоды действия, при вызове метода:

  • должен быть указан параметр period 
  • не должен быть указан параметр completion

Для создания подписки на тариф, для которого не заданы периоды действия, при вызове метода:

  • должен быть указан параметр completion 
  • не должен быть указан параметр period.
ПараметрТипПримечание
Запрос
servantЧислоКод ведущего абонента.
accountЧислоКод обслуживаемого абонента.
idСтрокаНомер подписки, на основании которой нужно создать новую.
startДата

Дата начала действия подписки

completion *ДатаДата завершения действия подписки
period *СтрокаКод периода действия подписки
accept_intersectionsБулевоДопустимо наличие пересечений по периоду действия с имеющимися подписками на тот же тариф
Ответ: subscription (1)
idСтрокаНомер подписки.
completionДата

Дата завершения действия подписки

Пример запроса
{
  "servant": 1000,
  "account": 1010,
  "start": "2021-06-11T00:00:00",
  "id": "000000001",
  "period": "1YR",
  "accept_intersections": true,
  "auth": {
    "type": "user",
    "account": 1010
  },
  "general": {
    "version": 19,
    "type": "usr",
    "method": "account/customer_subscriptions/renew",
    "debug": true
  }
}


Пример ответа
{
  "id": "000000002",
  "completion": "2022-06-10T23:59:59",
  "general": {
    "response": 10200,
    "error": false,
    "message": "",
    "version": 19,
    "sm_version": "1.1.6.9",
    "sm_timezone": "Europe/Moscow"
  }
}

Примечание

Если при создании подписки оказалось, что последняя подписка на тот же тариф для того же абонента была продлевающей подпиской, а в настройках менеджера сервиса установлен режим Вычитать использованный период продлевающей подписки, то:

  • значение поля completion будет уменьшено на использованный абонентом период этой продлевающей подписки;
  • значение кода возврата general.response будет установлено в 10240
  • в поле  general.message будет содержаться строка  completion_offset_due_to_extension

 Вверх

account/customer_subscriptions/prolong

Метод создает продлевающую подписку для указанной подписки указанного обслуживаемого абонента. Выполнение метода равнозначно выполнению команд "Создать" и  "Провести" в документе "Подписка" через интерфейс Личного кабинета.

ПараметрТипПримечание
Запрос
servantЧислоКод ведущего абонента.
accountЧислоКод обслуживаемого абонента.
idСтрокаНомер подписки, на основании которой нужно создать продлевающую.
Ответ: subscription (1)
idСтрокаНомер подписки.
Пример запроса
POST {{server}}/{{url}}
Authorization: Basic {{auth}}
 
{
    "auth": {
        "account": {{account}}
    },
    "general": {
        "type": "usr",
        "method": "account/customer_subscriptions/prolong"
    },
    "servant": {{account}},
    "account": {{customer}},
    "id": {{subscription}}
}

 Вверх

account/customer_subscriptions/extend

Метод создает расширяющую подписку для указанной подписки указанного обслуживаемого абонента. Выполнение метода равнозначно выполнению команд "Создать" и  "Провести" в документе "Подписка" через интерфейс Личного кабинета.

ПараметрТипПримечание
Запрос
servantЧислоКод ведущего абонента.
accountЧислоКод обслуживаемого абонента.
idСтрокаНомер подписки, на основании которой нужно создать расширяющую.
Ответ: subscription (1)
idСтрокаНомер подписки.
Пример запроса
POST {{server}}/{{url}}
Authorization: Basic {{auth}}
 
{
    "auth": {
        "account": {{account}}
    },
    "general": {
        "type": "usr",
        "method": "account/customer_subscriptions/extend"
    },
    "servant": {{account}},
    "account": {{customer}},
    "id": {{subscription}}
}

 Вверх

account/customer_subscriptions/set_servant_tariff

Установить тариф обслуживающей организации в существующей подписке

ПараметрТипОписаниеПример
Запрос
servantЧисло (+12.0)Код ведущего абонента1 000
accountЧисло (+12.0)Код абонента1 010
idСтрока переменная (9)Номер подписки000000001
servant_tariffСтрока переменная (9)Код тарифа обслуживающей организацииSERV00001
Ответ (1)
Нет параметров
Пример запроса  Развернуть
{
  "servant": 1000,
  "account": 1010,
  "id": "000000001",
  "servant_tariff": "SERV00001",
  "auth": {
    "account": 1000
  },
  "general": {
    "type": "usr",
    "method": "account/customer_subscriptions/set_servant_tariff"
  }
}
Пример ответа  Развернуть
{
  "general": {
    "response": 10200,
    "error": false,
    "message": "",
    "version": 10,
    "sm_version": "1.0.96.5",
    "sm_timezone": "Europe/Moscow"
  }
}

 Вверх

account/site/list

Получение списка сайтов обслуживающей организации по коду абонента обслуживающей организации

ПараметрТипПримечание
Запрос
accountЧислоКод обслуживающей организации.
Ответ: sites (0..*)
site_idЧислоКод страницы внешней регистрации
nameСтрокаНаименование страницы внешней регистрации.


Пример запроса  Развернуть
{
  "account": 1010,
  "auth": {
    "account": 1010
  },
  "general": {
    "type": "usr",
    "method": "account/site/list"
  }
}
Пример ответа  Развернуть
{
  "sites": [
    {
      "site_id": 8,
      "name": "ОО Партнер Основной сайт"
    },
    {
      "site_id": 54,
      "name": "ОО Партнер Сайт промоакции"
    }
  ],
  "general": {
    "response": 10200,
    "error": false,
    "message": "",
    "version": 20,
    "sm_version": "1.1.14.5",
    "sm_timezone": "Europe/Moscow"
  }
}

 Вверх