API сервера agenta.pro
API позволяет взаимодействовать терминалам (мобильным клиентам) с сервером по GET- или POST-запросам.
Параметры и доступ к серверу
Адрес API: https://agenta.pro/api
Кодовая страница: UTF8
Пользователь для тестирования (sid): worker
Структура запросов к серверу
Обязательные параметры:
- method - содержит имя метода API
clientversion - версия мобильного клиента ("0.9.2.5")
Опциональные общие параметры:
- sid - содержит id пользователя, зарегистрированного на сервере
- clientversion - строка, версия клиента, в формате 9.99.99
- gmt - смещение часового пояса устройства, в минутах. Например, для Москвы +240 (летнее время)
Например, чтобы вызвать метод connect, нужно указать следующее:
https://agenta.pro/api?method=connect&cid=3333
Структура ответа сервера
Структура ответов сервера в формате JSON общая для всех методов:
В результате возвращается структура JSON со следующими полями:
- success: true/false, является флагом успешности выполнения запроса: Истина - все ок, Ложь - возникли ошибки.
- data: данные с сервера. Содержит структуру полей ответа, либо строку (в зависимости от метода). В данном случае, здесь передаются id (guid) созданной заявки и ее номер (number)
- error: код ошибки. Содержит строковое id ошибки, в случае неудачного выполненния запроса, например, ‘invalid’ - неверный параметр.
- errormsg: сообщение (описание ошибки). Содержит текстовое описание ошибки, например “неверный параметр”
- errors: структура ошибок (ключ:значение). Служит уточнением ошибки, какой параметр заполнен неверно, является структурой в виде “поле”: “значение”
- time: служебное, время сервера в формате YYYY-MM-DD H:i:s (например, 2012-08-30 17:46:00)
- worktime: служебное, время работы скрипта на сервере (секуды), например 0.007
Коды основных ошибок сервера
Коды ошибок сервера передаются в поле “error” ответа сервера.
Перечень общих ошибок всех методов:
unknownmethod |
Нет такого метода API |
invalid |
Не верно указаны параметры запроса |
licencenotfound | Лицензия не найдена |
Описание методов API
Метод | Описание |
---|---|
register |
Регистрация мобильного устройства Параметры:
Возвращает: Поле data :
Пример http-запроса: https://agenta.pro/api? method=register &sid=f594f9b9-d531-22e0-b34f1-021e8c8f505d Ответ сервера: { "success":true, "data":{ "name":"Вова", "dataserver":"http://agenta.pro/api" } } |
connect |
Подключиться к серверу Параметры:
Возвращает: Поле data:
Пример http-запроса: https://agenta.pro/api? method=connect &cid=b294f9b8-c729-11e3-991a-001e8c8f500c &lastupdate=0 Ответ сервера: { "success":true, "data":{ "name":"Вова", "lastupdate":"1398424235536855", "dataserver":"http://agenta.pro/api", "departments":[{"guid":"a32342-5f3f-4db9-9413-d47354d735a66","name":"Маяковского"}, {"guid":"a51234d02-a258-4f84-bd2d-f13435371d361","name":"Центр"}] } } |
getdata | Получить список клиентов из справочника. Параметры:
Возвращает: Поле data содержит:
Пример http-запроса: https://agenta.pro/api? method=getdata &sid=f594f9b9-d531-22e0-b34f1-021e8c8f505d &lastupdate=0 Ответ сервера: { "success":true, "data":{ "data":"CADwAXFxTRVJWXEJp...YmZjYi05NGJlZWE0NDRmZjkuZXhi", "lastupdate":"1398424235536855" } } |
setdocument |
Метод, сохраняющий данные документа на сервер. Каждый документ отправляется на сервер отдельным запросом. Параметры:
Возвращает: Поле data содержит:
Пример http-запроса: https://agenta.pro/api? method=setdocument &sid=f594f9b9-d531-22e0-b34f1-021e8c8f505d &number=324 Ответ сервера: { "success":true, "data":{} } |