API
Этот раздел описывает возможности использования встроенного API в САП "UserSide", что позволяет использовать встроенный функционал в собственных проектах.
API охватывает на данный момент не весь функционал и постепенно дорабатывается, так что данная страница будет иметь частые изменения и дополнения.
Принцип работы
За взаимодействие отвечает файл /api.php
Входящие параметры: Обязательные: api - ключ API kat - категория запроса Возможные: cp - кодировка (возможное значение: cp1251). По-умолчанию данные возвращаются в кодировке utf8. gz - возврат данных в сжатом формате (возможное значение: disable). По-умолчанию данные возвращаются в сжатом формате. subkat - подкатегория запроса sort_desc - обратная сортировка результата запроса (Возможное значение: 1) Прочие дополнительные параметры, в зависимости от категории (см. ниже в соответствующих категориях). Например: usercode - код абонента (tbl_base.CODE) Пример запроса: api.php?api=key&kat=abon&subkat=msg&usercode=1
Возвращаемые данные: Если запрос предполагает какое-то действие или возврат информации, то в формате JSON будет возвращена информация: array( [Result] => OK / ERROR [ErrorText] => В случае ошибки - текст ошибки )
Основная настройка
В основном файле конфигурации main/config/config.php добавьте (или настройте) переменную $zapikey, где укажите свой произвольный API-ключ.
Категории
redirect
Переадресация на карточку объекта по какому-то признаку
Дополнительные параметры: subkat - тип объекта (возможное значение: abon) typer - тип анализируемых данных (возможное значение: tel) value - данные (текстовое значение) Пример запроса: api.php?api=key&kat=redirect&subkat=abon&typer=tel&value=380971234567
newin
Форма заявки на подключение
Пример реализации: http://userside.ua/userside/script/newin/sample.php
Дополнительные параметры: subkat - подкатегория запроса (возможное значение: new (пустое значение этого параметра равняется new)) citycode - ID населенного пункта (tbl_adr_city.CODE), по которому подаётся заявка. Будет открыт выбор улиц. Если пусто - будет открыт выбор населенного пункта. map - флаг (1/0) - открывать ли окно выбора карты. Населенный пункт должен быть указан на карте - тогда будет понятно какую карту открывать и где её центровать. Пример запроса: api.php?api=key&kat=newin&map=1
abon
Действия с абонентами. Большинство действий актуально для ручных биллингов.
Дополнительные параметры: subkat - подкатегория запроса (возможное значение: см.ниже) typer - тип анализируемых данных (возможное значение: tel) value - данные (текстовое значение) Пример запроса: api.php?api=key&kat=redirect&subkat=abon&typer=tel&value=380971234567
Подкатегория: list_tarif_available Описание: Смена тарифа абоненту Обязательные параметры: usercode - ID абонента (tbl_base.CODE) Возвращаемые данные: перечень тарифов array( [TarifList] => array( [Id] - ID тарифа (tbl_group.CODE) [Name] - Название тарифа [Price] - Стоимость тарифа [IsDayPrice] - Флаг - ежедневная ли стоимость )
Подкатегория: tarif_change Описание: Смена тарифа абоненту Обязательные параметры: usercode - ID абонента (tbl_base.CODE) tarif - ID нового тарифа (tbl_group.CODE)