
# 查询代码问题概览 - GetTaskStatistics
#### 功能介绍
查询版本级或门禁级扫描的代码问题概览。
#### 调用方法
请参见[如何调用API](https://support.huaweicloud.com/api-codecheck/codecheck_03_0006.html)。
#### 授权信息
账号根用户具备所有API的调用权限，如果使用账号下的IAM用户调用当前API，该IAM用户需具备如下身份策略权限，更多的权限说明请参见[权限和授权项](https://support.huaweicloud.com/api-codecheck/Permission.html)。
| 授权项                          | 访问级别 | 资源类型（\*为必须） | 条件键                     | 别名 | 依赖的授权项 |
|:---|:---|:---|:---|:---|:---|
| codeartscheck:task:getReport | Read | task \*     | -                       | -  | -      |
| codeartscheck:task:getReport | Read | -           | codeartscheck:ProjectId | -  | -      |
   
#### URI
GET /v1/defects/task-statistics
表1Query参数 
| 参数       | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
|:---|:---|:---|:---|
| task_id  | 是    | String | **参数解释：** 任务ID，即新建检查任务接口的返回值，每个代码检查任务及其下的分支任务、通过API创建的增量任务都有唯一的任务ID。即[查询任务列表](https://support.huaweicloud.com/api-codecheck/ShowTasksList.html)接口响应中的id字段。 **约束限制：** 不涉及。 **取值范围：** 长度为\[1\~32\]个字符。 **默认取值：** 不涉及。 |
| merge_id | 否    | String | **参数解释：** 合并请求ID或Commit ID，主要用于查询门禁级任务。 **约束限制：** 不涉及。 **取值范围：** 不涉及。 **默认取值：** 不涉及。                                                                                                                                |
| job_id   | 否    | String | **参数解释：** 执行记录ID，即每一次执行版本级或门禁级扫描的唯一ID，主要用于查询门禁级任务。 **约束限制：** 不涉及。 **取值范围：** 不涉及。 **默认取值：** 不涉及。                                                                                                                     |
   
#### 请求参数
表2请求Header参数 
| 参数         | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
|:---|:---|:---|:---|
| X-Language | 否    | String | **参数解释：** 语言，决定响应以哪种语言返回。 **约束限制：** 不涉及。 **取值范围：** - zh-cn：中文。   - en-us：英文。    **默认取值：** zh-cn。 |
   
#### 响应参数
**状态码：200**
表3响应Body参数 
| 参数     | 参数类型                                                                                 | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
|:---|:---|:---|
| status | String                                                                               | **参数解释：** 响应状态。 **取值范围：** - success：成功。   - error：失败。    |
| result | Array of [GetTaskStatistics] objects | **参数解释：** 代码问题概览。                                                                                                                                                                                                                                                                                                                                                                                                                         |
   
 表4GetTaskStatistics 
| 参数     | 参数类型                                                                                             | 描述                                                           |
|:---|:---|:---|
| facets | Array of [GetTaskStatisticsFacets] objects | **参数解释：** 代码问题在各个维度的概览。 |
   
 表5GetTaskStatisticsFacets 
| 参数       | 参数类型                                                                                                   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
|:---|:---|:---|
| property | String                                                                                                 | **参数解释：** 维度。 **取值范围：** - rules：规则。   - authors：问题负责人。   - isNew：是否新问题。   - statuses：问题状态。   - severities：未闭环问题级别。   - delayStatus：延迟状态。   - unresolvedAdd：未解决问题数。    |
| values   | Array of [GetTaskStatisticsFacetItem] objects | **参数解释：** 维度下不同分类的概览。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
   
 表6GetTaskStatisticsFacetItem 
| 参数    | 参数类型   | 描述                                                                                                                                                                     |
|:---|:---|:---|
| val   | String | **参数解释：** 维度下的分类，可能是问题状态、问题级别、责任人或其他分类值。 **取值范围：** 不涉及。 |
| count | String | **参数解释：** 数量。 **取值范围：** 不涉及。                            |
   
**状态码：400**
表7响应Body参数 
| 参数         | 参数类型   | 描述                                                                                                                                            |
|:---|:---|:---|
| error_code | String | **参数解释：** 错误码。 **取值范围：** 不涉及。  |
| error_msg  | String | **参数解释：** 错误描述。 **取值范围：** 不涉及。 |
   
**状态码：401**
表8响应Body参数 
| 参数         | 参数类型   | 描述                                                                                                                                            |
|:---|:---|:---|
| error_code | String | **参数解释：** 错误码。 **取值范围：** 不涉及。  |
| error_msg  | String | **参数解释：** 错误描述。 **取值范围：** 不涉及。 |
   
#### 请求示例
查询ID为897acf5exxx48a5013cd的任务最新一次版本级扫描的代码问题概览。
```
GET https://{endpoint}/v1/defects/task-statistics?task_id=897acf5exxx48a5013cd
```
#### 响应示例
**状态码：200**
查询代码问题概览响应体。
```
{
  "result" : {
    "facets" : [ {
      "values" : [ {
        "val" : "0",
        "count" : "9"
      }, {
        "val" : "1",
        "count" : "0"
      }, {
        "val" : "2",
        "count" : "0"
      }, {
        "val" : "3",
        "count" : "0"
      }, {
        "val" : "4",
        "count" : "0"
      }, {
        "val" : "5",
        "count" : "0"
      }, {
        "val" : "6",
        "count" : "0"
      } ],
      "property" : "statuses"
    }, {
      "values" : [ {
        "val" : "0",
        "count" : "0"
      }, {
        "val" : "1",
        "count" : "9"
      }, {
        "val" : "2",
        "count" : "0"
      }, {
        "val" : "3",
        "count" : "0"
      } ],
      "property" : "severities"
    }, {
      "values" : [ {
        "val" : "devcloud_codecheck_l00493925_01",
        "count" : "9",
        "nickName" : "devcloud_codecheck_l00493925_01"
      } ],
      "property" : "authors"
    }, {
      "values" : [ {
        "val" : "new",
        "count" : "0"
      } ],
      "property" : "isNew"
    }, {
      "values" : [ {
        "val" : "G.EXP.01-CPP Do not declare or define reserved identifiers",
        "id" : "10111f7b6d6511edab16fa163e0fa374",
        "count" : "5"
      }, {
        "val" : "G.PRE.04-CPP Ensure that the identifier used by the constant expression in the \\#if or \\#elif preprocessing directive is defined before evaluation",
        "id" : "621f02e784f511edafd1fa163ef7e846",
        "count" : "3"
      }, {
        "val" : "G.CNS.02-CPP Do not use literals that are difficult to understand",
        "id" : "fd1a79f46d6411edab16fa163e0fa374",
        "count" : "1"
      } ],
      "property" : "rules"
    }, {
      "values" : [ {
        "val" : "0",
        "count" : "9"
      }, {
        "val" : "1",
        "count" : "0"
      } ],
      "property" : "delayStatus"
    }, {
      "values" : [ {
        "val" : "unresolvedAdd",
        "count" : "0"
      } ],
      "property" : "unresolvedAdd"
    }, {
      "values" : [ {
        "val" : "0",
        "count" : "0"
      }, {
        "val" : "1",
        "count" : "9"
      }, {
        "val" : "2",
        "count" : "0"
      }, {
        "val" : "3",
        "count" : "0"
      } ],
      "property" : "severitiesUnresolved"
    }, {
      "values" : [ {
        "val" : "0",
        "count" : "0"
      }, {
        "val" : "1",
        "count" : "0"
      }, {
        "val" : "2",
        "count" : "0"
      }, {
        "val" : "3",
        "count" : "0"
      } ],
      "property" : "severitiesNew"
    } ]
  },
  "status" : "success"
}
```
**状态码：400**
请求异常。
```
{
  "error_code" : "CC.xxxxxxxx.400",
  "error_msg" : "请求参数校验失败,请检查请求参数是否正确"
}
```
**状态码：401**
权限不足。
```
{
  "error_code" : "CC.00000003",
  "error_msg" : "认证信息过期"
}
```
#### 状态码
| 状态码 | 描述           |
|:---|:---|
| 200 | 查询代码问题概览响应体。 |
| 400 | 请求异常。        |
| 401 | 权限不足。        |
   
#### 错误码
请参见[错误码](https://support.huaweicloud.com/api-codecheck/ErrorCode.html)。
