Это старая версия документа!
API (англ. Application Program Interface) – это интерфейс программирования, который позволяет сайту клуба взаимодействовать с сервером и получать доступ к функционалу сервиса управления фитнес клубом.
Servitum API принимает запросы в формате URL-encoded GET методов. Ответ на запрос выдается в JSON или XML формате.
Для активации API для клуба необходимо в кабинете компании https://app.servitum.net/company/office на вкладке «Другие» сгенерировать API ключ, который надо будет использовать как один из параметров запроса.
https://app.servitum.net/api?api_key=<апи ключ компании>&format=<json|xml>&request=<имя операции>&<дополнительные параметры спецефические для запроса>
Список параметров:
api_key
- API Key компанииformat
- формат возвращаемых данных (необязательный параметр, может быть опущен; по умолчанию json)request
- команда запроса (на данный момент есть только одна команда - customer_memberships)дополнительные параметры
- параметры, специфичные для каждой командыИмя команды - customer_memberships
Эта команда возвращает список активных абонементов указанного клиента.
Список параметров специфических для этой команды:
last_name
- фамилия клиента. Параметр не чувтсвителен к регистру буквphone
- телефон клиента в том формате, в котором он хранится в базе (включая ведущий знак +)Команда ищет клиента по полному совпадению фамилии и номера телефона одновременно. Т.е. если указать только фамилию без телефона, то команда выведет, что клиент не найден. Это сделано, чтобы избежать перебора клиентов клуба по фамилии сторонними пользователями.
Пример запроса:
https://app.servitum.net/api?api_key=5ca5b3ff853afb7022a90c9ecaf19490&format=json&request=customer_memberships&last_name=Агипов&phone=%2B380663332211
здесь %2B380663332211
– номер телефона +380663332211, где знак + заменен на URL Encoded представление %2B
Привер ответа:
{«success»:true,
«data»:[{«name»:«Трен Зал 1 мес»,«status»:«active»,«start»:«11.07.2014»,«end»:«10.08.2014»,«freeze_days_left»:«5»,«services»:[{«service_name»:«Тренажерный зал»,«service_left»:«11»,«service_used»:«1»}]}]}
здесь
success
- статус обработки командыdata
- список активных абонементов клиента
{
«name»:«Трен Зал 1 мес» - название абонемента
«status»:«active» - статус абонемента
«start»:«11.07.2014» - дата начала действия абонемента
«end»:«10.08.2014» - дата окончания действия
«freeze_days_left»:«5» - количество оставшихся дней заморозки
«services»: - список услуг, доступных в рамках абонемента
[{
«service_name»:«Тренажерный зал» - название доступной услуги
«service_left»:«11» - количество доступных занятий
«service_used»:«1» - количество использованных занятий
}]
}
Текст возвращается в кодировке utf-8.
В случае ошибки команда выдает статус false
и в поле error
выводится текст сообщения об ошибке.
Например:
{«success»:false,«error»:«Customer not found»}