Инструменты пользователя

Инструменты сайта


ru:airlay:api:air-lay-v4

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
Последняя версия Следующая версия справа и слева
ru:airlay:api:air-lay-v4 [2021/05/20 12:03]
Лев [Структура запроса]
ru:airlay:api:air-lay-v4 [2021/06/20 13:44]
Лев [Issue]
Строка 13: Строка 13:
 <code> <code>
     /**     /**
-     * POST+     Desctiprion - описание Action 
 +     * request([ 
 +         "method" => "тип метода", 
 +         "url" => "api/v4/controllerName/actionName", - адрес запроса 
 +         (полный путь "api/v4/controllerNameComtroller/actionNameAction"
 +           'file' => 'описание содержимого файла в случае передачи файлом'  
 +         'params' => [ 
 +             [ 
 +                 'name' => 'Имя параметра', 
 +                 'type' => 'Тип параметра', 
 +                 'description' => 'Описание параметра', 
 +                 'required' => 'Флаг обязателен параметр или нет' 
 +             ], 
 +             ... 
 +         ] - Параметры в случае передачи через параметры 
 +     * ]) - Передаваемые в Action значения  
 +     * response([   
 +         "status" => 'Статус код ответа',  
 +         "message" => 'Сообщение ответа',  
 +         "code" => 'код ответа'  
 +     * ]) - Возвращаемое значение после выполнения Action 
 +     * @throws - ошибки которые могут возникать в ходе работы 
 +     * 
 +     * @Authorization - флаг необходимости авторизации 
 +     */ 
 +</code> 
 +=====Контроллеры===== 
 + 
 + 
 + 
 + 
 +==== Label==== 
 +=== getAction === 
 +<code php> 
 +    /** 
 +     * Get labels 
 +     * request([ 
 +         'method' => 'GET', 
 +         'url' => '/api/v4/label/get' 
 +         'params' => [ 
 +             [ 
 +                 'name' => 'type', 
 +                 'type' => 'string', 
 +                 'description' => 'label type', 
 +                 'required' => true 
 +             ] 
 +         ] 
 +     * ]) 
 +     * response([ 
 +         'status' => 200, 
 +         'message' => LabelsEntity[], 
 +         'code' => 0 
 +     * ]) 
 +     * 
 +     * @Authorization(['CmsUser', 'User']) 
 +     * 
 +     * @throws AirlayException 
 +     */ 
 +</code> 
 + 
 +==== Issue ==== 
 +=== getAction === 
 +<code php> 
 +    /** 
 +     * Get issues 
 +     * request([ 
 +         'method' => 'GET', 
 +         'url' => '/api/v4/issue/get' 
 +         'params' => [ 
 +              [ 
 +                 'name' => 'milestoneIds', 
 +                 'type' => 'ObjectId[]', 
 +                 'description' => 'milestones filter', 
 +                 'required' => false 
 +             ], 
 +             [ 
 +                 'name' => 'assignIds', 
 +                 'type' => 'ObjectId[]', 
 +                 'description' => 'assigns filter', 
 +                 'required' => false 
 +             ], 
 +             [ 
 +                 'name' => 'priorityIds', 
 +                 'type' => 'ObjectId[]', 
 +                 'description' => 'priorities filter', 
 +                 'required' => false 
 +             ], 
 +             [ 
 +                 'name' => 'statusId', 
 +                 'type' => 'ObjectId|null', 
 +                 'description' => 'status id', 
 +                 'required' => false 
 +             ], 
 +             [ 
 +                 'name' => 'name', 
 +                 'type' => 'string', 
 +                 'description' => 'name starts with', 
 +                 'required' => false 
 +             ] 
 +         ] 
 +     * ]) 
 +     * response([ 
 +         'status' => 200, 
 +         'message' => IssueEntity[], 
 +         'code' => 0 
 +     * ]) 
 +     * 
 +     * @Authorization(['CmsUser', 'User']) 
 +     */ 
 +</code> 
 + 
 +=== createAction === 
 +<code php> 
 +    /** 
 +     * request([ 
 +         'method' => 'POST', 
 +         'url' => '/api/v4/issue/create' 
 +         'params' => [ 
 +              [ 
 +                 'name' => 'name', 
 +                 'type' => 'string', 
 +                 'description' => 'issue name', 
 +                 'required' => true 
 +             ], 
 +             [ 
 +                 'name' => 'description', 
 +                 'type' => 'string', 
 +                 'description' => 'issue description', 
 +                 'required' => false 
 +             ], 
 +             [ 
 +                 'name' => 'assignId', 
 +                 'type' => 'objectId|null', 
 +                 'description' => 'issue assign user id', 
 +                 'required' => false 
 +             ], 
 +             [ 
 +                 'name' => 'priorityId', 
 +                 'type' => 'objectId'|null, 
 +                 'description' => 'priority id', 
 +                 'required' => false 
 +             ],, 
 +             [ 
 +                 'name' => 'statusId', 
 +                 'type' => 'objectId'|null, 
 +                 'description' => 'status id', 
 +                 'required' => false 
 +             ], 
 +             [ 
 +                 'name' => 'milestoneId', 
 +                 'type' => 'objectId'|null, 
 +                 'description' => 'milestone id', 
 +                 'required' => false 
 +             ], 
 +             [ 
 +                 'name' => 'endDate', 
 +                 'type' => 'int'|null, 
 +                 'description' => 'close date', 
 +                 'required' => false 
 +             ], 
 +             [ 
 +                 'name' => 'spentTime', 
 +                 'type' => 'int'|null, 
 +                 'description' => 'spent time', 
 +                 'required' => false 
 +             ], 
 +             [ 
 +                 'name' => 'estimatedTime', 
 +                 'type' => 'int'|null, 
 +                 'description' => 'estimated time', 
 +                 'required' => false 
 +             ], 
 +             [ 
 +                 'name' => 'progress', 
 +                 'type' => 'int'|null, 
 +                 'description' => 'percentage of issue completed', 
 +                 'required' => false 
 +             ], 
 +             [ 
 +                 'name' => 'parents', 
 +                 'type' => 'ObjectId[]', 
 +                 'description' => 'parent issue ids', 
 +                 'required' => false 
 +             ] 
 +         ] 
 +     * ]) 
 +     * response([ 
 +         'status' => 200, 
 +         'message' => IssueEntity, 
 +         'code' => 0 
 +     * ]) 
 +     * 
 +     * @throws AirlayException 
 +     * 
 +     * @Authorization('CmsUser'
 +     */ 
 +</code> 
 + 
 +=== updateAction === 
 +<code php> 
 +    /** 
 +     * Update issue 
 +     * request([ 
 +         'method' => 'POST', 
 +         'url' => '/api/v4/issue/update' 
 +         'params' => [ 
 +              [ 
 +                 'name' => 'id', 
 +                 'type' => 'objectId', 
 +                 'description' => 'issue id', 
 +                 'required' => true 
 +             ], 
 +             [ 
 +                 'name' => 'name', 
 +                 'type' => 'string', 
 +                 'description' => 'issue name', 
 +                 'required' => true 
 +             ], 
 +             [ 
 +                 'name' => 'statusId', 
 +                 'type' => 'objectId'|null, 
 +                 'description' => 'status id', 
 +                 'required' => false 
 +             ], 
 +             [ 
 +                 'name' => 'description', 
 +                 'type' => 'string', 
 +                 'description' => 'issue description', 
 +                 'required' => false 
 +             ], 
 +             [ 
 +                 'name' => 'assignId', 
 +                 'type' => 'objectId|null', 
 +                 'description' => 'issue assign user id', 
 +                 'required' => false 
 +             ], 
 +             [ 
 +                 'name' => 'priorityId', 
 +                 'type' => 'objectId'|null, 
 +                 'description' => 'priority id', 
 +                 'required' => false 
 +             ], 
 +             [ 
 +                 'name' => 'milestoneId', 
 +                 'type' => 'objectId'|null, 
 +                 'description' => 'milestone id', 
 +                 'required' => false 
 +             ], 
 +             [ 
 +                 'name' => 'endDate', 
 +                 'type' => 'int'|null, 
 +                 'description' => 'close date', 
 +                 'required' => false 
 +             ], 
 +             [ 
 +                 'name' => 'spentTime', 
 +                 'type' => 'int'|null, 
 +                 'description' => 'spent time', 
 +                 'required' => false 
 +             ], 
 +             [ 
 +                 'name' => 'estimatedTime', 
 +                 'type' => 'int'|null, 
 +                 'description' => 'estimated time', 
 +                 'required' => false 
 +             ], 
 +             [ 
 +                 'name' => 'progress', 
 +                 'type' => 'int'|null, 
 +                 'description' => 'percentage of issue completed', 
 +                 'required' => false 
 +             ], 
 +             [ 
 +                 'name' => 'parents', 
 +                 'type' => 'ObjectId[]', 
 +                 'description' => 'parent issue ids', 
 +                 'required' => false 
 +             ] 
 +         ] 
 +     * ]) 
 +     * response([ 
 +         'status' => 200, 
 +         'message' => IssueEntity, 
 +         'code' => 0 
 +     * ]) 
 +     * 
 +     * @throws AirlayException 
 +     * 
 +     * @Authorization('CmsUser'
 +     */ 
 +</code> 
 + 
 +=== deleteAction === 
 +<code php> 
 +    /** 
 +     * Delete issue 
 +     * request([ 
 +         'method' => 'POST', 
 +         'url' => '/api/v4/issue/delete' 
 +         'params' => [ 
 +              [ 
 +                 'name' => 'id', 
 +                 'type' => 'objectId', 
 +                 'description' => 'issue id', 
 +                 'required' => true 
 +             ] 
 +         ] 
 +     * ]) 
 +     * response([ 
 +         'status' => 200, 
 +         'message' => 'OK', 
 +         'code' => 0 
 +     * ]) 
 +     * 
 +     * @throws AirlayException 
 +     * 
 +     * @Authorization('CmsUser'
 +     */ 
 +</code> 
 + 
 +=== addObserverAction === 
 +<code php> 
 +   /** 
 +     * Add observer 
 +     * request([ 
 +         'method' => 'POST', 
 +         'url' => '/api/v4/issue/addObserver' 
 +         'params' => [ 
 +              [ 
 +                 'name' => 'id', 
 +                 'type' => 'objectId', 
 +                 'description' => 'issue id', 
 +                 'required' => true 
 +             ], 
 +             [ 
 +                 'name' => 'type', 
 +                 'type' => 'string' ('user' | 'organization' | 'group' | 'department'), 
 +                 'description' => 'type of observer', 
 +                 'required' => true 
 +             ], 
 +             [ 
 +                 'name' => 'observerId', 
 +                 'type' => 'objectId', 
 +                 'description' => 'observers id', 
 +                 'required' => true 
 +             ] 
 +         ] 
 +     * ]) 
 +     * response([ 
 +         'status' => 200, 
 +         'message' => 'OK', 
 +         'code' => 0 
 +     * ]) 
 +     * 
 +     * @throws AirlayException 
 +     * 
 +     * @Authorization('CmsUser'
 +     */ 
 +</code> 
 + 
 +=== removeObserverAction === 
 +<code php> 
 +    /** 
 +     * Remove observer 
 +     * request([ 
 +         'method' => 'POST', 
 +         'url' => '/api/v4/issue/removeObserver' 
 +         'params' => [ 
 +              [ 
 +                 'name' => 'id', 
 +                 'type' => 'objectId', 
 +                 'description' => 'issue id', 
 +                 'required' => true 
 +             ], 
 +             [ 
 +                 'name' => 'observerId', 
 +                 'type' => 'objectId', 
 +                 'description' => 'observers id', 
 +                 'required' => true 
 +             ] 
 +         ] 
 +     * ]) 
 +     * response([ 
 +         'status' => 200, 
 +         'message' => 'OK', 
 +         'code' => 0 
 +     * ]) 
 +     * 
 +     * @throws AirlayException 
 +     * 
 +     * @Authorization('CmsUser'
 +     */ 
 +</code> 
 + 
 +=== getCommentsAction === 
 +<code php> 
 +    /** 
 +     * Get issue comments 
 +     * request( 
 +         'method' => 'GET', 
 +         'url' => '/api/v4/issue/getComments', 
 +         'params' => [ 
 +              [ 
 +                  'name' => 'issueId', 
 +                  'type' => 'ObjectId', 
 +                  'required' => true, 
 +                  'description' => 'Issue id' 
 +              ], 
 +              [ 
 +                  'name' => 'skip', 
 +                  'type' => 'int', 
 +                  'required' => false, 
 +                  'description' => 'Skip comments in result' 
 +              ], 
 +              [ 
 +                  'name' => 'limit', 
 +                  'type' => 'int', 
 +                  'required' => false, 
 +                  'description' => 'Limit comments in result' 
 +              ] 
 +         ] 
 +     * ) 
 +     * response( 
 +         '200' => [ 
 +              'status' => 200, 
 +              'message' => CommentEntity[] 
 +              'code' => 0 
 +         ] 
 +     * ) 
 +     * 
 +     * @throws AirlayException 
 +     * 
 +     * @Authorization 
 +     */ 
 +</code> 
 + 
 +=== addCommentAction === 
 +<code php> 
 +    /** 
 +     * Add new comment to issue. 
 +     * request([ 
 +         'method' => 'POST', 
 +         'url' => '/api/v4/issue/addComment' 
 +         'params' => [ 
 +              [ 
 +                 'name' => 'id', 
 +                 'type' => 'objectId', 
 +                 'description' => 'Issue id', 
 +                 'required' => true 
 +             ], 
 +             [ 
 +                 'name' => 'text', 
 +                 'type' => 'string', 
 +                 'description' => 'comments text', 
 +                 'required' => true 
 +             ] 
 +         ] 
 +     * ]) 
 +     * response([ 
 +         'status' => 200, 
 +         'message' => 'CommentEntity', 
 +         'code' => 0 
 +     * ]) 
 +     * 
 +     * @throws AirlayException 
 +     * 
 +     * @Authorization 
 +     */ 
 +</code> 
 + 
 +=== updateCommentAction === 
 +<code php> 
 +    /** 
 +     * Update comment. 
 +     * request([ 
 +         'method' => 'POST', 
 +         'url' => '/api/v4/issue/updateComment' 
 +         'params' => [ 
 +              [ 
 +                 'name' => 'id', 
 +                 'type' => 'objectId', 
 +                 'description' => 'Comment id', 
 +                 'required' => true 
 +             ], 
 +             [ 
 +                 'name' => 'text', 
 +                 'type' => 'string', 
 +                 'description' => 'Comment text', 
 +                 'required' => true 
 +             ] 
 +         ] 
 +     * ]) 
 +     * response([ 
 +         'status' => 200, 
 +         'message' => 'CommentEntity', 
 +         'code' => 0 
 +     * ]) 
 +     * 
 +     * @throws AirlayException 
 +     * 
 +     * @Authorization 
 +     */ 
 +</code> 
 + 
 +=== removeCommentAction === 
 +<code php> 
 +    /** 
 +     * Remove comment from issue. 
 +     * request([ 
 +         'method' => 'POST', 
 +         'url' => '/api/v4/issue/removeComment' 
 +         'params' => [ 
 +             [ 
 +                 'name' => 'id', 
 +                 'type' => 'objectId', 
 +                 'description' => 'Comment id', 
 +                 'required' => true 
 +             ] 
 +         ] 
 +     * ]) 
 +     * response([ 
 +         'status' => 200, 
 +         'message' => 'Ok', 
 +         'code' => 0 
 +     * ]) 
 +     * 
 +     * @throws AirlayException 
 +     * 
 +     * @Authorization 
 +     */ 
 +</code> 
 + 
 +=== addRelatedObjectAction === 
 +<code php> 
 +    /** 
 +     * Add related object. 
 +     * request([ 
 +         'method' => 'POST', 
 +         'url' => '/api/v4/issue/addRelatedObject' 
 +         'params' => [ 
 +              [ 
 +                 'name' => 'id', 
 +                 'type' => 'objectId', 
 +                 'description' => 'issue id', 
 +                 'required' => true 
 +             ], 
 +             [ 
 +                 'name' => 'relatedObject', 
 +                 'type' => 'json', 
 +                 'description' => 'related object content', 
 +                 'required' => true 
 +             ] 
 +         ] 
 +     * ]) 
 +     * response([ 
 +         'status' => 200, 
 +         'message' => 'OK', 
 +         'code' => 0 
 +     * ]) 
 +     * @throws AirlayException 
 +     * @Authorization 
 +     */ 
 +</code> 
 + 
 +=== removeRelatedObjectAction === 
 +<code php> 
 +    /** 
 +     * Remove related object. 
 +     * request([ 
 +         'method' => 'POST', 
 +         'url' => '/api/v4/issue/removeRelatedObject' 
 +         'params' => [ 
 +              [ 
 +                 'name' => 'id', 
 +                 'type' => 'objectId', 
 +                 'description' => 'issue id', 
 +                 'required' => true 
 +             ], 
 +             [ 
 +                 'name' => 'index', 
 +                 'type' => 'int', 
 +                 'description' => 'number of object to remove', 
 +                 'required' => true 
 +             ] 
 +         ] 
 +     * ]) 
 +     * response([ 
 +         'status' => 200, 
 +         'message' => 'OK', 
 +         'code' => 0 
 +     * ]) 
 +     * 
 +     * @throws AirlayException 
 +     * 
 +     * @Authorization 
 +     */ 
 +</code> 
 + 
 + 
 + 
 +==== Milestone ==== 
 +=== getAction === 
 +<code php> 
 +    /** 
 +     * Get milestones. 
 +     * request([ 
 +         'method' => 'GET', 
 +         'url' => '/api/v4/milestone/get', 
 +         'params' => [ 
 +             [ 
 +                 'name' => 'status', 
 +                 'type' => 'string', 
 +                 'required' => false 
 +             ], 
 +             [ 
 +                 'name' => 'name', 
 +                 'type' => 'string', 
 +                 'required' => false 
 +             ] 
 +         ] 
 +     * ]) 
 +     * response([ 
 +         'status' => 'OK', 
 +         'message' => MilestoneEntity[] 
 +         'code' => 0 
 +     * ]) 
 +     * @Authorization('CmsUser', 'User'
 +     */ 
 +</code> 
 +=== createAction === 
 +<code php> 
 +    /** 
 +     * Create milestone 
 +     * request([ 
 +         "method" => "POST", 
 +         "url" => "api/v4/milestone/create", 
 +         "params" => [ 
 +             [ 
 +                 'name' => 'name', 
 +                 'type' => 'string', 
 +                 'description' => 'Milestone name', 
 +                 'required' => true 
 +             ], 
 +             [ 
 +                 'name' => 'description', 
 +                 'type' => 'string' | 'null', 
 +                 'description' => 'Milestone description', 
 +                 'required' => false 
 +             ], 
 +             [ 
 +                 'name' => 'startDate', 
 +                 'type' => 'int' | 'null', 
 +                 'description' => 'Milestone start date', 
 +                 'required' => false 
 +             ], 
 +             [ 
 +                 'name' => 'endDate', 
 +                 'type' => 'int' | 'null', 
 +                 'description' => 'Milestone end date', 
 +                 'required' => false 
 +             ] 
 +         ] 
 +     * ]) 
 +     * response([ 
 +         "status" => 200, 
 +         "message" => MilestoneEntity 
 +         "code" => 0 
 +     * ]) 
 +     * @throws AirlayException 
 +     * 
 +     * @Authorization('CmsUser'
 +     */ 
 +</code> 
 +=== updateAction === 
 +<code php> 
 +    /** 
 +     * Update milestone 
 +     * request([ 
 +         "method" => "POST", 
 +         "url" => "api/v4/milestone/update", 
 +         "params" => [ 
 +             [ 
 +                 'name' => 'id', 
 +                 'type' => 'ObjectId', 
 +                 'description' => 'Milestone id', 
 +                 'required' => true 
 +             ], 
 +             [ 
 +                 'name' => 'name', 
 +                 'type' => 'string' | 'null', 
 +                 'description' => 'Milestone name', 
 +                 'required' => false 
 +             ], 
 +             [ 
 +                 'name' => 'description', 
 +                 'type' => 'string' | 'null', 
 +                 'description' => 'Milestone description', 
 +                 'required' => false 
 +             ], 
 +             [ 
 +                 'name' => 'startDate', 
 +                 'type' => 'int' | 'null', 
 +                 'description' => 'Milestone start date', 
 +                 'required' => false 
 +             ], 
 +             [ 
 +                 'name' => 'endDate', 
 +                 'type' => 'int' | 'null', 
 +                 'description' => 'Milestone end date', 
 +                 'required' => false 
 +             ] 
 +         ] 
 +     * ]) 
 +     * response([ 
 +         "status" => 200, 
 +         "message" => MilestoneEntity 
 +         "code" => 0 
 +     * ]) 
 +     * @throws AirlayException 
 +     * 
 +     * @Authorization('CmsUser'
 +     */ 
 +</code> 
 +=== deleteAction === 
 +<code php> 
 +    /** 
 +     * Delete milestone 
 +     * request([ 
 +         "method" => "POST", 
 +         "url" => "api/v4/milestone/delete", 
 +         'params' => [ 
 +             [ 
 +                 'name' => 'id', 
 +                 'type' => 'objectId', 
 +                 'description' => 'milestone id', 
 +                 'required' => true 
 +             ] 
 +         ] 
 +     * ]) 
 +     * response([ 
 +         "status" => 200, 
 +         "message" => Ok 
 +         "code" => 0 
 +     * ]) 
 +     * @throws AirlayException 
 +     * 
 +     * @Authorization('CmsUser'
 +     */ 
 +</code> 
 +=== closeMilestoneAction === 
 +<code php> 
 +    /**
      * Close milestone      * Close milestone
      * request([      * request([
Строка 29: Строка 780:
      * response([      * response([
          "status" => 200,          "status" => 200,
-         "message" => ""  +         "message" => MilestoneEntity 
-         "code" => 0 +         "code" => 0
      * ])      * ])
-     * @throws - ошибки которые могут возникать в ходе работы+     * @throws AirlayException
      *      *
-     * @Authorization - **флаг необходимости авторизации**+     * @Authorization('CmsUser')
      */      */
 </code> </code>
