查询工作项列表
功能介绍
需要获取IPD项目下的原始需求列表、系统特性列表、研发需求列表、缺陷列表时,可调用此接口,用户可以根据不同的过滤条件筛选出需要的工作项信息。
调用方法
请参见如何调用API。
URI
POST /v1/ipdprojectservice/projects/{project_id}/issues/query
|
参数 |
是否必选 |
参数类型 |
描述 |
|---|---|---|---|
|
project_id |
是 |
String |
参数解释: 项目的32位uuid,项目唯一标识,通过查询项目列表(WorkSpace服务)接口获取,响应消息体中的project_id字段的值就是项目ID。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
|
参数 |
是否必选 |
参数类型 |
描述 |
|---|---|---|---|
|
issue_type |
是 |
String |
参数解释: 工作项类型,区分大小写,传入错误的工作项类型时不返回数据,系统设备类和独立软件类型的项目当issue_type传入没有父子关系的工作项时,仅返回第一个工作项类型数据 约束限制: 支持多种工作项类型,使用英文逗号分隔 取值范围: RR/SF/IR/SR/AR/Task/Bug(系统设备类项目可选值) RR/SF/IR/US/Task/Bug(独立软件类项目可选值) RR/Epic/FE/US/Task/Bug(云服务类项目可选值) 默认取值: 不涉及 |
请求参数
|
参数 |
是否必选 |
参数类型 |
描述 |
|---|---|---|---|
|
filter |
否 |
Array of Map<String,ConditionVO> objects |
参数解释: 查询过滤器的数组,每个数组元素就是一个查询条件,数组元素为Map<String, ConditionVO>类型,Map中的key表示查询的列,ConditionVO表示查询条件的值,值的来源根据key动态选择。 示例filter元素 {"descendants.plan_pi":{"values":["956200745322848257"],"operator":"||"}} ,表示查询项目下发布为956200745322848257的工作项。可以将这个查询条件翻译为SQL,select ... where plan_pi in ("956200745322848257"). plan_pi作为key ("descendants."表示在树形结构中搜索符合条件的子工作项,非必要条件。一般场景下,plan作为key即可),发布的id作为查询条件的值。如果要查询多个发布下的工作项,values数组中放入多个发布的id作为数组元素即可。 约束限制: 最大长度200。 取值范围: 不涉及。 默认取值: 不涉及。 |
|
filter_mode |
否 |
String |
参数解释: 过滤模式 约束限制: 最大长度512。 取值范围:
默认取值: AND_OR |
|
page |
否 |
PageInfoVO object |
参数解释: 分页信息。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
|
sort |
否 |
Array of SortInfo objects |
参数解释: 排序条件。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
|
参数 |
是否必选 |
参数类型 |
描述 |
|---|---|---|---|
|
values |
否 |
Array of strings |
参数解释: 查询条件的值。 取值范围: 根据查询条件的key确定。如key为plan_pi,值则为发布的id;如果key为assignee等人员类型字段,值为用户id;若key为created_date等日期时间类型字段,一般为[1760284800000,1760371199999]这种起止时间戳,精确到毫秒。 约束限制: 最大长度200 |
|
operator |
否 |
String |
参数解释: 操作符 约束限制: 不涉及 取值范围: "||":表示查询目标和values之间的关系为或; "!":表示查询目标和values之间的关系为非; "=":表示查询目标和values之间的关系为等于,通常values中只有一个元素时使用; "<>"、"<"、">":表示查询目标和values之间的关系为区间、小于、大于,通常用于日期时间、整数类型的过滤,包含边界值。 默认取值: "||" |
|
参数 |
是否必选 |
参数类型 |
描述 |
|---|---|---|---|
|
page_no |
否 |
Integer |
参数解释: 分页索引 约束限制: 不涉及 取值范围: 最小值1,最大值10000 默认取值: 1 |
|
page_size |
否 |
Integer |
参数解释: 分页大小 约束限制: 不涉及 取值范围: 最小值5,最大值200 默认取值: 200 |
|
参数 |
是否必选 |
参数类型 |
描述 |
|---|---|---|---|
|
field |
否 |
String |
参数解释: 排序字段code 约束限制: 不涉及 取值范围: 对应字段的唯一code,可选值可以通过查询字段模板列表接口获取,响应体中的code就是字段唯一标识。 默认取值: 不涉及 |
|
asc |
否 |
Boolean |
参数解释: 是否升序 约束限制: 不涉及 取值范围: true(是) false(否) 默认取值: 不涉及 |
响应参数
状态码:200
|
参数 |
参数类型 |
描述 |
|---|---|---|
|
status |
String |
参数解释: 返回状态。 取值范围: success:响应成功 error:响应失败 |
|
message |
String |
参数解释: 信息 取值范围: 不涉及 |
|
result |
Map<String,Object> |
参数解释: 结果数据 |
状态码:400
|
参数 |
参数类型 |
描述 |
|---|---|---|
|
error_code |
String |
错误码 |
|
error_msg |
String |
错误描述,对error_code的补充解释。 |
请求示例
Post https://{endpoint}/v1/ipdprojectservice/projects/{project_id}/issues/query?issue_type=IR,US
{
"filter" : [ {
"descendants.plan_pi" : {
"values" : [ "956200745322848257" ],
"operator" : "||"
},
"descendants.plan_iteration" : {
"values" : [ "956200745322848257-child" ],
"operator" : "||"
}
}, {
"descendants.priority" : {
"values" : [ "中" ],
"operator" : "||"
}
}, {
"descendants.assignee" : {
"values" : [ "a360371833bf4c558f796fd707b44daf" ],
"operator" : "||"
}
}, {
"descendants.status" : {
"values" : [ "Start" ],
"operator" : "||"
}
}, {
"parent_id" : {
"values" : [ "" ],
"operator" : "||"
}
} ],
"page" : {
"page_no" : 1,
"page_size" : 20
}
}
响应示例
状态码:200
查询工作项列表接口成功的响应。
{
"status" : "success",
"message" : null,
"result" : {
"total" : 1,
"issues" : [ {
"promised" : null,
"type" : "raw requirement",
"src_domain" : {
"id" : "965714701520515072",
"name" : "IPD-系统设备类-0217",
"title" : "IPD-系统设备类-0217",
"project_id" : "e4b0424709934bd1a54753e70336564d",
"parent_id" : null,
"category" : "Project",
"created_by" : "a360371833bf4c558f796fd707b44daf",
"model_id" : "10001"
},
"domain_id" : {
"id" : "965714701520515072",
"name" : "IPD-系统设备类-0217",
"title" : "IPD-系统设备类-0217",
"project_id" : "e4b0424709934bd1a54753e70336564d",
"parent_id" : null,
"category" : "Project",
"created_by" : "a360371833bf4c558f796fd707b44daf",
"model_id" : "10001"
},
"send_from" : "",
"number" : "RR20240402742063",
"send_to" : "",
"convolution_actual_hours" : null,
"workload_man_day" : null,
"id" : "981935538274476033",
"state" : "正在工作",
"stay_days" : 1,
"assigned_cc" : null,
"submit_time" : "1712041275000",
"workitem2label" : null,
"close_time" : null,
"priority" : {
"id" : "965714705672876036",
"display_value" : "中",
"value" : "中",
"code" : "中",
"value_py" : "2",
"sequence" : 2,
"level" : 1,
"domain_id" : "965714701520515072",
"belong_definition_type" : "5"
},
"modified_date" : "1712041276000",
"created_by" : {
"watcher" : null,
"user_id" : "a360371833bf4c558f796fd707b44daf",
"user_num_id" : 4091,
"user_name" : "devcloud_devcloud_01",
"domain_id" : "4e919d73499648e3b0292cd3cbef806a",
"domain_name" : "devcloud_devcloud_01",
"nick_name" : "测试账号",
"role_id" : "8dc2cd191a104148a77f937681f9a5d6,6af50476ba89492698d237fb6fa456d6",
"role_name" : "项目管理员,项目经理",
"role_code" : "project_admin,Project manager",
"image_id" : null,
"region" : null,
"has_removed" : null
},
"break_status" : {
"id" : "965714705672876041",
"display_value" : "未分解",
"value" : "undecomposed",
"code" : "undecomposed",
"value_py" : "undecomposed",
"sequence" : 2,
"level" : 1,
"domain_id" : "965714701520515072",
"belong_definition_type" : "5"
},
"status_modified_date" : "1712041276000",
"canceled" : null,
"expect_delivery_time" : null,
"parent_id" : null,
"assignee" : {
"watcher" : null,
"user_id" : "a360371833bf4c558f796fd707b44daf",
"user_num_id" : 4091,
"user_name" : "devcloud_devcloud_01",
"domain_id" : "4e919d73499648e3b0292cd3cbef806a",
"domain_name" : "devcloud_devcloud_01",
"nick_name" : "测试账号",
"role_id" : "8dc2cd191a104148a77f937681f9a5d6,6af50476ba89492698d237fb6fa456d6",
"role_name" : "项目管理员,项目经理",
"role_code" : "project_admin,Project manager",
"image_id" : null,
"region" : null,
"has_removed" : null
},
"region" : "region01",
"status" : {
"id" : "965714705815482388",
"belonging" : "START",
"space_id" : "965714701520515072",
"name" : "分析",
"status_category" : null,
"code" : "Analyse",
"definition_type" : "5",
"belong_definition_type" : 3,
"belong_scope" : null,
"display_value" : "分析",
"position" : 2,
"displayable" : 1,
"editable" : 1,
"deletable" : 1,
"mutable" : 1,
"title_py" : "fx",
"builtin" : null,
"label" : null,
"description" : null,
"created_by" : "a360371833bf4c558f796fd707b44daf",
"created_userinfo" : null,
"created_on" : null,
"created_date" : 1708202727000,
"modified_date" : 1708202727000,
"modified_by" : "a360371833bf4c558f796fd707b44daf",
"category_code" : null,
"editing_fields" : null,
"associate" : null,
"linkage_node_fields" : false
},
"tenant_id" : "4e919d73499648e3b0292cd3cbef806a",
"link" : "",
"is_suspended" : null,
"change_status" : null,
"title" : "RR-01",
"sum_workload_man_day" : null,
"plan_end_date" : null,
"rr2ir" : "",
"convolution_plan_hours" : null,
"submitted_by" : [ {
"watcher" : null,
"user_id" : "a360371833bf4c558f796fd707b44daf",
"user_num_id" : 4091,
"user_name" : "devcloud_devcloud_01",
"domain_id" : "4e919d73499648e3b0292cd3cbef806a",
"domain_name" : "devcloud_devcloud_01",
"nick_name" : "测试账号",
"role_id" : "8dc2cd191a104148a77f937681f9a5d6,6af50476ba89492698d237fb6fa456d6",
"role_name" : "项目管理员,项目经理",
"role_code" : "project_admin,Project manager",
"image_id" : null,
"region" : null,
"has_removed" : null
} ],
"rr2us" : "",
"cascade_delete" : "none",
"recipient" : [ {
"watcher" : null,
"user_id" : "a360371833bf4c558f796fd707b44daf",
"user_num_id" : 4091,
"user_name" : "devcloud_devcloud_01",
"domain_id" : "4e919d73499648e3b0292cd3cbef806a",
"domain_name" : "devcloud_devcloud_01",
"nick_name" : "测试账号",
"role_id" : "8dc2cd191a104148a77f937681f9a5d6,6af50476ba89492698d237fb6fa456d6",
"role_name" : "项目管理员,项目经理",
"role_code" : "project_admin,Project manager",
"image_id" : null,
"region" : null,
"has_removed" : null
} ],
"modified_by" : {
"watcher" : null,
"user_id" : "a360371833bf4c558f796fd707b44daf",
"user_num_id" : 4091,
"user_name" : "devcloud_devcloud_01",
"domain_id" : "4e919d73499648e3b0292cd3cbef806a",
"domain_name" : "devcloud_devcloud_01",
"nick_name" : "测试账号",
"role_id" : "8dc2cd191a104148a77f937681f9a5d6,6af50476ba89492698d237fb6fa456d6",
"role_name" : "项目管理员,项目经理",
"role_code" : "project_admin,Project manager",
"image_id" : null,
"region" : null,
"has_removed" : null
},
"created_date" : "1712041275000",
"closed_flag" : null,
"category" : "RR",
"collaborative_status" : [ ],
"setup" : true,
"parent_status" : "no"
} ]
}
}
SDK代码示例
SDK代码示例如下。
Java
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 |
package com.huaweicloud.sdk.test; import com.huaweicloud.sdk.core.auth.ICredential; import com.huaweicloud.sdk.core.auth.BasicCredentials; import com.huaweicloud.sdk.core.exception.ConnectionException; import com.huaweicloud.sdk.core.exception.RequestTimeoutException; import com.huaweicloud.sdk.core.exception.ServiceResponseException; import com.huaweicloud.sdk.projectman.v4.region.ProjectManRegion; import com.huaweicloud.sdk.projectman.v4.*; import com.huaweicloud.sdk.projectman.v4.model.*; import java.util.List; import java.util.ArrayList; import java.util.Map; import java.util.HashMap; public class ListIpdProjectIssuesSolution { public static void main(String[] args) { // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security. // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment String ak = System.getenv("CLOUD_SDK_AK"); String sk = System.getenv("CLOUD_SDK_SK"); ICredential auth = new BasicCredentials() .withAk(ak) .withSk(sk); ProjectManClient client = ProjectManClient.newBuilder() .withCredential(auth) .withRegion(ProjectManRegion.valueOf("<YOUR REGION>")) .build(); ListIpdProjectIssuesRequest request = new ListIpdProjectIssuesRequest(); request.withProjectId("{project_id}"); SearchIpdIssuesRequestBody body = new SearchIpdIssuesRequestBody(); PageInfoVO pagebody = new PageInfoVO(); pagebody.withPageNo(1) .withPageSize(20); List<String> listFilterValues = new ArrayList<>(); listFilterValues.add(""); ConditionVO filterFilter = new ConditionVO(); filterFilter.withOperator("||") .withValues(listFilterValues); Map<String, ConditionVO> listFilterFilter1 = new HashMap<>(); listFilterFilter1.put("parent_id", filterFilter); List<String> listFilterValues1 = new ArrayList<>(); listFilterValues1.add("Start"); ConditionVO filterFilter2 = new ConditionVO(); filterFilter2.withOperator("||") .withValues(listFilterValues1); Map<String, ConditionVO> listFilterFilter3 = new HashMap<>(); listFilterFilter3.put("descendants.status", filterFilter2); List<String> listFilterValues2 = new ArrayList<>(); listFilterValues2.add("a360371833bf4c558f796fd707b44daf"); ConditionVO filterFilter4 = new ConditionVO(); filterFilter4.withOperator("||") .withValues(listFilterValues2); Map<String, ConditionVO> listFilterFilter5 = new HashMap<>(); listFilterFilter5.put("descendants.assignee", filterFilter4); List<String> listFilterValues3 = new ArrayList<>(); listFilterValues3.add("中"); ConditionVO filterFilter6 = new ConditionVO(); filterFilter6.withOperator("||") .withValues(listFilterValues3); Map<String, ConditionVO> listFilterFilter7 = new HashMap<>(); listFilterFilter7.put("descendants.priority", filterFilter6); List<String> listFilterValues4 = new ArrayList<>(); listFilterValues4.add("956200745322848257-child"); ConditionVO filterFilter8 = new ConditionVO(); filterFilter8.withOperator("||") .withValues(listFilterValues4); List<String> listFilterValues5 = new ArrayList<>(); listFilterValues5.add("956200745322848257"); ConditionVO filterFilter9 = new ConditionVO(); filterFilter9.withOperator("||") .withValues(listFilterValues5); Map<String, ConditionVO> listFilterFilter10 = new HashMap<>(); listFilterFilter10.put("descendants.plan_pi", filterFilter9); listFilterFilter10.put("descendants.plan_iteration", filterFilter8); List<Map<String, ConditionVO>> listbodyFilter = new ArrayList<>(); listbodyFilter.add(listFilterFilter1); listbodyFilter.add(listFilterFilter3); listbodyFilter.add(listFilterFilter5); listbodyFilter.add(listFilterFilter7); listbodyFilter.add(listFilterFilter10); body.withPage(pagebody); body.withFilter(listbodyFilter); request.withBody(body); try { ListIpdProjectIssuesResponse response = client.listIpdProjectIssues(request); System.out.println(response.toString()); } catch (ConnectionException e) { e.printStackTrace(); } catch (RequestTimeoutException e) { e.printStackTrace(); } catch (ServiceResponseException e) { e.printStackTrace(); System.out.println(e.getHttpStatusCode()); System.out.println(e.getRequestId()); System.out.println(e.getErrorCode()); System.out.println(e.getErrorMsg()); } } } |
Python
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 |
# coding: utf-8 import os from huaweicloudsdkcore.auth.credentials import BasicCredentials from huaweicloudsdkprojectman.v4.region.projectman_region import ProjectManRegion from huaweicloudsdkcore.exceptions import exceptions from huaweicloudsdkprojectman.v4 import * if __name__ == "__main__": # The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security. # In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment ak = os.environ["CLOUD_SDK_AK"] sk = os.environ["CLOUD_SDK_SK"] credentials = BasicCredentials(ak, sk) client = ProjectManClient.new_builder() \ .with_credentials(credentials) \ .with_region(ProjectManRegion.value_of("<YOUR REGION>")) \ .build() try: request = ListIpdProjectIssuesRequest() request.project_id = "{project_id}" pagebody = PageInfoVO( page_no=1, page_size=20 ) listValuesFilter = [ "" ] filterFilter = ConditionVO( operator="||", values=listValuesFilter ) listFilterFilter1 = { "parent_id": filterFilter } listValuesFilter1 = [ "Start" ] filterFilter2 = ConditionVO( operator="||", values=listValuesFilter1 ) listFilterFilter3 = { "descendants.status": filterFilter2 } listValuesFilter2 = [ "a360371833bf4c558f796fd707b44daf" ] filterFilter4 = ConditionVO( operator="||", values=listValuesFilter2 ) listFilterFilter5 = { "descendants.assignee": filterFilter4 } listValuesFilter3 = [ "中" ] filterFilter6 = ConditionVO( operator="||", values=listValuesFilter3 ) listFilterFilter7 = { "descendants.priority": filterFilter6 } listValuesFilter4 = [ "956200745322848257-child" ] filterFilter8 = ConditionVO( operator="||", values=listValuesFilter4 ) listValuesFilter5 = [ "956200745322848257" ] filterFilter9 = ConditionVO( operator="||", values=listValuesFilter5 ) listFilterFilter10 = { "descendants.plan_pi": filterFilter9, "descendants.plan_iteration": filterFilter8 } listFilterbody = [ listFilterFilter1, listFilterFilter3, listFilterFilter5, listFilterFilter7, listFilterFilter10 ] request.body = SearchIpdIssuesRequestBody( page=pagebody, filter=listFilterbody ) response = client.list_ipd_project_issues(request) print(response) except exceptions.ClientRequestException as e: print(e.status_code) print(e.request_id) print(e.error_code) print(e.error_msg) |
Go
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 |
package main import ( "fmt" "github.com/huaweicloud/huaweicloud-sdk-go-v3/core/auth/basic" projectman "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/projectman/v4" "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/projectman/v4/model" region "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/projectman/v4/region" ) func main() { // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security. // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment ak := os.Getenv("CLOUD_SDK_AK") sk := os.Getenv("CLOUD_SDK_SK") auth := basic.NewCredentialsBuilder(). WithAk(ak). WithSk(sk). Build() client := projectman.NewProjectManClient( projectman.ProjectManClientBuilder(). WithRegion(region.ValueOf("<YOUR REGION>")). WithCredential(auth). Build()) request := &model.ListIpdProjectIssuesRequest{} request.ProjectId = "{project_id}" pageNoPage:= int32(1) pageSizePage:= int32(20) pagebody := &model.PageInfoVo{ PageNo: &pageNoPage, PageSize: &pageSizePage, } var listValuesFilter = []string{ "", } operatorFilter:= "||" filterFilter := model.ConditionVo{ Operator: &operatorFilter, Values: &listValuesFilter, } var listFilterFilter1 = map[string](model.ConditionVo){ "parent_id": filterFilter, } var listValuesFilter1 = []string{ "Start", } operatorFilter1:= "||" filterFilter3 := model.ConditionVo{ Operator: &operatorFilter1, Values: &listValuesFilter1, } var listFilterFilter4 = map[string](model.ConditionVo){ "descendants.status": filterFilter3, } var listValuesFilter2 = []string{ "a360371833bf4c558f796fd707b44daf", } operatorFilter2:= "||" filterFilter6 := model.ConditionVo{ Operator: &operatorFilter2, Values: &listValuesFilter2, } var listFilterFilter7 = map[string](model.ConditionVo){ "descendants.assignee": filterFilter6, } var listValuesFilter3 = []string{ "中", } operatorFilter3:= "||" filterFilter9 := model.ConditionVo{ Operator: &operatorFilter3, Values: &listValuesFilter3, } var listFilterFilter10 = map[string](model.ConditionVo){ "descendants.priority": filterFilter9, } var listValuesFilter4 = []string{ "956200745322848257-child", } operatorFilter4:= "||" filterFilter12 := model.ConditionVo{ Operator: &operatorFilter4, Values: &listValuesFilter4, } var listValuesFilter5 = []string{ "956200745322848257", } operatorFilter5:= "||" filterFilter13 := model.ConditionVo{ Operator: &operatorFilter5, Values: &listValuesFilter5, } var listFilterFilter14 = map[string](model.ConditionVo){ "descendants.plan_pi": filterFilter13, "descendants.plan_iteration": filterFilter12, } var listFilterbody = []map[string](model.ConditionVo){ listFilterFilter1, listFilterFilter4, listFilterFilter7, listFilterFilter10, listFilterFilter14, } request.Body = &model.SearchIpdIssuesRequestBody{ Page: pagebody, Filter: &listFilterbody, } response, err := client.ListIpdProjectIssues(request) if err == nil { fmt.Printf("%+v\n", response) } else { fmt.Println(err) } } |
更多
更多编程语言的SDK代码示例,请参见API Explorer的代码示例页签,可生成自动对应的SDK代码示例。
状态码
|
状态码 |
描述 |
|---|---|
|
200 |
查询工作项列表接口成功的响应。 |
|
400 |
错误信息 |
错误码
请参见错误码。