API: відмінності між версіями
Sv (обговорення | внесок) |
Sv (обговорення | внесок) |
||
Рядок 74: | Рядок 74: | ||
change_srv_order_u - клиент заказал услугу | change_srv_order_u - клиент заказал услугу | ||
change_srv_order - заказал клиенту услугу кто-то иной (администратор, например) | change_srv_order - заказал клиенту услугу кто-то иной (администратор, например) | ||
Услуги: | |||
"services" : [ | |||
{ | |||
"service_id" : "33", | |||
"frozen" : null, | |||
"text" : "21.01.2016 09:13 подключена услуга: 50 Mb unlim", | |||
"id" : "1256", | |||
"title" : "50 Mb unlim", | |||
"time_start" : "1453360404", | |||
"time_left" : -11944491б | |||
"next_service_price" : "10", | |||
"next_service_id" : "33", | |||
"next_service_title" : "50 Mb unlim" | |||
},{ | |||
... | |||
Здесь приведена одна из подключенных услуг. next_service_id - id услуги, которая будет подключена когда завершится текущая. Поскольку service_id = next_service_id - будет подключена таже услуга, которая действует в данный момент |
Версія за 14:17, 8 червня 2016
API запросы выполняются по http(s)-протоколу, в ответ приходит json Если в ответе присутствует ключ error - произошла ошибка
Тестировать API можно с консоли, например:
curl 'https://app.nodeny-plus.com.ua/cgi-bin/noapi.pl'
В ответ приходит сообщение об ошибке "запрос не авторизован":
{
"error" : "unauthorized"
}
Необходимо сперва залогиниться под логином и паролем пользователя и получить идентификатор сессии, который использовать в cookie в последующих запросах
Авторизация
Логин: test email Пароль: 123
curl 'https://app.nodeny-plus.com.ua/cgi-bin/noapi.pl?_mod=external&_uu=test%20email&_pp=123'
Если логин и пароль верные, приходит ответ:
{
"ses" : "hHuidO6MqAwTcqO/nZF4Qg",
"data" : {
"trust" : 1,
"id" : "357",
"role" : "user"
},
"result" : "auth ok"
}
Нас интересует параметр ses, который необходимо посылать во всех запросах в cookie с именем noses
Получение данных пользователя
curl 'https://app.nodeny-plus.com.ua/cgi-bin/noapi.pl?a=u_main' --cookie "noses=hHuidO6MqAwTcqO/nZF4Qg"
В полученных данных:
usr: данные пользователя messages: сообщения для пользователя services: услуги, подключенные пользователю tmp_pays: кредиты last_pay: данные по последнему платежу
Например, клиенту послано одно сообщение:
"messages" : [
{
"timestamp" : "1465391425",
"text" : "Здравствуйте. Это тестовое сообщение",
"time" : "Сегодня в 16:10",
"id" : "4344",
"lang_code" : "msg_from_adm"
}
]
Здесь:
lang_code: msg_from_adm - сообщение от администрации change_srv_order_u - клиент заказал услугу change_srv_order - заказал клиенту услугу кто-то иной (администратор, например)
Услуги:
"services" : [ { "service_id" : "33", "frozen" : null, "text" : "21.01.2016 09:13 подключена услуга: 50 Mb unlim", "id" : "1256", "title" : "50 Mb unlim", "time_start" : "1453360404", "time_left" : -11944491б "next_service_price" : "10", "next_service_id" : "33", "next_service_title" : "50 Mb unlim" },{ ...
Здесь приведена одна из подключенных услуг. next_service_id - id услуги, которая будет подключена когда завершится текущая. Поскольку service_id = next_service_id - будет подключена таже услуга, которая действует в данный момент