Archives by date

You are browsing the site archives by date.

Руководство разработчика REST

MapIssues GS

 

MapIssues — rest — socket

GET /ws

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


GET /ws?token=puqw129npc074a

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

Ответ:

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

Статус: 400 — ошибка в запросе

Формат: text/plain

Содержит описание ошибки

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

Формат: text/plain

Содержит описание ошибки

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
Содержит описание ошибки

MapIssues — rest — orgs

GET /mapextents

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


GET /mapextents?token=puqw129npc074a

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

Ответ:

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

Формат: json

[{
	"id": 3,
	"name": "Republic of Tatarstan",
	"extent": {
		"x1": 46.0927078887718,
		"y1": 53.9919087034184,
		"x2": 55.299713101707,
		"y2": 56.6837870890742
	}
},...]


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

GET /organizations

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


GET /organizations?token=puqw129npc074a

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

Ответ:

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

Формат: json

[{
	"id": 1,
	"name": "ООО Организация №1",
	"blocked": false,
        "issuesMaxCount": 150,
        "usersMaxCount":0,
	"mapExtentId": 17
},...]


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

POST /organizations

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


POST /organizations?token=puqw129npc074a

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

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

Формат: json

{
	"name": "Название организации",
	"info": {
		"address": "Адрес организации",
		"phone": "8(495)226-16-16",
		"fax": "8(495)226-16-16",
		"email": "email@org.com",
		"inn": 32356856787,
		"kpp": 54576512,
		"bank": "Сбербанк",
		"bankKpp": 775001001,
		"bankBik": 044525225,
		"bankSchet": 45293554000
	},
	"mapExtent": {
                "x1": 58.8080522883846,
	        "y1": 38.14453125,
	        "x2": 68.1591796875,
	        "y2": 53.2980555749128
        }
}


// название организации, строка
// информация об организации
// адрес, строка (необязательное поле)
// номер телефона, строка (необязательное поле)
// факс, строка (необязательное поле)
// электронная почта, строка (необязательное поле)
// ИНН, целое число (необязательное поле)
// КПП, целое число (необязательное поле)
// название банка, строка (необязательное поле)
// КПП банка, целое число (необязательное поле)
// БИК банка, целое число (необязательное поле)
// счет, целое число (необязательное поле)

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

Ответ:

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

Формат: json

{
        "id":55,
	"name": "Название организации",
        "blocked": false,
        "issuesMaxCounts": 150,
        "usersMaxCount": 0,
	"info": {
		"address": "Адрес организации",
		"phone": "8(495)226-16-16",
		"fax": "8(495)226-16-16",
		"email": "email@org.com",
		"inn": 32356856787,
		"kpp": 54576512,
		"bank": "Сбербанк",
		"bankKpp": 775001001,
		"bankBik": 044525225,
		"bankSchet": 45293554000
	},
	"mapExtent": {
                "id": 544,
                "name": "ООО Организация",
                "extent": {
                	"x1": 58.8080522883846,
	        	"y1": 38.14453125,
	       		"x2": 68.1591796875,
	        	"y2": 53.2980555749128
		}
        }
}


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

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

// координата, число с плавающей точкой
// координата, число с плавающей точкой
// координата, число с плавающей точкой
// координата, число с плавающей точкой

GET /organizations/{id}

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


GET /organizations/1?token=puqw129npc074a

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

Ответ:

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

Формат: json

{
	"id": 1,
	"name": "ООО Организация №1",
	"blocked": false,
        "issuesMaxCounts": 150,
        "usersMaxCount": 0,
	"info": {
		"id": 1,
		"address": "Адрес организации",
		"phone": "5176617",
		"fax": "5176617",
		"email": "org1@gmail.com",
		"inn": 675424536,
		"kpp": 423124578,
		"bank": "ВТБ-24",
		"bankKpp": 366321411,
		"bankBik": 788574545778,
		"bankSchet": 787542121124
	},
	"mapExtent": {
		"id": 17,
		"name": "ООО Организация №1",
		"extent": {
			"x1": 58.8080522883846,
			"y1": 38.14453125,
			"x2": 68.1591796875,
			"y2": 53.2980555749128
		}
	}
}


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

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

PUT /organizations/{id}

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


PUT /organizations/5?token=puqw129npc074a

id: id организации

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

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

Формат: json

