更新时间:2025-09-29 GMT+08:00
分享

获取代码问题统计

功能介绍

此API会根据参数中的筛选条件,返回符合条件的代码问题统计数据。

调用方法

请参见如何调用API

URI

POST /v1/defect/issue-filter

请求参数

表1 请求Header参数

参数

是否必选

参数类型

描述

X-Language

String

参数解释:

语言,决定响应以哪种语言返回。

约束限制:

不涉及。

取值范围:

  • zh-cn,中文。

  • en-us,英文。

默认取值:

zh-cn

表2 请求Body参数

参数

是否必选

参数类型

描述

taskId

String

参数解释:

任务ID,即新建检查任务接口的返回值,每个CodeArtsCheck任务及其下的分支任务、通过API创建的增量任务都有1个唯一的任务ID。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

mergeId

String

参数解释:

合并请求ID。实际仅用于区分版本级和门禁级,版本级不传,门禁级传任意非空值即可。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

jobId

String

参数解释:

执行ID,来自代码检查执行任务接口的返回值,每次执行代码检查任务都有1个唯一的执行ID。版本级不传,门禁级必传。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

facets

String

参数解释:

需要分类统计的项,多项都需要分类统计时,以","分隔。

约束限制:

不涉及。

取值范围:

  • languages,编程语言

  • ruleIds,规则ID

  • authors,问题负责人

  • isNew,是否新问题

  • statusIds,问题状态

  • severities,问题级别

  • delayStatus,延迟状态

  • fileNames,文件名

  • userTags,标签

  • cwes,CWE编号

默认取值:

不涉及。

languages

String

参数解释:

编程语言。

约束限制:

不涉及。

取值范围:

  • PYTHON

  • JAVA

  • C++

  • CSS

  • PHP

  • JAVASCRIPT

  • GO

  • HTML

  • C#

  • TYPESCRIPT

  • SHELL

  • LUA

  • RUST

  • KOTLIN

  • SCALA

  • ARKTS

  • SQL

  • CANGJIE

默认取值:

不涉及。

ruleIds

String

参数解释:

规则ID。可调用获取规则列表接口获取规则id。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

authors

String

参数解释:

问题负责人的用户名。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

isNew

String

参数解释:

是否新问题。

约束限制:

不涉及。

取值范围:

  • 0,所有问题

  • 1,新问题

默认取值:

不涉及。

statusIds

String

参数解释:

问题状态。

约束限制:

不涉及。

取值范围:

  • 0,待处理

  • 2,已解决

  • 5,已忽略

  • 6,已修复

默认取值:

不涉及。

severities

String

参数解释:

问题级别。

约束限制:

不涉及。

取值范围:

  • 0,致命

  • 1,严重

  • 2,一般

  • 3,提示

默认取值:

不涉及。

delayStatus

String

参数解释:

延迟状态。

约束限制:

不涉及。

取值范围:

  • 0,正式问题

  • 1,延迟上线问题

默认取值:

不涉及。

fileNames

String

参数解释:

文件名,精准匹配。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

userTags

Array of strings

参数解释:

标签。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

cwes

Array of strings

参数解释:

cwe编号。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

响应参数

状态码:200

表3 响应Body参数

参数

参数类型

描述

status

String

参数解释:

响应状态。

取值范围:

  • success,成功

  • error,失败

result

Array of IssueFilter objects

参数解释:

代码问题分维度统计。

表4 IssueFilter

参数

参数类型

描述

facets

Array of Facet objects

参数解释:

各个维度的统计。

表5 Facet

参数

参数类型

描述

property

String

参数解释:

维度。

取值范围:

  • languages,编程语言

  • ruleIds,规则ID

  • authors,问题负责人

  • isNew,是否新问题

  • statusIds,问题状态

  • severities,问题级别

  • delayStatus,延迟状态

  • fileNames,文件名

  • userTags,标签

  • cwes,CWE编号

values

Array of FacetItem objects

参数解释:

维度下不同分类的问题数统计。

表6 FacetItem

参数

参数类型

描述

val

String

参数解释:

维度下的分类,可能是问题状态、问题级别、责任人或其他分类值。

取值范围:

不涉及。

count

String

参数解释:

数量。

取值范围:

不涉及。

状态码:400

表7 响应Body参数

参数

参数类型

描述

error_code

String

错误码

error_msg

String

错误描述

状态码:401

表8 响应Body参数

参数

参数类型

描述

error_code

String

错误码

error_msg

String

错误描述

请求示例

查询ID为897acf5exxx48a5013cd的任务最新一次版本级扫描的问题数统计。所有严重问题根据问题状态分类统计的数量。

POST https://{endpoint}/v1/defect/issue-filter

{
  "taskId" : "897acf5exxx48a5013cd",
  "jobId" : "",
  "mergeId" : "",
  "facets" : "statuses",
  "statusIds" : "",
  "severities" : "1",
  "delayStatus" : "",
  "isNew" : "",
  "languages" : "",
  "authors" : "",
  "fileNames" : "",
  "ruleIds" : ""
}

响应示例

状态码:200

代码问题分维度统计响应体

{
  "status" : "success",
  "error" : null,
  "result" : {
    "total" : null,
    "info" : [ ],
    "facets" : [ {
      "values" : [ {
        "val" : "0",
        "id" : null,
        "count" : "1",
        "nickName" : null,
        "parentId" : null,
        "sort" : null
      }, {
        "val" : "5",
        "id" : null,
        "count" : "999",
        "nickName" : null,
        "parentId" : null,
        "sort" : null
      }, {
        "val" : "6",
        "id" : null,
        "count" : "1237",
        "nickName" : null,
        "parentId" : null,
        "sort" : null
      } ],
      "trees" : [ ],
      "property" : "statuses"
    }, {
      "values" : [ {
        "val" : "0",
        "id" : null,
        "count" : "119",
        "nickName" : null,
        "parentId" : null,
        "sort" : null
      }, {
        "val" : "1",
        "id" : null,
        "count" : "602",
        "nickName" : null,
        "parentId" : null,
        "sort" : null
      }, {
        "val" : "2",
        "id" : null,
        "count" : "516",
        "nickName" : null,
        "parentId" : null,
        "sort" : null
      }, {
        "val" : "3",
        "id" : null,
        "count" : "1000",
        "nickName" : null,
        "parentId" : null,
        "sort" : null
      } ],
      "trees" : [ ],
      "property" : "severities"
    } ]
  }
}

状态码:400

Bad Request

{
  "error_code" : "CC.00000000",
  "error_msg" : "网络繁忙,请稍后再试"
}

状态码:401

Unauthorized

{
  "error_code" : "CC.00000003",
  "error_msg" : "认证信息过期"
}

状态码

状态码

描述

200

代码问题分维度统计响应体

400

Bad Request

401

Unauthorized

错误码

请参见错误码

相关文档