API: различия между версиями

Материал из WiKi - UserSide
 
(не показано 5 промежуточных версий 2 участников)
Строка 1: Строка 1:
[[API_EN|en]] | [[API|ru]]
Этот раздел описывает возможности использования встроенного API в ERP "UserSide", что позволяет использовать встроенный функционал в собственных проектах.  
Этот раздел описывает возможности использования встроенного API в ERP "UserSide", что позволяет использовать встроенный функционал в собственных проектах.  


Строка 13: Строка 15:
   key - ключ API
   key - ключ API
   cat - категория запроса
   cat - категория запроса
Необязательные:
  skip_internal_api - флаг - не включать внутренние триггеры системы ''(разумно использовать, когда ваш метод API и есть реакция на какой-то триггер и в итоге при обычной работе он же сам и зацикливает свою работу)''
  Прочие дополнительные параметры, в зависимости от категории ''(см. ниже в соответствующих категориях)''. Например:
  Прочие дополнительные параметры, в зависимости от категории ''(см. ниже в соответствующих категориях)''. Например:
   usercode - id абонента
   customer_id - id абонента
   is_potential - флаг. Может принимать значение 1 или 0. Большинство флагов имеют префикс '''is'''.
   is_potential - флаг. Может принимать значение 1 или 0. Большинство флагов имеют префикс '''is'''.
   
   
Строка 31: Строка 35:
== Основная настройка ==
== Основная настройка ==


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


== Категории ==
== Категории ==
Строка 44: Строка 48:
* [[API cross|cross]] - ODF/Кроссы
* [[API cross|cross]] - ODF/Кроссы
* [[API customer|customer]] - Абоненты. Большинство действий актуально для [[Поддерживаемые биллинги|ручных биллингов]]
* [[API customer|customer]] - Абоненты. Большинство действий актуально для [[Поддерживаемые биллинги|ручных биллингов]]
* [[API cwdm|cwdm]] - CWDM
* [[API device|device]] - Оборудование
* [[API device|device]] - Оборудование
* [[API employee|employee]] - Сотрудники ''(с 3.16dev2)''
* [[API employee|employee]] - Сотрудники ''(с 3.16dev2)''
Строка 66: Строка 71:
* [[API tariff|tariff]] - Тарифы
* [[API tariff|tariff]] - Тарифы
* [[API task|task]] - Задания
* [[API task|task]] - Задания
* [[API trader|trader]] - Поставщики
* [[API vehicle|vehicle]] - Автотранспорт
* [[API vehicle|vehicle]] - Автотранспорт
* [[API vlan|vlan]] - Vlan
* [[API vlan|vlan]] - Vlan

Текущая версия от 14:38, 16 августа 2024

en | ru

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

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

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

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

Можно использовать и GET и POST запросы.

Входящие параметры:
Обязательные:
 key - ключ API
 cat - категория запроса
Необязательные:
 skip_internal_api - флаг - не включать внутренние триггеры системы (разумно использовать, когда ваш метод API и есть реакция на какой-то триггер и в итоге при обычной работе он же сам и зацикливает свою работу)
Прочие дополнительные параметры, в зависимости от категории (см. ниже в соответствующих категориях). Например:
 customer_id - id абонента
 is_potential - флаг. Может принимать значение 1 или 0. Большинство флагов имеют префикс is.

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

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

Настройте API-ключ.

Категории

  • address - Адреса
  • attach - Прикрепляемые файлы
  • additional_data - Дополнительные поля/данные для объектов
  • advertising - Рекламные кампании
  • billing - Биллинги
  • cable_route - Кабельные трассы и каналы
  • call - Звонки
  • commutation - Коммутация объектов
  • cross - ODF/Кроссы
  • customer - Абоненты. Большинство действий актуально для ручных биллингов
  • cwdm - CWDM
  • device - Оборудование
  • employee - Сотрудники (с 3.16dev2)
  • fiber - Кабельные линии
  • gps - GPS-трекеры
  • inventory - Склад
  • key - Ключи
  • map - Карты покрытия
  • module - Внешние запросы от модулей
  • newin - Заявка на подключение
  • node - Сооружения связи (узлы связи, муфты, опоры, колодцы)
  • notepad - Блокнот
  • operator - Операторы системы (до 3.16dev2)
  • owner - Собственники объектов
  • redirect - Переадресация на карточку объекта по какому-то признаку
  • service - Дополнительные услуги
  • setting - Настройка
  • sms - SMS-сообщения
  • splitter - Делители/уплотнители
  • staff - Сотрудники (до 3.16dev2)
  • system - Системная информация и операции
  • tariff - Тарифы
  • task - Задания
  • trader - Поставщики
  • vehicle - Автотранспорт
  • vlan - Vlan