Универсальное API: различия между версиями
Admin (обсуждение | вклад) |
Admin (обсуждение | вклад) |
||
Строка 33: | Строка 33: | ||
''(с полным описанием можно ознакомиться в документе по ссылке выше. Здесь же методы представлены лишь для общего информирования и с примерами)'' | ''(с полным описанием можно ознакомиться в документе по ссылке выше. Здесь же методы представлены лишь для общего информирования и с примерами)'' | ||
'''1. Тарифные планы. Стандартные тарифы''' | '''1. Используемая версия API''' | ||
Запрос: | |||
api.php?key=apikey&request=get_api_information | |||
Результат: | |||
http://userside.eu/userside/api.php?key=key&cat=module&request=get_api_information | |||
'''2. Поддерживаемые методы API''' | |||
Запрос: | |||
api.php?key=apikey&request=get_supported_method_list | |||
Результат: | |||
http://userside.eu/userside/api.php?key=key&cat=module&request=get_supported_method_list | |||
'''3. Системная информация''' | |||
Запрос: | |||
api.php?key=apikey&request=get_system_information | |||
Результат: | |||
http://userside.eu/userside/api.php?key=key&cat=module&request=get_system_information | |||
'''4. Тарифные планы. Стандартные тарифы''' | |||
Запрос: | Запрос: | ||
Строка 41: | Строка 65: | ||
http://userside.eu/userside/api.php?key=key&cat=module&request=get_tariff_list | http://userside.eu/userside/api.php?key=key&cat=module&request=get_tariff_list | ||
''' | '''5. Населённые пункты''' | ||
Запрос: | Запрос: | ||
Строка 49: | Строка 73: | ||
http://userside.eu/userside/api.php?key=key&cat=module&request=get_city_list | http://userside.eu/userside/api.php?key=key&cat=module&request=get_city_list | ||
''' | '''6. Районы в населённых пунктах''' ''(если есть)'' | ||
Запрос: | Запрос: | ||
Строка 57: | Строка 81: | ||
http://userside.eu/userside/api.php?key=key&cat=module&request=get_city_district_list | http://userside.eu/userside/api.php?key=key&cat=module&request=get_city_district_list | ||
''' | '''7. Улицы''' | ||
Запрос: | Запрос: | ||
Строка 65: | Строка 89: | ||
http://userside.eu/userside/api.php?key=key&cat=module&request=get_street_list | http://userside.eu/userside/api.php?key=key&cat=module&request=get_street_list | ||
''' | '''8. Дома''' | ||
Запрос: | Запрос: | ||
Строка 72: | Строка 96: | ||
Результат: | Результат: | ||
http://userside.eu/userside/api.php?key=key&cat=module&request=get_house_list | http://userside.eu/userside/api.php?key=key&cat=module&request=get_house_list | ||
'''9. Типы дополнительных полей по абонентам''' ''(если используется)'' | |||
Запрос: | |||
?key=apikey&request=get_user_additional_data_type_list | |||
Результат: | |||
http://userside.eu/userside/api.php?key=key&cat=module&request=get_user_additional_data_type_list | |||
'''10. Типы статусов абонентов''' ''(не каждого конкретного абонента, а конфигуратор статусов))'' | |||
Запрос: | |||
?key=apikey&request=get_user_state_list | |||
Результат: | |||
http://userside.eu/userside/api.php?key=key&cat=module&request=get_user_state_list | |||
'''11. Группы абонентов''' ''(если используется)'' | |||
Запрос: | |||
?key=apikey&request=get_user_group_list | |||
Результат: | |||
http://userside.eu/userside/api.php?key=key&cat=module&request=get_user_group_list | |||
'''12. Абоненты/клиенты''' | |||
Запрос: | |||
?key=apikey&request=get_user_list | |||
Результат: | |||
http://userside.eu/userside/api.php?key=key&cat=module&request=get_user_list |
Версия от 15:13, 22 ноября 2015
Совместно с разработчиками ряда биллингов было создана структура универсального API, которое позволяет удобно и стандартизировано получать информацию из различных биллинговых систем.
С документом можно ознакомится по ссылке http://userside.eu/main/files/API_Billing_v1_2.docx
Текущая версия: 1.2 от 25.10.2015
На данный момент работу по этому API поддерживают биллинги:
- uBilling v.0.7.2+
- MikBill v.2.8.16+
- также в самой ERP "UserSide" поддерживается вывод информации по требованиям этого API
Вводные
1. Всё взаимодействие построено на API RESTful-запросах
2. Рабочая кодировка – UTF-8
3. Формат данных с ответами – JSON
4. Дата выводится в формате «ГГГГ-ММ-ДД чч:мм:сс»
5. В качестве идентификации используется API-ключ
6. Дополнительно рекомендуется на уровне API биллинга настраивать и проверять IP-адрес хоста, откуда поступают запросы либо ограничивать доступ vlan`ами
7. На не поддерживаемые методы (или методы без необходимых параметров) необходимо отвечать HTTP-400 статусом через header. В тексте 400-ответа можно расширенно отвечать о характере ошибки.
8. Текстовые поля, которые имеют пустое значение – рекомендуется не возвращать вовсе (для экономии трафика)
Поддерживаемые методы
(с полным описанием можно ознакомиться в документе по ссылке выше. Здесь же методы представлены лишь для общего информирования и с примерами)
1. Используемая версия API
Запрос: api.php?key=apikey&request=get_api_information Результат: http://userside.eu/userside/api.php?key=key&cat=module&request=get_api_information
2. Поддерживаемые методы API
Запрос: api.php?key=apikey&request=get_supported_method_list Результат: http://userside.eu/userside/api.php?key=key&cat=module&request=get_supported_method_list
3. Системная информация
Запрос: api.php?key=apikey&request=get_system_information Результат: http://userside.eu/userside/api.php?key=key&cat=module&request=get_system_information
4. Тарифные планы. Стандартные тарифы
Запрос: api.php?key=apikey&request=get_tariff_list Результат: http://userside.eu/userside/api.php?key=key&cat=module&request=get_tariff_list
5. Населённые пункты
Запрос: ?key=apikey&request=get_city_list Результат: http://userside.eu/userside/api.php?key=key&cat=module&request=get_city_list
6. Районы в населённых пунктах (если есть)
Запрос: ?key=apikey&request=get_city_district_list Результат: http://userside.eu/userside/api.php?key=key&cat=module&request=get_city_district_list
7. Улицы
Запрос: ?key=apikey&request=get_street_list Результат: http://userside.eu/userside/api.php?key=key&cat=module&request=get_street_list
8. Дома
Запрос: ?key=apikey&request=get_house_list Результат: http://userside.eu/userside/api.php?key=key&cat=module&request=get_house_list
9. Типы дополнительных полей по абонентам (если используется)
Запрос: ?key=apikey&request=get_user_additional_data_type_list Результат: http://userside.eu/userside/api.php?key=key&cat=module&request=get_user_additional_data_type_list
10. Типы статусов абонентов (не каждого конкретного абонента, а конфигуратор статусов))
Запрос: ?key=apikey&request=get_user_state_list Результат: http://userside.eu/userside/api.php?key=key&cat=module&request=get_user_state_list
11. Группы абонентов (если используется)
Запрос: ?key=apikey&request=get_user_group_list Результат: http://userside.eu/userside/api.php?key=key&cat=module&request=get_user_group_list
12. Абоненты/клиенты
Запрос: ?key=apikey&request=get_user_list Результат: http://userside.eu/userside/api.php?key=key&cat=module&request=get_user_list