API

Материал из WiKi - UserSide

Этот раздел описывает возможности использования встроенного API в ERP "UserSide", что позволяет использовать встроенный функционал в собственных проектах.

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

Принцип работы

За взаимодействие отвечает файл /api.php

Входящие параметры:
Обязательные:
 key - ключ API
 cat - категория запроса
Возможные:
 cp - кодировка (возможное значение: cp1251). По-умолчанию данные возвращаются в кодировке utf8.
 gz - возврат данных в сжатом формате (возможное значение: disable). По-умолчанию данные возвращаются в сжатом формате.
 subcat - подкатегория запроса
 sort_desc - обратная сортировка результата запроса (Возможное значение: 1)
 Прочие дополнительные параметры, в зависимости от категории (см. ниже в соответствующих категориях). Например:
  usercode - код абонента (tbl_base.CODE)

Пример запроса:
api.php?key=apikey&cat=abon&subcat=msg&usercode=1
Возвращаемые данные:
 Если запрос предполагает какое-то действие или возврат информации, то в формате JSON будет возвращена информация:
  array(
   [Result] => OK / ERROR
   [ErrorText] => В случае ошибки - текст ошибки
  )

Основная настройка

В основном файле конфигурации main/config/config.php добавьте (или настройте) переменную $zapikey, где укажите свой произвольный API-ключ.

Категории

  • address - Действия с адресами
  • abon - Действия с абонентами. Большинство действий актуально для ручных биллингов.
  • newin - Форма заявки на подключение
  • redirect - Переадресация на карточку объекта по какому-то признаку
  • work - Работа с заданиями

work


Работа с заданиями.

Дополнительные параметры:
subcat - подкатегория запроса (возможное значение: см.ниже)

add

Подкатегория: add
Описание: Создание задания
Обязательные параметры:
 work_typer - ID ТИПА задания (tbl_conf_journal.TYPER)
 work_datedo - дата на которую назначено выполнение задания (в формате ГГГГ-ММ-ДД чч:мм:сс)
Необязательные параметры:
 usercode - ID абонента (tbl_base.CODE)
 uzelcode - ID узла связи/муфты/опоры/колодца (tbl_uzel.CODE)
 housecode - ID дома (tbl_house.CODE). Если не указан, то берётся из данных по абоненту - usercode, либо из данных по узлу связи - uzelcode
 citycode - ID населенного пункта (tbl_adr_city.CODE). Если не указан, то берётся из данных по дому housecode
 apart - номер квартиры
 fio - ФИО клиента (имеется в виду, что "клиент" еще не является абонентом)
 opis - заметки к заданию
 dopf_N - значение дополнительного поля для поля ID N (tbl_conf_attr.CODE)
Дополнительно возвращаемые данные:
 array(
  [Id] => ID созданного задания (tbl_journal.CODE)
 )