Querying the Work Item List
Function
This API is used to obtain the list of raw requirements, system features, R&D requirements, or bugs of an IPD project. You can filter work items based on different criteria.
Calling Method
For details, see Calling APIs.
URI
POST /v1/ipdprojectservice/projects/{project_id}/issues/query
| Parameter | Mandatory | Type | Description |
|---|---|---|---|
| project_id | Yes | String | Definition: 32-character ID of a project, which must be unique. Obtain the value by calling the Querying the IPD Project List API. The value of id in the response message body is the project ID. Constraints: N/A Value range: N/A Default value: N/A |
| Parameter | Mandatory | Type | Description |
|---|---|---|---|
| issue_type | Yes | String | Definition: Work item type, which is case sensitive. If an incorrect work item type is transferred, no data is returned. For system device and standalone software projects, if issue_type is set to a work item type without parent-child relationship, only the data of the first work item type is returned. Constraints: Multiple values are supported. Use commas (,) to separate them. Value range: For system device projects, options include RR, SF, IR, SR, AR, Task, and Bug. For standalone software projects, options include RR, SF, IR, US, Task, and Bug. For cloud service projects, options include RR, Epic, FE, US, Task, and Bug. Default value: N/A |
Request Parameters
| Parameter | Mandatory | Type | Description |
|---|---|---|---|
| filter | No | Array of Map<String,ConditionVO> objects | Definition: Array of query filters, where each element defines a filter condition as a Map<String, ConditionVO> object. Within the Map, the key represents the database column to query and ConditionVO indicates the condition's value. The value source is dynamically determined by the key. For example, a filter element {"descendants.plan_pi": {"values": ["956200745322848257"], "operator": "||"}} queries for work items under the release with ID 956200745322848257. This translates to a SQL clause: select ... where plan_pi in ("956200745322848257"). descendants. indicates a search within a tree structure for matching child items and is optional. In general use, plan_pi alone is sufficient as the key. The release ID is the value of the query condition. To query work items under multiple releases, provide multiple release IDs in the values array. Constraints: Maximum length: 200 characters. Value range: N/A Default value: N/A |
| filter_mode | No | String | Definition: Filter mode. Constraints: Maximum length: 512 characters. Value range: OR_AND: The relationship between multiple filters is OR, and the relationship between the key and value of the same filter is AND. AND_OR: The relationship between multiple filters is AND, and the relationship between the key and value of the same filter is OR. Default value: AND_OR |
| page | No | PageInfoVO object | Definition: Pagination information. Constraints: N/A Value range: N/A Default value: N/A |
| sort | No | Array of SortInfo objects | Definition: Sorting criteria. Constraints: N/A Value range: N/A Default value: N/A |
| Parameter | Mandatory | Type | Description |
|---|---|---|---|
| values | No | Array of strings | Definition: Value of the query condition. Value range: The value is determined by the query key. If the key is plan_pi, the value must be a release ID. If the key is a user field like assignee, the value must be a user ID. If the key is a datetime field like created_date, the value is typically a millisecond-precision timestamp range (for example, [1760284800000,1760371199999]). Constraints: Maximum length: 200 characters. |
| operator | No | String | Definition: Operator. Constraints: N/A Value range: || indicates a logical OR relationship between the query target and the values. ! indicates a logical NOT relationship. = indicates an EQUALS relationship, generally applied when the values array contains a single element. <>, <, and > represent range, less-than, and greater-than relationships, respectively. These are typically used for datetime or integer comparisons and include boundary values. Default value: || |
| Parameter | Mandatory | Type | Description |
|---|---|---|---|
| page_no | No | Integer | Definition: Page index. Constraints: N/A Value range: Minimum value: 1. Maximum value: 10,000. Default value: 1 |
| page_size | No | Integer | Definition: Page size. Constraints: N/A Value range: Minimum value: 5. Maximum value: 200. Default value: 200 |
| Parameter | Mandatory | Type | Description |
|---|---|---|---|
| field | No | String | Definition: Sorting field code. Constraints: N/A Value range: unique code of the corresponding field. The value can be obtained from the Querying Field Templates API. The value is code in the response body. Default value: N/A |
| asc | No | Boolean | Definition: Whether the data is sorted by ascending order. Constraints: N/A Options: true: yes false: no Default value: N/A |
Response Parameters
Status code: 200
| Parameter | Type | Description |
|---|---|---|
| status | String | Definition: Returned status. Value range: success: The response is successful. error: The response failed. |
| message | String | Definition: Information. Options: N/A |
| result | IssueListResult object | Definition: Result data. |
| Parameter | Type | Description |
|---|---|---|
| issues | Array of IssueVO objects | Definition: Work item list. Value range: N/A |
| total | Integer | Definition: Total number of work items that meet the filter criteria. Value range: N/A |
| Parameter | Type | Description |
|---|---|---|
| sys_analysis_conclusion | String | Definition: Analysis conclusion, which is filled during RR acceptance. Value range: N/A |
| sys_remark | String | Definition: Remarks. This field is filled during RR submission for acceptance. Value range: N/A |
| promised | OptionVO object | Definition: Promised or not. This field is filled during RR acceptance. |
| type | String | Definition: Work item type. Value range: requirement (R&D requirement) raw requirement bug task feature |
| belong_inside | String | Definition: Whether a work item is submitted across projects. Value range: 1: submitted across projects 0: submitted within a project |
| src_domain | DomainVO object | Definition: Proposing project of a work item. |
| domain_id | DomainVO object | Definition: Responsible project of a work item. |
| send_from | String | Definition: ID of the raw requirement's upstream requirement. Value range: N/A |
| number | String | Definition: Work item ID, which consists of the work item type, year, month, day, and six random digits. For example, an IR created on September 30, 2025 may be numbered RR20250930982833. Value range: N/A |
| send_to | String | Definition: ID of the raw requirement's downstream requirement. Value range: N/A |
| path | String | Definition: Path between the parent and child work items. Value range: N/A |
| workload_man_day | String | Definition: Planned workloads of a work item. Value range: N/A |
| sys_check_conclusion | String | Definition: Acceptance conclusion. This field is filled during RR acceptance. Value range: N/A |
| id | String | Definition: Unique ID of a work item. Value range: N/A |
| state | String | Definition: Work item lifecycle. Value range: In use: work items that can be operated properly Discarded: soft-deleted work items that can be restored from the recycle bin Deleted: permanently deleted releases that can be restored |
| stay_days | Integer | Definition: Number of days that a work item stays in the current status. Value range: N/A |
| assigned_cc | Array of UserVO objects | Definition: Cc recipient. |
| submit_time | String | Definition: Submission time of a work item. It is the time when the work item enters the workflow, rather than the creation time. Value range: N/A |
| workitem2label | Array of WorkItemLabelVO objects | Definition: Work item label. |
| sys_return_conclusion | String | Definition: Reason for return. This field is filled when an RR/bug is returned. Value range: N/A |
| close_time | String | Definition: Completion time of a work item. Value range: N/A |
| priority | OptionVO object | Definition: Priority. |
| modified_date | String | Definition: Last modification time of a work item. Value range: N/A |
| created_by | UserVO object | Definition: Work item creator. |
| break_status | OptionVO object | Definition: Breakdown status. |
| status_modified_date | String | Definition: Time when the work item was last transferred, which can be used to calculate the stay days. The value is a UNIX timestamp in milliseconds. Value range: N/A |
| expect_delivery_time | String | Definition: Expected completion time. The value is a UNIX timestamp in milliseconds. Value range: N/A |
| parent_id | String | Definition: Parent work item ID of a work item. Value range: N/A |
| assignee | UserVO object | Definition: Owner. |
| region | String | Definition: Domain of the tenant to which the work item belongs. Value range: N/A |
| status | AlmStatus object | Definition: Work item status. |
| tenant_id | String | Definition: ID of the tenant to which the work item belongs. Value range: N/A |
| plan_pi | PlanVO object | Definition: Release to which a work item belongs. |
| link | String | Definition: Relationship field of the associated work item. Use commas (,) to separate multiple values. Value range: N/A |
| description | String | Definition: Work item description. A maximum of 500,000 characters are supported. Value range: N/A |
| is_suspended | OptionVO object | Definition: Suspended or not. |
| change_status | OptionVO object | Definition: Change review status of a work item. |
| title | String | Definition: Work item title. Value range: N/A |
| sum_workload_man_day | String | Definition: Actual workloads of a work item. Value range: N/A |
| sys_close_reason | String | Definition: Reason for closing a work item. Value range: N/A |
| sys_resubmit_reason | String | Definition: Reason for resubmission, which is used when resubmitting a returned RR/bug. Value range: N/A |
| plan_end_date | String | Definition: Planned completion time of a work item. Value range: N/A |
| rr2ir | String | Definition: ID of the child IR of an RR. Use commas (,) to separate multiple values. Value range: N/A |
| category_layer_id | String | Definition: Work item type level ID. Value range: N/A |
| submitted_by | Array of UserVO objects | Definition: Work item submitter. |
| rr2us | String | Definition: ID of the child US of an RR. Use commas (,) to separate multiple values. Value range: N/A |
| sys_no_develop_reason | String | Definition: Reason why no development is requirement for the work item. Value range: N/A |
| plan_iteration | PlanVO object | Definition: Sprint to which the work item belongs. |
| sys_return_reason | String | Definition: Reason for return. It is usually used when returning an RR/bug. Value range: N/A |
| cascade_delete | String | Definition: Flag indicating whether to perform cascading deletion. Value range: N/A |
| recipient | Array of UserVO objects | Definition: Receiver. It is usually used for RRs. |
| modified_by | Array of UserVO objects | Definition: Last modifier of a work item. |
| created_date | String | Definition: Creation time of a work item. Value range: N/A |
| category | String | Definition: Work item type. Value range: For system device projects, options include RR, SF, IR, SR, AR, Task, and Bug. For standalone software projects, options include RR, SF, IR, US, Task, and Bug. For cloud service projects, options include RR, Epic, FE, US, Task, and Bug. |
| collaborative_status | String | Definition: Collaboration status of an R&D requirement. Value range: N/A |
| project | DomainVO object | Definition: Project to which the work item belongs. |
| child_issues | Array of IssueVO objects | Definition: Child work item list. |
| activate_times | Integer | Definition: Number of activation times. The value is automatically assigned when the bug is activated. Value range: N/A |
| baseline | OptionVO object | Definition: Work item baseline status. |
| business_domain | OptionVO object | Definition: Domain of a work item. |
| children | String | Definition: ID of a child work item. Use commas (,) to separate multiple values. Value range: N/A |
| collaborative_history | String | Definition: Change history of a collaborative requirement's status. The value is a JSON string. Value range: N/A |
| collaboratives | String | Definition: ID of a requirement collaboration. Value range: N/A |
| convolution_actual_hours | String | Definition: Actual roll-up workloads, summed from the actual workloads of all the child and collaborative work items. Value range: N/A |
| convolution_plan_hours | String | Definition: Planned roll-up workloads, summed from the planned workloads of all the child and collaborative work items. Value range: N/A |
| develop_owner | String | Definition: Development owner. This field is usually used for nodes in the developing status. Value range: N/A |
| done_ratio | OptionVO object | Definition: Progress. |
| expected_repair_date | String | Definition: Expected fixing time. Value range: N/A |
| feature2ir | String | Definition: ID of the child IR of an SF. Use commas (,) to separate multiple values. Value range: N/A |
| feature_set | OptionVO object | Definition: Feature set to which the SF belongs. |
| found_env | OptionVO object | Definition: Environment where the bug was found. |
| found_iteration | PlanVO object | Definition: Sprint where the bug was found. |
| found_pi | PlanVO object | Definition: Release where the bug was found. |
| function_scene | String | Definition: Function scenario. Value range: N/A |
| ir2feature | String | Definition: ID of the SF associated with an IR. An IR can be associated with only one SF. Value range: N/A |
| ir2rr | String | Definition: ID of the parent RR associated with an IR. Use commas (,) to separate multiple values. Value range: N/A |
| issue_opinion_id | String | Definition: ID of the decision comment associated with a work item. |
| issue_review_id | String | Definition: ID of the review comment associated with a work item. Value range: N/A |
| module | OptionVO object | Definition: Module. |
| need_break | OptionVO object | Definition: Whether work item breakdown is required. |
| need_develop | OptionVO object | Definition: Whether development is required. |
| no_break_reason | String | Definition: Reason for no breakdown required. Value range: N/A |
| no_develop_reason | String | Definition: Reason for no development required. Value range: N/A |
| order | Integer | Definition: Priority order. Value range: 1 to 100 |
| plan_dev_end_date | String | Definition: Planned development end time. This field is usually used for nodes in the developing status. The value is a UNIX timestamp in milliseconds. Value range: N/A |
| plan_processing_end_date | String | Definition: Planned end time of processing. This field is usually used for in-progress nodes. The value is a UNIX timestamp in milliseconds. Value range: N/A |
| plan_researchanddevelop_end_date | String | Definition: Planned R&D end time. This field is usually used for nodes in the R&D status. The value is a UNIX timestamp in milliseconds. Value range: N/A |
| plan_test_end_date | String | Definition: Planned test end time. This field is usually used for nodes in the testing status. The value is a UNIX timestamp in milliseconds. Value range: N/A |
| position_float | String | Definition: Initial position of a work item in the list. Value range: N/A |
| processing_owner | String | Definition: Owner for in-progress nodes. This field is usually used for in-progress nodes. Value range: N/A |
| reason_analysis | String | Definition: Cause analysis. Value range: N/A |
| regression_failure_number | Integer | Definition: Number of times that regression failed. This field is automatically assigned when the bug test fails. Value range: N/A |
| related_network_security | OptionVO object | Definition: Whether network security is involved. |
| repair_solution | String | Definition: Fix. This field is usually used for bugs. Value range: N/A |
| researchanddevelop_owner | String | Definition: R&D owner. This field is usually used for nodes in the R&D status. Value range: N/A |
| severity | OptionVO object | Definition: Severity. |
| sys_activation_reason | String | Definition: Severity. Value range: N/A |
| sys_no_repair_reason | String | Definition: Reason why fixing is not required. This field is used when the bug does not need to be fixed. Value range: N/A |
| test_failures_times | Integer | Definition: Number of times that the test failed. Value range: N/A |
| test_owner | String | Definition: Test owner. This field is usually used for nodes in the testing status. Value range: N/A |
| test_report | String | Definition: Test report. Value range: N/A |
| val_feature | OptionVO object | Definition: Value feature. |
| workitem2ganttchart | String | Definition: ID of the Gantt chart associated with a work item. Value range: N/A |
| workitem2mindmap | String | Definition: ID of the mind map associated with a work item. Value range: N/A |
| Parameter | Type | Description |
|---|---|---|
| id | String | Definition: Label ID. Value range: The value must be a string of 18 or 19 characters. |
| category | String | Definition: Object type. Value range: Label |
| label_type | String | Definition: Type of the work item to which the label belongs, corresponding to the type field of the work item. The options are as follows. Value range: raw requirement feature (system feature) requirement (R&D requirement) task bug |
| color | String | Definition: Tag color RGB. Value range: #86CAFF #6DDEBB #A6DD82 #FAC20A #FA9841 #F66F6A #F3689A #A97AF8 #71757F #5E7CE0 #207AB3 #169E6C #6CA83B #B58200 #B54E04 #B02121 #AD215B #572DB3 #4F4F4F #3C51A6 |
| title | String | Definition: Label title. Value range: The value is a string of 1 to 30 characters. |
| type | String | Definition: Data type of the current object. Value range: label |
| state | String | Definition: Lifecycle of a label. Value range: In use: The label is normal and can be used. Discarded: The label has been deleted and cannot be used. Deleted: The project to which the label belongs has been deleted and the label cannot be used. |
| modified_by | String | Definition: Last modifier. Value range: N/A |
| Parameter | Type | Description |
|---|---|---|
| user_id | String | Definition: User ID. Value range: N/A |
| user_num_id | Integer | Definition: Short ID of a user. Value range: N/A |
| user_name | String | Definition: Username. Value range: N/A |
| domain_id | String | Definition: ID of the domain to which the user belongs. Value range: N/A |
| domain_name | String | Definition: Tenant name. Value range: N/A |
| nick_name | String | Definition: User alias. Value range: N/A |
| role_id | String | Definition: Role ID. If a user has multiple roles in a project, use commas (,) to separate the values. Value range: N/A |
| role_name | String | Definition: Role name. If a user has multiple roles, use commas (,) to separate the values. Value range: N/A |
| Parameter | Type | Description |
|---|---|---|
| id | String | Definition: Status ID. Value range: N/A |
| belonging | String | Definition: Work item status. Value range: START: To Do state, such as Initial or Analyzing. IN_PROGRESS: Doing state, such as Fixing, Testing, or In R&D. END: Done state, such as Closed or Completed. |
| space_id | String | Definition: ID of the project space to which the status belongs. Value range: N/A |
| name | String | Definition: Status name. Value range: N/A |
| code | String | Definition: Status code. Value range: N/A |
| definition_type | String | Definition: Status definition level. The values 1, 2, and 3 indicate the system level, the value 4 indicates the tenant-defined level, and the value 5 indicates the project-defined level. Value range: N/A |
| belong_definition_type | Integer | Definition: Status definition level. The values 1, 2, and 3 indicate the system level, the value 4 indicates the tenant-defined level, and the value 5 indicates the project-defined level. It is different from definition_type. If the definition level is system-level or tenant-defined, a copy of metadata is copied to the project space. Value range: N/A |
| display_value | String | Definition: Status name, which is the same as the value of name. Value range: N/A |
| position | Integer | Definition: Position sequence. Value range: N/A |
| displayable | Integer | Definition: Display or not. Value range: N/A |
| editable | Integer | Definition: Editable or not. Value range: N/A |
| deletable | Integer | Definition: Deletable or not. Value range: N/A |
| mutable | Integer | Definition: Whether the status value is fixed. Value range: N/A |
| title_py | String | Definition: Initial letters of a title. Value range: N/A |
| created_by | String | Definition: User ID of the creator. Value range: N/A |
| created_date | Integer | Definition: Creation time. The value is a UNIX timestamp in milliseconds. Value range: N/A |
| modified_date | Integer | Definition: Last modification time. The value is a UNIX timestamp in milliseconds. Value range: N/A |
| modified_by | String | Definition: ID of the last modifier. Value range: N/A |
| linkage_node_fields | Boolean | Definition: Whether to add the node owner/end time in the workflow configuration. Value range: true: The node owner/end time can be added to the status flow node. false: The node owner/end time cannot be added to the status flow node. |
| Parameter | Type | Description |
|---|---|---|
| id | String | Definition: Unique ID of a project space. Value range: N/A |
| name | String | Definition: Project space name. Value range: N/A |
| title | String | Definition: Project space name. Value range: N/A |
| project_id | String | Definition: 32-character UUID of a project space. Value range: N/A |
| parent_id | String | Definition: Parent project space ID of the project space, which is used only in programs. Value range: N/A |
| category | String | Definition: Project space type. Value range: Project Group: program |
| created_by | String | Definition: ID of the project space creator. Value range: N/A |
| model_id | String | Definition: Model ID corresponding to the project space. Value range: N/A |
| Parameter | Type | Description |
|---|---|---|
| id | String | Definition: ID of a release, sprint, or milestone. Value range: N/A |
| title | String | Definition: Title. Options: N/A |
| category | String | Definition: Type. The value is of the enumerated type. Value range: PI: release Iteration: sprint PlanMilestone: milestone |
| description | String | Definition: Description Options: N/A |
| state | String | Definition: Discard flag. The value is of the enumerated type. Value range: In use: releases that can be operated normally Discarded: soft-deleted releases that can be restored from the recycle bin Deleted: permanently deleted releases that can be restored |
| status | String | Definition: Release/Sprint status. The value is of the enumerated type. Value range: planned: not started going: ongoing ended |
| children | Array of PlanVO objects | Definition: Sub-project sprint information. |
| created_by | String | Definition: Creator ID. Value range: N/A |
| modified_by | String | Definition: ID of the last updater. Value range: N/A |
| plan_start_date | String | Definition: Planned start time, in the format of "yyyy-MM-dd". Example: 2024-01-01. Value range: N/A |
| plan_end_date | String | Definition: Planned completion time, in the format of "yyyy-MM-dd". Example: 2024-01-01. Value range: N/A |
| created_date | Long | Definition: Creation time, which is a Unix timestamp (unit: millisecond). Options: N/A |
| parent_id | String | Definition: Parent work item ID. Options: N/A |
| baseline | String | Definition: Baseline status. The value is of the enumerated type. Value range: baselined unbaseline: not baselined baseline-reviewing: baseline review in progress |
| workload | String | Definition: Estimated workload. Options: N/A |
| owner | String | Definition: Owner ID. Options: N/A |
| Parameter | Type | Description |
|---|---|---|
| id | String | Definition: Option ID. Value range: N/A |
| display_value | String | Definition: Option name. Value range: N/A |
| value | String | Definition: Unique ID of an option. The ID and value of a custom option are the same. Value range: N/A |
| code | String | Definition: Option code. Value range: N/A |
| value_py | String | Definition: Initial letter of the Chinese pinyin of the option name. Value range: N/A |
| sequence | Integer | Definition: Option's position in the list. Value range: N/A |
| level | Integer | Definition: Hierarchical depth (1, 2, 3, or 4) of an option. For single-choice and multi-choice lists, the value is 1. Value range: 1: first level. Options in both single-choice and multi-choice lists belong to the first level. 2: second level. 3: third level. 4: fourth level. |
| domain_id | String | Definition: ID of the project space to which the option belongs. Value range: N/A |
| belong_definition_type | String | Definition: Definition level of the option. 1, 2, and 3 indicate the system level, 4 indicates the tenant-defined level, and 5 indicates the project-defined level. Value range: 1: system-preset option. 2: system-preset option. 3: system-preset option. 4: tenant-defined option. 5: project-defined option. |
Status code: 400
| Parameter | Type | Description |
|---|---|---|
| error_code | String | Definition: Error code. Value range: N/A |
| error_msg | String | Definition: Error description, which is a supplement to error_code. Value range: N/A |
Example Requests
To query To Do R&D requirements with medium priority, assigned to a specific owner and release sprint, within a standalone software project, refer to the following example:
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" : [ "Medium" ],
"operator" : "||"
}
}, {
"descendants.assignee" : {
"values" : [ "a360371833bf4c558f796fd707b44daf" ],
"operator" : "||"
}
}, {
"descendants.status" : {
"values" : [ "Start" ],
"operator" : "||"
}
}, {
"parent_id" : {
"values" : [ "" ],
"operator" : "||"
}
} ],
"page" : {
"page_no" : 1,
"page_size" : 20
}
} Example Responses
Status code: 200
Response to a successful request for querying the work item list.
{
"status" : "success",
"message" : null,
"result" : {
"total" : 1,
"issues" : [ {
"promised" : null,
"type" : "raw requirement",
"src_domain" : {
"id" : "965714701520515072",
"name" : "IPD-System Device-0217",
"title" : "IPD-System Device-0217",
"project_id" : "e4b0424709934bd1a54753e70336564d",
"parent_id" : null,
"category" : "Project",
"created_by" : "a360371833bf4c558f796fd707b44daf",
"model_id" : "10001"
},
"domain_id" : {
"id" : "965714701520515072",
"name" : "IPD-System Device-0217",
"title" : "IPD-System Device-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" : "Working",
"stay_days" : 1,
"assigned_cc" : null,
"submit_time" : "1712041275000",
"workitem2label" : null,
"close_time" : null,
"priority" : {
"id" : "965714705672876036",
"display_value" : "Medium",
"value" : "Medium",
"code" : "Medium",
"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" : "Test account",
"role_id" : "8dc2cd191a104148a77f937681f9a5d6,6af50476ba89492698d237fb6fa456d6",
"role_name" : "Project administrator, Project manager",
"role_code" : "project_admin,Project manager",
"image_id" : null,
"region" : null,
"has_removed" : null
},
"break_status" : {
"id" : "965714705672876041",
"display_value" : "Not broken down",
"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" : "Test account",
"role_id" : "8dc2cd191a104148a77f937681f9a5d6,6af50476ba89492698d237fb6fa456d6",
"role_name" : "Project administrator, Project manager",
"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" : "Analyzing",
"status_category" : null,
"code" : "Analyse",
"definition_type" : "5",
"belong_definition_type" : 3,
"belong_scope" : null,
"display_value" : "Analyzing",
"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" : "Test account",
"role_id" : "8dc2cd191a104148a77f937681f9a5d6,6af50476ba89492698d237fb6fa456d6",
"role_name" : "Project administrator, Project manager",
"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" : "Test account",
"role_id" : "8dc2cd191a104148a77f937681f9a5d6,6af50476ba89492698d237fb6fa456d6",
"role_name" : "Project administrator, Project manager",
"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" : "Test account",
"role_id" : "8dc2cd191a104148a77f937681f9a5d6,6af50476ba89492698d237fb6fa456d6",
"role_name" : "Project administrator, Project manager",
"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 Sample Code
The SDK sample code is as follows.
Java
To query To Do R&D requirements with medium priority, assigned to a specific owner and release sprint, within a standalone software project, refer to the following example:
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("Medium"); 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
To query To Do R&D requirements with medium priority, assigned to a specific owner and release sprint, within a standalone software project, refer to the following example:
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 = [ "Medium" ] 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
To query To Do R&D requirements with medium priority, assigned to a specific owner and release sprint, within a standalone software project, refer to the following example:
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 118 119 120 121 122 123 124 125 126 127 128 129 | 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, err := basic.NewCredentialsBuilder(). WithAk(ak). WithSk(sk). SafeBuild() if err != nil { fmt.Println(err) return } hcClient, err := projectman.ProjectManClientBuilder(). WithRegion(region.ValueOf("<YOUR REGION>")). WithCredential(auth). SafeBuild() if err != nil { fmt.Println(err) return } client := projectman.NewProjectManClient(hcClient) 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{ "Medium", } 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) } } |
More
For SDK sample code of more programming languages, see the Sample Code tab in API Explorer. SDK sample code can be automatically generated.
Status Codes
| Status Code | Description |
|---|---|
| 200 | Response to a successful request for querying the work item list. |
| 400 | Error message. |
Error Codes
See Error Codes.
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.See the reply and handling status in My Cloud VOC.
For any further questions, feel free to contact us through the chatbot.
Chatbot