{
        "id": 5,
	"name": "ООО Организация",
	"info": {
		"address": "Адрес организации",
		"phone": "8(495)619-19-19",
		"fax": "8(495)618-18-18",
		"email": "email@org.com",
		"inn": 32356856787,
		"kpp": 54576512,
		"bank": "Сбербанк",
		"bankKpp": 775001001,
		"bankBik": 044525225,
		"bankSchet": 45293554000
	},
	"mapExtent": {
                "x1": 58.8080522883846,
	        "y1": 38.14453125,
	        "x2": 68.1591796875,
	        "y2": 53.2980555749128
        }
}


// id организации, целое число
// название организации, строка
// информация об организации
// адрес, строка
// номер телефона, строка
// факс, строка
// электронная почта, строка
// ИНН, целое число
// КПП, целое число
// название банка, строка
// КПП банка, целое число
// БИК банка, целое число
// номер счета, целое число

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

Ответ:

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

Формат: json

{
        "id":5,
	"name": "ООО Организация",
        "blocked": false,
        "issuesMaxCounts": 150,
        "usersMaxCount": 0,
	"info": {
                "id": 1,
		"address": "Адрес организации",
		"phone": "8(495)619-19-19",
		"fax": "8(495)618-18-18",
		"email": "email@org.com",
		"inn": 32356856787,
		"kpp": 54576512,
		"bank": "Сбербанк",
		"bankKpp": 775001001,
		"bankBik": 044525225,
		"bankSchet": 45293554000
	},
	"mapExtent": {
                "id":17,
                "name": "ООО Организация №1",
                "extent":{
                        "x1": 58.8080522883846,
	                "y1": 38.14453125,
	                "x2": 68.1591796875,
	                "y2": 53.2980555749128
                }
        }
}


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

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

DELETE /organizations/{id}

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


DELETE /organizations/1?token=puqw129npc074a

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

Ответ:

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

Формат: json

{
	"id": 1
}



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

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

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

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

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

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

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

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

MapIssues — rest — configs

GET /configs/dbfields/issues

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


GET /configs/dbfields/issues?token=puqw129npc074a

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

Ответ:

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

Формат: json

[{
	"fieldName": "createDate",
	"dbFieldName": "create_date"
},...]


// название поля, строка
// название поля в БД, строка

GET /configs/dbfields/users

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


GET /configs/dbfields/users?token=puqw129npc074a

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

Ответ:

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

Формат: json

[{
	"fieldName": "organizationId",
	"dbFieldName": "organization_id"
},...]


// название поля, строка
// название поля в БД, строка

Запросы configs необходимы для адаптирования прав в запросе /issues/states. В запросе /configs/dbfields/issues — отображается соотношение полей задач, которые приходят в REST-запросе и полей из базы данных. В запросе /configs/dbfields/users — отображается соотношение полей пользователей, которые приходят в REST-запросе и полей из базы данных.

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

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

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

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

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

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

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

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

MapIssues — rest — accesses

GET /issues/capabilities

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


GET /issues/capabilities?token=puqw129npc074a

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

Ответ:

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

Формат: json

[{
	"id": 1,
	"name": "show",
	"defaultValue": false
},...]


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

GET /issues/states

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


GET /issues/states?token=puqw129npc074a

Ответ:

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

Формат: json

[{
	"id": 1,
	"name": "assigned_me",
	"field": "assigned_user_id",
	"value": null,
	"sign": null,
	"currentUserField": "id"
},...]


// id состояния, целое число
// название, строка
// поле задачи (в базе данных), строка
// значение, может быть пустым, если currentUserField не пусто; строка
// знак, если null - то по умолчанию знак "="; строка
// поле у текущего пользователя, со значением которого нужно сравнивать; строка

Примечание

Подробнее о соотношении полей в REST-запросах и базе данных можно узнать при переходе в раздел «Конфигурации».

GET /issues/accesses

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


GET /issues/accesses?token=puqw129npc074a

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

Ответ:

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

Формат: json

[{
	"id": 109,
        "capabilityId": 1,
	"states": [5]
},...]


// id права доступа, целое число
// id возможного действия, целое число
// массив id состояний задачи, при котором доступно действие

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

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

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

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

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

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

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

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

MapIssues — rest — priorities

4 марта 2015 admin

GET /issues/priorities

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


