MapIssues — rest — users

GET /users

Структура запроса:


GET /users?token=puqw129npc074a

token: ключ доступа

Ответ:

Статус: 200 — успешное выполнение

Формат: json

[{
	"id": 1,
	"email": "korablev@org1.ru",
	"name": "Кораблев А.В. (доставщик)",
	"admin": false,
	"wheel": false,
	"phone": "+79600310237",
        "photo": {                               
                "id": 8,                          
                "name": "new_photo.jpg"           
        },
	"location": {
		"lon": 0.0,
		"lat": 0.0,
		"date": 1411455528000
	},
	"organizationId": 1,
	"roleId": 1,                     
	"issuesCount": 10 
},...]


// id пользователя, целое число
// электронная почта, строка
// имя пользователя, строка
// является администратором (true), булева переменная
// является всевидящим (true), булева переменная
// номер телефона, строка
// информация о фотографии
// id фотографии, целое число
// название фотографии, строка

// местоположение пользователя
// х центра карты, число с плавающей точкой
// у центра карты, число с плавающей точкой
// дата обновления, timestamp

// id организации, целое число
// id роли, целое число
// количество назначенных заданий, целое число

POST /users

Структура запроса:


POST /users?token=puqw129npc074a

token: ключ доступа

Пример запроса:

Формат: json

{
	"admin": false,
	"email": "newuser@org.com",
	"name": "ФИО пользователя",
	"password": "password",
	"phone": "+7917604440",
	"photo": {                          
		"uuid": "aterjjtyth.png",      
		"name": "myphoto.png"      
         },
	"pushRule": 3,
	"wheel": false,
}


// является ли администратором, булева переменная
// электронная почта, строка
// имя пользователя, строка
// пароль, строка
// телефон, строка
// информация о фотографии
// id фотографии, строка
// название, строка

// тип уведомления, целое число
// всевидящий пользователь, булева переменная

Ответ:

Статус: 200 — успешное выполнение

Формат: json

{
        "id": 1445,                                   
        "email": "newuser@org.com",                  
        "name": "ФИО пользователя",              
        "admin": false,                                  
        "wheel": false,                              
        "phone": "+7917604440",                        
        "photo": {                                     
                "id": 8,                            
                "name": "user.png"                 
        },
        "location": {                                
                "lon": 49.1414826,                   
                "lat": 55.7746738,                      
                "date": 1408535009000                   
        },
        "createDate": 1406278446599,          
        "role": {                                      
                "id": 1,                              
                "name": "Пользователь организации"       
        },
        "verified": true,                                
        "organizationInfo": {                           
                "id": 736,                               
                "name": "ООО Организация №1",       
                "mapExtent": {          
                        "id": 554,             
                        "name": "ООО Организация №1",  
                        "extent": {                     
                           "x1": 58.8080522883846,    
                           "y1": 38.14453125,            
                           "x2": 68.1591796875,     
                           "y2": 53.2980555749128       
                        }
                }
        },
        "issuesCount": 8,                        
        "pushRule": 3                                
}


// id пользователя, целое число
// электронная почта, строка
// имя пользователя, строка
// является ли администратором, булева переменная
// является всевидящим, булева переменная
// номер телефона, строка
// информация о фотографии
// id фотографии, целое число
// название фотографии, строка

// местоположение
// x центра карты, число с плавающей точкой
// y центра карты, число с плавающей точкой
// дата последнего обновления, timestamp

// дата добавления пользователя,timestamp
// роль пользователя, объект
// id роли, целое число
// наименование роли, строка

// исполнитель, булева переменная
// данные об организации, объект
// id организации, целое число
// название организации, строка

// id, целое число
// название, строка
// координаты, объект
// координата, число с плавающей точкой
// координата, число с плавающей точкой
// координата, число с плавающей точкой
// координата, число с плавающей точкой



// количество назначенных задач, целое число
// id правила, по которому будут приходить уведомления

GET /users/count

Структура запроса:


GET /users/count?token=puqw129npc074a

token: ключ доступа

Ответ:

Статус: 200 — успешное выполнение

Формат: json


18	


// количество пользователей

GET /users/roles

Структура запроса:


GET /users/roles?token=puqw129npc074a

token: ключ доступа

Ответ:

Статус: 200 — успешное выполнение

Формат: json

[{
	"id": 2,
	"name": "Администратор организации"
},...]


// id роли, целое число
// название, строка

GET /users/{id}

Структура запроса:


GET /users/12?token=puqw129npc074a

id: id пользователя

token: ключ доступа

Ответ:

Статус: 200 — успешное выполнение

Формат: json

{
	"id": 12,
	"email": "sergeev@org1.ru",
	"name": "Сергеев С.В. (замерщик)",
	"admin": false,
	"wheel": false,
	"phone": "+79600316477",
        "photo": {                                    
                "id": 8,                               
                "name": "photo.jpg"                
        },
	"location": {
		"lon": 0.0,
		"lat": 0.0,
		"date": 1411455528000
	},
	"createDate": 1406278076703,
	"role": {
		"id": 1,
		"name": "Пользователь организации"
	},
	"verified": true,
	"organizationInfo": {
		"id": 7,
		"name": "ООО Организация",
		"mapExtent": {
			"id": 554,
			"name": "ООО Организация",
			"extent": {
				"x1": 58.8080522883846,
				"y1": 38.14453125,
				"x2": 68.1591796875,
				"y2": 53.2980555749128
			}
		}
	},
        "issuesCount": 8,
        "pushRule": 2
}


