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

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


ru:airlay:api:air-lay-v4

Различия

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

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

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
Следующая версия Следующая версия справа и слева
ru:airlay:api:air-lay-v4 [2021/05/20 12:00]
Лев [Контроллеры]
ru:airlay:api:air-lay-v4 [2021/06/20 13:42]
Лев [Issue]
Строка 13: Строка 13:
 <code> <code>
     /**     /**
-    * api/v2/{controller}/{action}?{parameter1=value&parameter1=value&...} +     * Desctiprion - описание Action 
-    * Где +     * request([ 
-    controller - контролер в котором производится действие, +         "method" => "тип метода", 
-    action - действие контроллера, +         "url" => "api/v4/controllerName/actionName", - адрес запроса 
-    parameter1parameter2 ...  параметры запроса, +         (полный путь "api/v4/controllerNameComtroller/actionNameAction"
-    value1value2 ... - значение параметров +           'file' => 'описание содержимого файла в случае передачи файлом'  
-    */+         'params' => [ 
 +             [ 
 +                 'name' => 'Имя параметра', 
 +                 'type' => 'Тип параметра'
 +                 'description' => 'Описание параметра', 
 +                 'required' => 'Флаг обязателен параметр или нет' 
 +             ], 
 +             ... 
 +         Параметры в случае передачи через параметры 
 +     * ]) - Передаваемые в Action значения  
 +     * response([   
 +         "status" => 'Статус код ответа',  
 +         "message" => 'Сообщение ответа' 
 +         "code" => 'код ответа'  
 +     * ]) Возвращаемое значение после выполнения Action 
 +     * @throws - ошибки которые могут возникать в ходе работы 
 +     * 
 +     * @Authorization - флаг необходимости авторизации 
 +     */
 </code> </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>
 +
 +=== setPriorityAction ===
 +<code php>
 +    /**
 +     * Set priority
 +     * request([
 +         'method' => 'POST',
 +         'url' => '/api/v4/issue/setPriority'
 +         'params' => [
 +              [
 +                 'name' => 'id',
 +                 'type' => 'objectId',
 +                 'description' => 'issue id',
 +                 'required' => true
 +             ],
 +             [
 +                 'name' => 'priorityId',
 +                 'type' => 'objectId',
 +                 'description' => 'priority id for field',
 +                 'required' => true
 +             ]
 +         ]
 +     * ])
 +     * response([
 +         'status' => 200,
 +         'message' => IssueEntity,
 +         '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 ==== ==== 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
 +     * request([
 +         "method" => "POST",
 +         "url" => "api/v4/milestone/closeMilestone",
 +         'params' => [
 +             [
 +                 'name' => 'id',
 +                 'type' => 'objectId',
 +                 'description' => 'milestone id',
 +                 'required' => true
 +             ]
 +         ]
 +     * ])
 +     * response([
 +         "status" => 200,
 +         "message" => MilestoneEntity
 +         "code" => 0
 +     * ])
 +     * @throws AirlayException
 +     *
 +     * @Authorization('CmsUser')
 +     */
 +</code>
 +=== addIssuesAction ===
 <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 — Лев