Это старая версия документа!
Раздел в процессе разработки
/**
* POST - тип метода Action'а
* 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 - флаг необходимости авторизации
*/
/**
* Get statuses by ids
* request(
* 'method' => 'GET',
* 'url' => '/api/v4/status/getByIds'
* )
* response(
* '200' => [
* 'status' => 200,
* 'message' => StatusEntity[]
* 'code' => 0
* ]
* )
*
* @Authorization(['CmsUser', 'User'])
*/
/**
* Get comments by ids
* request(
* 'method' => 'GET',
* 'url' => '/api/v4/comment/getByIds',
* 'params' => [
* [
* 'name' => 'ids',
* 'type' => 'ObjectId',
* 'required' => true,
* 'description' => 'comment ids from issue'
* ]
* ]
* )
* response(
* '200' => [
* 'status' => 200,
* 'message' => CommentEntity[]
* 'code' => 0
* ]
* )
*
* @Authorization(['CmsUser', 'User'])
*/
/**
* Update comment
* request([
* 'method' => 'POST',
* 'url' => '/api/v4/comment/update'
* 'params' => [
* [
* 'name' => 'id',
* 'type' => 'objectId',
* 'description' => 'comment id',
* 'required' => true
* ],
* [
* 'name' => 'text',
* 'type' => 'string',
* 'description' => 'comment text',
* 'required' => true
* ]
* ]
* ])
* response([
* 'status' => 200,
* 'message' => "ok",
* 'code' => 0
* ])
*
* @throws AirlayException
*
* @Authorization('CmsUser')
*/
/**
* Delete comment
* request([
* 'method' => 'POST',
* 'url' => '/api/v4/comment/delete'
* 'params' => [
* [
* 'name' => 'id',
* 'type' => 'objectId',
* 'description' => 'comment id',
* 'required' => true
* ]
* ]
* ])
* response([
* 'status' => 200,
* 'message' => "ok",
* 'code' => 0
* ])
*
* @throws AirlayException
*
* @Authorization('CmsUser')
*/
/**
* Get labels
* request([
* 'method' => 'GET',
* 'url' => '/api/v4/label/get'
* ])
* response([
* 'status' => 200,
* 'message' => LabelsEntity[],
* 'code' => 0
* ])
*
* @Authorization(['CmsUser', 'User'])
*/
/**
* Get issues
* request([
* 'method' => 'GET',
* 'url' => '/api/v4/issue/get'
* 'params' => [
* [
* 'name' => 'milestoneIds',
* 'type' => 'ObjectId[]',
* 'description' => 'milestones filter',
* 'required' => false
* ],
* [
* 'name' => 'userIds',
* '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'])
*/
/**
* 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' => 'priorityId',
* 'type' => 'objectId'|null,
* 'description' => 'priority id',
* 'required' => false
* ],
* [
* 'name' => 'milestoneId',
* 'type' => 'objectId'|null,
* 'description' => 'milestone id',
* 'required' => false
* ],
* [
* 'name' => 'closeDate',
* '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' => 'ready',
* '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')
*/
/**
* 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' => 'description',
* 'type' => 'string',
* 'description' => 'issue description',
* 'required' => false
* ],
* [
* 'name' => 'priorityId',
* 'type' => 'objectId'|null,
* 'description' => 'priority id',
* 'required' => false
* ],
* [
* 'name' => 'milestoneId',
* 'type' => 'objectId'|null,
* 'description' => 'milestone id',
* 'required' => false
* ],
* [
* 'name' => 'closeDate',
* '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' => 'ready',
* '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')
*/
/**
* 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')
*/
/**
* 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')
*/
/**
* Remove observer
* request([
* 'method' => 'POST',
* 'url' => '/api/v4/issue/removeObserver'
* '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')
*/
/**
* 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' => 'IssueEntity',
* 'code' => 0
* ])
*
* @throws AirlayException
*
* @Authorization('CmsUser')
*/
/**
* 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
*/
/**
* Change status
* request([
* 'method' => 'POST',
* 'url' => '/api/v4/issue/changeStatus'
* 'params' => [
* [
* 'name' => 'id',
* 'type' => 'objectId',
* 'description' => 'issue id',
* 'required' => true
* ],
* [
* 'name' => 'statusId',
* 'type' => 'objectId',
* 'description' => 'status id for field',
* 'required' => true
* ]
* ]
* ])
* response([
* 'status' => 200,
* 'message' => IssueEntity,
* 'code' => 0
* ])
* @throws AirlayException
* @Authorization
*/
/**
* 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
*/
/**
* 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
*/
/**
* 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')
*/
/**
* POST
* 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')
*/
/**
* POST
* 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')
*/
/**
* POST
* 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')
*/
/**
* POST
* 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')
*/
/**
* POST
* Add issues to milestone
* request([
* "method" => "POST",
* "url" => "api/v4/milestone/addIssues",
* 'params' => [
* [
* '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')
*/
/**
* POST
* Remove issue from milestone
* request([
* "method" => "POST",
* "url" => "api/v4/milestone/removeIssue",
* 'params' => [
* [
* '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')
*/