// id пользователя, целое число
// электронная почта, строка
// имя пользователя, строка
// является ли администратором, булева переменная
// является ли всевидящим, булева переменная
// номер телефона, строка
// информация о фотографии
// id фотографии, целое число
// название фотографии, строка

// местоположение
// x центра карты, число с плавающей точкой
// y центра карты, число с плавающей точкой
// дата последнего обновления, timestamp

// дата добавления пользователя, timestamp
// роль пользователя, объект
// id роли, целое число
// наименование роли, строка

// исполнитель, булева переменная
// информация об организации, объект
// id организации, целое число
// название организации, строка

// id, целое число
// название, строка
// координаты, объект
// координата, число с плавающей точкой
// координата, число с плавающей точкой
// координата, число с плавающей точкой
// координата, число с плавающей точкой



// количество назначенных задач, целое число
// id правила, по которому будут приходить оповещения

PUT /users/{id}

Структура запроса:


PUT /users/12?token=puqw129npc074a

id: id пользователя

token: ключ доступа

Пример запроса:

Формат: json

{
	"id": 12,
	"email": "newuser@org.com",
	"password": "password",
	"name": "ФИО пользователя",
	"admin": true,
	"phone": "+7917604440",
	"organizationId": 7,
	"wheel": false,
	"photo": {                          
		"id": 2693,                       
		"uuid": "aterjjtyth.png",       
		"name": "myphoto.png"             
	},
        "pushRule": 3
}


// id пользователя, целое число
// электронная почта, строка
// пароль, строка
// имя, строка
// является администратором, булева переменная
// номер телефона, строка
// id организации, целое число
// всевидящий, булева переменная
// фотография пользователя, объект
// id фотографии, целое число
// ключ загруженной заранее новой фотографии, строка
// название файла новой фотографии

// тип уведомления, целое число

Ответ:

Статус: 200 — успешное выполнение

Формат: json

{
	"id": 12,
	"email": "newemail@org.com",
	"name": "ФИО пользователя",
	"admin": false,
	"wheel": false,
	"phone": "+7917604440",
        "photo": {                                    
                "id": 8,                               
                "name": "photo.jpg"                
        },
	"location": {
		"lon": 0.0,
		"lat": 0.0,
		"date": null
	},
        "createDate": 1406278446599,               
        "role": {                                       
                "id": 1,                                
                "name": "Пользователь организации"       
        },
        "verified": true,                                
        "organizationInfo": {                      
                "id": 736,                           
                "name": "ООО Организация №1",           
                "mapExtent": {          
                        "id": 554,                  
                        "name": "ООО Организация №1",  
                        "extent": {                     
                           "x1": 58.8080522883846,     
                           "y1": 38.14453125,           
                           "x2": 68.1591796875,         
                           "y2": 53.2980555749128    
                        }
                }
        },
        "issuesCount": 8,                               
        "pushRule": 2 
}


// id пользователя, целое число
// электронная почта, строка
// имя пользователя, строка
// является ли администратором, булева переменная
// является ли всевидящим, булева переменная
// номер телефона, строка
// информация о фотографии
// id фотографии, целое число
// название фотографии, строка

// местоположение, объект
// x центра карты, число с плавающей точкой
// у центра карты, число с плавающей точкой
// дата последнего обновления, timestamp

// дата добавления пользователя,timestamp
// роль пользователя, объект
// id роли, целое число
// наименование роли, строка

// исполнитель, булева переменная
// данные об организации, объект
// id организации, целое число
// название организации, строка

// id, целое число
// название, строка
// координаты, объект
// координата, число с плавающей точкой
// координата, число с плавающей точкой
// координата, число с плавающей точкой
// координата, число с плавающей точкой



// количество назначенных задач в работе, целое число
// id правила, по которому будут приходить уведомления

DELETE /users/{id}

Структура запроса:


DELETE /users/12?token=puqw129npc074a

id: id пользователя

token: ключ доступа

Ответ:

Статус: 200 — успешное выполнение

Формат: json

{
	"id": 12
}



GET /users/{id}/track?dateFrom&dateTo

Структура запроса:


GET /users/12/track?token=puqw129npc074a

id: id пользователя

token: ключ доступа

Ответ:

Статус: 200 — успешное выполнение

Формат: json

{
    "points": [{                                                   
        "data": 1424240996000,                                     
        "lat": 65.7595,                          
        "lng": 47.6329,                 
        "control": true,                            
        "address": "Архангельская область, Мезенский район",
        "distance": 1232       
    }...],
    "distance": 453254                                           
}


// список точек
// дата, timestamp
// широта, число с плавающей точкой
// долгота, число с плавающей точкой
// является ли точка контрольной
// адрес точки
// пройденная дистанция от начала пути

// общая дистанция в метрах, целое число

GET /users/{id}/photo

Структура запроса:


GET /users/12/photo?token=puqw129npc074a

id: id пользователя

token: ключ доступа

Возможные параметры запроса:

width: ширина картинки

height: высота картинки

crop: обрезать ли картинку по ширине и высоте

stretch: растягивать ли картинку по ширине и высоте

Ответ:

Статус: 200 — успешное выполнение

Выводит файл/изображение на экран

Статус: 401 — необходима авторизация

Формат: text/plain
Содержит описание ошибки

Статус: 403 — доступ запрещен

Формат: text/plain
Содержит описание ошибки

Статус: 404 — не найдено

Формат: text/plain
Содержит описание ошибки

Статус: 500 — ошибка на сервере

Формат: text/plain
Содержит описание ошибки