GET /issues/priorities?token=puqw129npc074a

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

Ответ:

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

Формат: json

[{
	"id": 1,
	"name": "Новый клиент",
	"order": 1
},...]


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

POST /issues/priorities

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


POST /issues/priorities?token=puqw129npc074a

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

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

Формат: json

{
	"name": "Новый приоритет"
}


// название, строка

Ответ:

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

Формат: json

{
        "id": 5,
	"name": "Новый приоритет",
        "order": 5
}


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

GET /issues/priorities/{id}

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


GET /issues/priorities/3?token=puqw129npc074a

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

Ответ:

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

Формат: json

{
	"id": 3,
	"name": "VIP-клиент",
	"order": 3
}


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

PUT /issues/priorities/{id}

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


PUT /issues/priorities/3?token=puqw129npc074a

id: id приоритета

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

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

Формат: json

{
	"id": 3,
	"name": "Новое название",
	"order": 3
}


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

Ответ:

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

Формат: json

{
	"id": 3,
	"name": "Новое название",
	"order": 3
}


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

DELETE /issues/priorities/{id}

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


DELETE /issues/priorities/3?token=puqw129npc074a

id: id приоритета

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

Ответ:

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

Формат: json

{
	"id": 3
}



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

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

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

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

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

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

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

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

MapIssues — rest — fields

4 марта 2015 admin

GET /issues/customfields

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


GET /issues/customfields?token=puqw129npc074a

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

Ответ:

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

Формат: json

{
	"customFields": [{
		"id": 2,
		"name": "логическое",
		"translit": "logicheskoe",
		"format": "bool",
		"groupName": "Группа",
		"possibleValues": null,
		"regexp": "",
		"minLength": 0,
		"maxLength": 0,
		"isRequired": false,
		"defaultValue": "false",
		"visible": true,
		"isForAll": true,
		"order": 1,
		"types": []
	},...],
	"fieldsTypes": [{
		"name": "строка",
		"value": "string"
	},...]
}


// информация о дополнительных полях
// id поля, целое число
// название поля, строка
// английское название поля, строка
// формат поля (string|text|int|float|list|date|bool|geometry), строка
// название группы, строка
// возможные значения (для типа list), массив
// регулярное выражение (для типов string|text)
// минимальная длина, целое число
// максимальная длина, целое число
// обязательно для заполнения, булева переменная
// значение по умолчанию, строка
// видимость поля, булева переменная
// поле для всех видов работ, булева переменная
// порядковый номер, целое число
// id видов работ, массив

// типы полей
// название типа, строка
// значение типа, строка

POST /issues/customfields

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


POST /issues/customfields?token=puqw129npc074a

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

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

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

Формат: json

{
	"name": "Название поля",
	"format": "int",
	"groupName": "Название группы",
	"possibleValues": null,
	"regexp": null,
	"minLength": 5,
	"maxLength": 35,
	"isRequired": false,
	"defaultValue": 15000,
	"visible": true,
	"isForAll": false,
	"typeIds": [2,13,24]
}


// название поля, строка
// формат поля (string|text|int|float|list|date|bool|geometry), строка
// название группы (для группировки полей), строка
// возможные значения,массив строк,только для типа list
// регулярное выражение для проверки значений (для типов string, text)   
// минимальная длина (для типов string, text), целое число
// максимальная длина (для типов string, text), целое число
// является ли поле обязательным, булева переменная
// значение по умолчанию, строка
// является видимым, булева переменная
// для всех полей видов работ, булева переменная
// массив id видов работ (если isForAll=false)

Ответ:

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

Формат: json

{
	"id": 154,
	"name": "Название поля",
	"translit": "Nazvaniye polya",
	"format": "int",
	"groupName": "Название группы",
	"possibleValues": null,
	"regexp": null,
	"minLength": 5,
	"maxLength": 35,
	"isRequired": false,
	"defaultValue": 15000,
	"visible": true,
	"isForAll": false,
	"order": 58,
	"types": [2,13,24],
        "organizationId": 736
}


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

GET /issues/customfields/{id}

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


GET /issues/customfields/12?token=puqw129npc074a

id: id дополнительного поля

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

Ответ:

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

Формат: json

