Авторизация
Авторизация
POST /auth
Структура запроса:
POST /auth
Пример запроса:
Формат: json
{
"login": "login",
"password": "newpass12345"
}
Ответ:
Статус: 200 — успешное выполнение
Формат: json
{
"status": "ok"
}
Ключ доступа
POST /auth/token
Структура запроса:
POST /auth/token
Пример запроса:
Формат: json
{
"login": "login",
"password": "newpass12345"
}
// логин пользователя, строка
// пароль, строка
Ответ:
Статус: 200 — успешное выполнение
Формат: json
{
"token": "ksdn842dsa215w",
"refreshToken": "puqw129npc074a",
"ttl": 3600
}
// ключ доступа, строка
// обновленный ключ доступа, строка
// время жизни token в секундах, целое число
Обновление ключа доступа
GET /auth/token/refresh?refreshToken
Структура запроса:
GET /auth/token/refresh?refreshToken
refreshToken: ключ для обновления ключа доступа
Ответ:
Статус: 200 — успешное выполнение
Формат: json
{
"token": "ksdn842dsa215w",
"refreshToken": "puqw129npc074a",
"ttl": 3600
}
// ключ доступа, строка
// ключ для обновления ключа доступа, строка
// время жизни ключа доступа в секундах, целое число
Текущий пользователь
GET /users/current
Структура запроса:
GET /users/current?token=puqw129npc074a
token: ключ доступа
Ответ:
Статус: 200 — успешное выполнение
Формат: json
{
"id":1500,
"email":"user1@org1.ru",
"name":"Администратор№1",
"admin":true,
"wheel":false,
"phone":"89556655888",
"photo": {
"id": 4,
"name": "IMG_20150324_120506.jpg"
},
"location":{
"lon": 49.1420645,
"lat": 55.7745272,
"date": 1422336455000
},
"createDate":1406208891174,
"role": {
"id":2,
"name":"Администратор организации"
},
"verified":true,
"organizationInfo": {
"id":777,
"name":"ООО Организация №1",
"mapExtent": {
"id":555,
"name":"ООО Организация №1",
"extent": {
"x1": 58.8080522883846,
"y1": 38.14453125,
"x2": 68.1591796875,
"y2": 53.2980555749128
}
}
},
"issuesCount": 10,
"pushRule": 1
}
// id-пользователя, целое число
// e-mail пользователя, строка
// имя пользователя, строка
// true, если пользователь является администратором, булева переменная
// расширенные права на просмотр, булева переменная
// номер телефона пользователя, строка
// фотография
// ключ (изменяется, при изменении фотографии)
// название файла
// последнее местоположение пользователя
// x центра карты, число с плавающей точкой
// y центра карты, число с плавающей точкой
// дата обновления, timestamp
// дата обновления, timestamp
// информация о группе прав, объект
// id группы прав, целое число
// название группы прав, строка
// прошел ли пользователь верификацию email
// данные об организации пользователя, объект
// id организации, целое число
// название организации, строка
// данные о границе карты для данной организации, объект
// id границы карты, целое число
// название границы карты, строка
// область видимости карты, объект
// координата, число с плавающей точкой
// координата, число с плавающей точкой
// координата, число с плавающей точкой
// координата, число с плавающей точкой
// количество назначенных задач в работе
// правило, по которому отправляются push-уведомления
Выход из системы
GET /logout
Структура запроса:
GET /logout?token=puqw129npc074a
token: ключ доступа
Ответ:
Статус: 200 — успешное выполнение
Формат: json
{
"status": "ok"
}
Восстановление пароля
POST /restore/password
Структура запроса:
POST /restore/password
Пример запроса:
Статус: 200 — успешное выполнение
Формат: json
{
"step": 1,
"email": "email@email.com"
}
{
"step": 2,
"password":"12345678",
"rePassword": "12345678"
}
// шаг 1, ввод email
// электронная почта, строка
// шаг 2, изменение пароля
// ввод нового пароля, строка
// повторный ввод пароля, строка
Ответ:
Статус: 200 — успешное выполнение
Формат: json
{
"status": "ok"
}
Капча
GET /captcha
Структура запроса:
GET /captcha
Ответ:
Статус: 200 — успешное выполнение
Формат: image/png
В ответ отдается изображение
В ответ отдается изображение
Возможные статусы ответов сервера при ошибке:
Статус: 401 — необходима авторизация
Формат: text/plain
Содержит описание ошибки
Содержит описание ошибки
Статус: 403 — доступ запрещен
Формат: text/plain
Содержит описание ошибки
Содержит описание ошибки
Статус: 404 — не найдено
Формат: text/plain
Содержит описание ошибки
Содержит описание ошибки
Статус: 500 — ошибка на сервере
Формат: text/plain
Содержит описание ошибки
Содержит описание ошибки