-=====Контроллеры===== +=== addIssuesAction ===
-==== Milestone ====+
 <code php> <code php>
     /**     /**
-     * POST +     Add issues to milestone 
-     *  +     * request([ 
-     Action for edit dataSet objects. +         "method" => "POST", 
-     *  +         "url" => "api/v4/milestone/addIssues", 
-     @param ObjectId $dataSetId DataSet Id +         'params' => [ 
-     * @param string json $commit Commit in edit format +             [ 
-     * @return 200 Ok json/kml/dxf/gml file+                 'name' => 'id', 
 +                 'type' => 'objectId', 
 +                 'description' => 'milestone id', 
 +                 'required' => true 
 +             ], 
 +             [ 
 +                 'name' => 'issues', 
 +                 'type' => 'objectId[]', 
 +                 'description' => 'issues object ids', 
 +                 'required' => true 
 +             ] 
 +         ] 
 +     * ]) 
 +     * response([ 
 +         "status" => 200, 
 +         "message" => MilestoneEntity 
 +         "code" => 0 
 +     * ]) 
 +     * @throws AirlayException 
 +     * 
 +     * @Authorization('CmsUser')
      */      */
-    /api/v3/dataSet/editor 
 </code> </code>
 +=== removeIssueAction ===
 <code php> <code php>
     /**     /**
-     * POST +     Remove issue from milestone 
-     *  +     * request([ 
-     Action for clean dataSet object +         "method" => "POST", 
-     *  +         "url" => "api/v4/milestone/removeIssue", 
-     * @param ObjectId $dataSetId DataSet Id +         'params' => [ 
-     * @return 200 OK+             [ 
 +                 'name' => 'id', 
 +                 'type' => 'objectId', 
 +                 'description' => 'milestone id', 
 +                 'required' => true 
 +             ], 
 +             [ 
 +                 'name' => 'issue', 
 +                 'type' => 'objectId', 
 +                 'description' => 'issue object id', 
 +                 'required' => true 
 +             ] 
 +         ] 
 +     * ]) 
 +     * response([ 
 +         "status" => 200, 
 +         "message" => MilestoneEntity 
 +         "code" => 0 
 +     * ]) 
 +     * @throws AirlayException 
 +     * 
 +     * @Authorization('CmsUser')
      */      */
-    /api/v3/dataSet/cleaning 
 </code> </code>
ru/airlay/api/air-lay-v4.txt · Последнее изменение: 2021/06/20 13:49 — Лев