{
	"id": 12,
	"name": "тест геометрии",
	"translit": "test_geometrii",
	"format": "geometry",
	"groupName": "",
	"possibleValues": null,
	"regexp": "",
	"minLength": 0,
	"maxLength": 0,
	"isRequired": false,
	"defaultValue": "",
	"visible": true,
	"isForAll": true,
	"order": 10,
	"types": [],
        "organizationId": 736 
}


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

PUT /issues/customfields/{id}

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


PUT /issues/customfields/15?token=puqw129npc074a

id: id дополнительного поля

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

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

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

Формат: json

{
	"name": "Новое название поля",
	"format": "int",
	"groupName": "Новое название группы",
	"possibleValues": null,
	"regexp": null,
	"minLength": 5,
	"maxLength": 35,
	"isRequired": false,
	"defaultValue": 15000,
	"visible": true,
	"isForAll": false,
	"typeIds": [2,13,24],
        "order": 12
}


// название поля, строка
// формат поля (string|text|int|float|list|date|bool|geometry)
// название группы (для группировки полей), строка
// возможные значения,массив строк,только для format=list
// регулярное выражение для проверки значений (для типов string, text)
// минимальная длина (для типов string, text), целое число
// максимальная длина (для типов string, text), целое число
// является ли поле обязательным, булева переменная
// значение по умолчанию, строка
// поле является видимым, булева переменная
// для всех полей видов работ, булева переменная
// массив id видов работ (если поле предназначено не для всех видов)
// порядок в списке у дополнительного слоя

Ответ:

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

Формат: json

{
	"id": 15,
	"name": "Новое название поля",
	"translit": "Nazvaniye_polya",
	"format": "int",
	"groupName": "Новое название группы",
	"possibleValues": null,
	"regexp": null,
	"minLength": 5,
	"maxLength": 35,
	"isRequired": false,
	"defaultValue": 15000,
	"visible": true,
	"isForAll": false,
	"order": 58,
	"types": [2,13,24],
        "organizationId": 736
}


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

DELETE /issues/customfields/{id}

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


DELETE /issues/customfields/12?token=puqw129npc074a

id: id дополнительного поля

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

Ответ:

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

Формат: json

{
	"id": 12
}



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

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

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

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

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

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

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

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

MapIssues — rest — statuses

4 марта 2015 admin

GET /issues/statuses/actions

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


GET /issues/statuses/actions?token=puqw129npc074a

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

Ответ:

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

Формат: json

[{
	"action": "Начать",
	"statusId": 1,
	"statusToId": 2,
	"isPositive": true
},...]


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

GET /issues/statuses

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


GET /issues/statuses?token=puqw129npc074a

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

Ответ:

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

Формат: json

[{
	"id": 1,
	"name": "Назначено",
	"visible": true,
	"isDefault": true,
	"isClosed": false,
	"namePlural": "Назначены",
        "color":"3e72b1" 
},...]


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

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

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

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

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

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

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

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

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

MapIssues — rest — types

4 марта 2015 admin

GET /issues/types

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


GET /issues/types?token=puqw129npc074a

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

Ответ:

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

Формат: json

[{
	"id": 1,
	"name": "Замер",
	"isDefault": true
},...]


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

POST /issues/types

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


POST /issues/types?token=puqw129npc074a

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

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

Формат: json

{
	"name": "Разное",
	"isDefault": true
}


// название, строка
// добавляется ли этот вид работы по умолчанию, булева переменная

Ответ:

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

Формат: json

{
	"id": 26,
	"name": "Разное",
	"isDefault": false
}


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

GET /issues/types/{id}

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


GET /issues/types/3?token=puqw129npc074a

id: id вида работы

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

Ответ:

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

Формат: json

{
	"id": 3,
	"name": "Доставка",
	"isDefault": true
}


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

PUT /issues/types/{id}

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


PUT /issues/types/5?token=puqw129npc074a

id: id вида работы

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

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

Формат: json

{
	"name": "Разное",
	"isDefault": true
}


// название, строка
// добавляется ли этот вид работы по умолчанию, булева переменная

Ответ:

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

Формат: json

{
	"id": 5,
	"name": "Разное",
	"isDefault": false
}


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

DELETE /issues/types/{id}

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


DELETE /issues/types/3?token=puqw129npc074a

id: id вида работы

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

Ответ:

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

Формат: json

{
	"id": 3
}



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

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

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

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

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

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

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

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