Skip to main content

Find Change Request Work Items

Find change request work items. The command uses the PV_CHANGE_REQUEST_WORK_ITEM public view to find data. Any filters passed should be passed on this public view.

GET https://instance.securid.com/aveksa/command.submit?cmd=findChangeRequestWorkItems

Request

Parameters

findChangeRequestWorkItems
formatproperties - (Default) Returns the response as key=value pairs. When multiple objects are returned, values are comma-delimited: key=value1,value2,value3.

json - Returns the response as JSON.

csv - Returns the response as comma-separated values.

tsv - Returns the response as tab-separated values.

xml - Returns the response as XML.
delimiterThe delimiter to use between values for csv and properties formats
returnColumns

The names of the columns to return. returnColumns may be a CSV list of multiple column names. The parameter may also be listed multiple times (ie returnColumns=col1,col2&returnColumns=col3,col4)

Refer to Columns table below.
returnMaxRowsThe maximum number of objects to return
distincttrue, false Returns only distinct values, equivalent to the distinct keyword in SQL.
sortByColumns

The results will be sorted based on the columns listed using comma as the delimiter if multiple columns are specified.

Refer to Columns table below.
sortDirectionDetermines sorting order. asc for ascending, desc for descending. If not specified, the natural order returned by the database is used.
includeHeaderRowtrue, false Include column headers when the return format is csv or tsv. (Default) true
ignoreCasetrue, false Returns case-insensitive search results for specified filter parameters. (Default) false

Filter Parameters

Any column listed in the Columns table can be passed as a filter parameter to narrow results. Filters are matched against the PV_CHANGE_REQUEST_WORK_ITEM public view.

Query logic

ScenarioBehavior
Two different parameters: work_state=Completed&change_request_id=102AND. Returns work items in the Completed state that belong to change request 102.
Same parameter repeated: work_state=Completed&work_state=CanceledOR within that field. Returns work items in either Completed or Canceled state.
Mixed: change_request_id=102&work_state=Completed&work_state=Canceled(change_request_id is 102) AND (work_state is Completed or Canceled)
OR logic across different parameters is not supported

A single API call cannot return work items where work_state=Completed OR category_name=Change Request Approval. OR logic between different filter parameters is not supported.

Workaround: Make separate requests for each filter condition. Merge and deduplicate the results client-side.

Columns

workitem_id[Primary Key] Composite identifier for the work item in the format activity_instance_id:activity_instance_database:workflow_instance_iteration
workflow_instance_nameName of the workflow step (e.g., Supervisor Approval, Manual Fulfillment)
complete_by[Foreign Key referencing USERS.ID] User ID responsible for completing the work item. -1 indicates system-assigned.
category_nameCategory of the work item (e.g., Change Request Approval, Change Request Activity)
change_request_id[Foreign Key referencing CHANGE_REQUESTS.ID] The change request this work item belongs to
job_referenceReference identifier for the job, typically matching the change request ID
activity_instance_idID of the activity instance within the workflow engine
activity_instance_databaseDatabase identifier for the activity instance (e.g., WPDS)
workflow_instance_iterationIteration number of the workflow instance
process_instance_idID of the process instance associated with this work item
nameDisplay name of the work item
work_stateCurrent state of the work item (e.g., Completed, Canceled)
job_state_idNumeric identifier for the job state
planned_timePlanned completion time in seconds
duration_typeType of duration measurement used for this work item
accumulated_timeTime accumulated on the work item in seconds
available_dateDate and time the work item became available
open_dateDate and time the work item was opened
first_open_dateFirst date and time the work item was opened
complete_dateDate and time the work item was completed
last_modified_user_id[Foreign Key referencing USERS.ID] User ID who last modified this record. -1 indicates system.
last_modified_dateDate and time of the last modification
completion_codeNumeric completion code for the work item
due_dateDate and time the work item is due
in_queue_time_valueTime the work item spent in the queue, expressed as fractional days
in_queue_time_hoursQueue time in whole hours
in_queue_time_daysQueue time in whole days
in_queue_time_textHuman-readable queue time (e.g., 0 days 2 hours)
open_time_valueTime the work item was open, expressed as fractional days
open_time_hoursOpen time in whole hours
open_time_daysOpen time in whole days
open_time_textHuman-readable open time
total_time_valueTotal elapsed time from available to complete, expressed as fractional days
total_time_hoursTotal elapsed time in whole hours
total_time_daysTotal elapsed time in whole days
total_time_textHuman-readable total elapsed time
overdue_time_valueAmount of time the work item was overdue, expressed as fractional days. Empty if not overdue.
overdue_time_hoursOverdue time in whole hours
overdue_time_daysOverdue time in whole days
overdue_time_textHuman-readable overdue time
available_date_no_timeAvailable date with the time component set to midnight
available_date_yearYear component of the available date
available_date_monthMonth number of the available date (1–12)
available_date_month_textFull month name of the available date (e.g., March)
available_date_month_abvAbbreviated month name of the available date (e.g., Mar)
available_date_dayDay of month for the available date
available_week_of_yearISO week number for the available date
open_date_no_timeOpen date with the time component set to midnight
open_date_yearYear component of the open date
open_date_monthMonth number of the open date
open_date_month_textFull month name of the open date
open_date_month_abvAbbreviated month name of the open date
open_date_dayDay of month for the open date
open_week_of_yearISO week number for the open date
first_open_date_no_timeFirst open date with the time component set to midnight
first_open_date_yearYear component of the first open date
first_open_date_monthMonth number of the first open date
first_open_date_month_textFull month name of the first open date
first_open_date_month_abvAbbreviated month name of the first open date
first_open_date_dayDay of month for the first open date
first_open_week_of_yearISO week number for the first open date
complete_date_no_timeComplete date with the time component set to midnight
complete_date_yearYear component of the complete date
complete_date_monthMonth number of the complete date
complete_date_month_textFull month name of the complete date
complete_date_month_abvAbbreviated month name of the complete date
complete_date_dayDay of month for the complete date
complete_week_of_yearISO week number for the complete date

Headers

Bearer token
Acceptapplication/json
Content-Typeapplication/json

Response

Parameters

The API returns the requested columns specified by returnColumns as output. If returnColumns is unspecified then all columns listed will be returned.

Examples

All columns

Omit returnColumns to return every field for each work item.

Request

curl -K -X GET \
"https://instance.securid.com/aveksa/command.submit?cmd=findChangeRequestWorkItems&format=json&returnMaxRows=2" \
-H "Authorization: Bearer <token>"

Response

{
"findChangeRequestWorkItems": [
{
"workitem_id": "211:WPDS:1",
"workflow_instance_name": "Supervisor Approval",
"complete_by": "-1",
"category_name": "Change Request Approval",
"change_request_id": "102",
"job_reference": "102",
"activity_instance_id": "211",
"activity_instance_database": "WPDS",
"workflow_instance_iteration": "1",
"process_instance_id": "102",
"name": "Supervisor Approval",
"work_state": "Completed",
"job_state_id": "5",
"planned_time": "97199",
"duration_type": "1",
"accumulated_time": "0",
"available_date": "2025-03-07 17:09:06.0",
"open_date": "2025-03-07 17:09:08.0",
"first_open_date": "2025-03-07 17:09:08.0",
"complete_date": "2025-03-07 17:09:08.0",
"last_modified_user_id": "-1",
"last_modified_date": "2025-03-07 17:09:08.0",
"completion_code": "0",
"due_date": "2025-03-12 17:00:00.0",
"in_queue_time_value": "0.00002314814814814814814814814814814814814815",
"in_queue_time_hours": "0",
"in_queue_time_days": "0",
"in_queue_time_text": "0 days 0 hours",
"open_time_value": "0",
"open_time_hours": "0",
"open_time_days": "0",
"open_time_text": "0 days 0 hours",
"total_time_value": "0.00002314814814814814814814814814814814814815",
"total_time_hours": "0",
"total_time_days": "0",
"total_time_text": "0 days 0 hours",
"overdue_time_value": "",
"overdue_time_hours": "",
"overdue_time_days": "",
"overdue_time_text": " days hours",
"available_date_no_time": "2025-03-07 00:00:00.0",
"available_date_year": "2025",
"available_date_month": "3",
"available_date_month_text": "March ",
"available_date_month_abv": "Mar",
"available_date_day": "7",
"available_week_of_year": "10",
"open_date_no_time": "2025-03-07 00:00:00.0",
"open_date_year": "2025",
"open_date_month": "3",
"open_date_month_text": "March ",
"open_date_month_abv": "Mar",
"open_date_day": "7",
"open_week_of_year": "10",
"first_open_date_no_time": "2025-03-07 00:00:00.0",
"first_open_date_year": "2025",
"first_open_date_month": "3",
"first_open_date_month_text": "March ",
"first_open_date_month_abv": "Mar",
"first_open_date_day": "7",
"first_open_week_of_year": "10",
"complete_date_no_time": "2025-03-07 00:00:00.0",
"complete_date_year": "2025",
"complete_date_month": "3",
"complete_date_month_text": "March ",
"complete_date_month_abv": "Mar",
"complete_date_day": "7",
"complete_week_of_year": "10"
},
{
"workitem_id": "217:WPDS:1",
"workflow_instance_name": "Manual Fulfillment",
"complete_by": "",
"category_name": "Change Request Activity",
"change_request_id": "102",
"job_reference": "102",
"activity_instance_id": "217",
"activity_instance_database": "WPDS",
"workflow_instance_iteration": "1",
"process_instance_id": "103",
"name": "Manual Fulfillment",
"work_state": "Canceled",
"job_state_id": "4",
"planned_time": "97199",
"duration_type": "1",
"accumulated_time": "0",
"available_date": "2025-03-07 17:09:20.0",
"open_date": "",
"first_open_date": "",
"complete_date": "",
"last_modified_user_id": "-1",
"last_modified_date": "2025-03-07 17:09:20.0",
"completion_code": "0",
"due_date": "2025-03-12 17:00:00.0",
"in_queue_time_value": "",
"in_queue_time_hours": "",
"in_queue_time_days": "",
"in_queue_time_text": " days hours",
"open_time_value": "",
"open_time_hours": "",
"open_time_days": "",
"open_time_text": " days hours",
"total_time_value": "",
"total_time_hours": "",
"total_time_days": "",
"total_time_text": " days hours",
"overdue_time_value": "",
"overdue_time_hours": "",
"overdue_time_days": "",
"overdue_time_text": " days hours",
"available_date_no_time": "2025-03-07 00:00:00.0",
"available_date_year": "2025",
"available_date_month": "3",
"available_date_month_text": "March ",
"available_date_month_abv": "Mar",
"available_date_day": "7",
"available_week_of_year": "10",
"open_date_no_time": "",
"open_date_year": "",
"open_date_month": "",
"open_date_month_text": "",
"open_date_month_abv": "",
"open_date_day": "",
"open_week_of_year": "",
"first_open_date_no_time": "",
"first_open_date_year": "",
"first_open_date_month": "",
"first_open_date_month_text": "",
"first_open_date_month_abv": "",
"first_open_date_day": "",
"first_open_week_of_year": "",
"complete_date_no_time": "",
"complete_date_year": "",
"complete_date_month": "",
"complete_date_month_text": "",
"complete_date_month_abv": "",
"complete_date_day": "",
"complete_week_of_year": ""
}
]
}

Specific columns

Use returnColumns to limit the response to the fields you need. This keeps the payload small and the mapping work simple. The example returns five columns that cover the most common reporting needs.

Request

curl -K -X GET \
"https://instance.securid.com/aveksa/command.submit?cmd=findChangeRequestWorkItems&format=json&returnMaxRows=3&returnColumns=workitem_id,workflow_instance_name,change_request_id,work_state,category_name" \
-H "Authorization: Bearer <token>"

Response

{
"findChangeRequestWorkItems": [
{
"workitem_id": "211:WPDS:1",
"workflow_instance_name": "Supervisor Approval",
"change_request_id": "102",
"work_state": "Completed",
"category_name": "Change Request Approval"
},
{
"workitem_id": "217:WPDS:1",
"workflow_instance_name": "Manual Fulfillment",
"change_request_id": "102",
"work_state": "Canceled",
"category_name": "Change Request Activity"
},
{
"workitem_id": "238:WPDS:1",
"workflow_instance_name": "Manual Fulfillment",
"change_request_id": "102",
"work_state": "Completed",
"category_name": "Change Request Activity"
}
]
}

Filter by a single value

Pass any column name as a query parameter to filter results. Only work items that match the value are returned. The example returns items where work_state is Completed.

Request

curl -K -X GET \
"https://instance.securid.com/aveksa/command.submit?cmd=findChangeRequestWorkItems&format=json&returnMaxRows=3&returnColumns=workitem_id,workflow_instance_name,change_request_id,work_state&work_state=Completed" \
-H "Authorization: Bearer <token>"

Response

{
"findChangeRequestWorkItems": [
{
"workitem_id": "491:WPDS:1",
"workflow_instance_name": "Asset Business Owner Approval",
"change_request_id": "221",
"work_state": "Completed"
},
{
"workitem_id": "445:WPDS:1",
"workflow_instance_name": "Asset Business Owner Approval",
"change_request_id": "201",
"work_state": "Completed"
},
{
"workitem_id": "486:WPDS:1",
"workflow_instance_name": "Supervisor Approval",
"change_request_id": "221",
"work_state": "Completed"
}
]
}

Filter with OR logic

Repeat the same parameter with different values to match any of them. The example returns work items where work_state is Completed or Canceled. The results are sorted by workitem_id to show both states in the output.

Request

curl -K -X GET \
"https://instance.securid.com/aveksa/command.submit?cmd=findChangeRequestWorkItems&format=json&returnMaxRows=4&returnColumns=workitem_id,workflow_instance_name,change_request_id,work_state&work_state=Completed&work_state=Canceled&sortByColumns=workitem_id&sortDirection=asc" \
-H "Authorization: Bearer <token>"

Response

{
"findChangeRequestWorkItems": [
{
"workitem_id": "211:WPDS:1",
"workflow_instance_name": "Supervisor Approval",
"change_request_id": "102",
"work_state": "Completed"
},
{
"workitem_id": "217:WPDS:1",
"workflow_instance_name": "Manual Fulfillment",
"change_request_id": "102",
"work_state": "Canceled"
},
{
"workitem_id": "224:WPDS:1",
"workflow_instance_name": "Manual Fulfillment",
"change_request_id": "102",
"work_state": "Completed"
},
{
"workitem_id": "231:WPDS:1",
"workflow_instance_name": "Manual Fulfillment",
"change_request_id": "102",
"work_state": "Completed"
}
]
}

Case-insensitive filter

Filters are case-sensitive by default. Set ignoreCase=true to match regardless of case. The example passes work_state=completed in lowercase and still returns Completed records.

Request

curl -K -X GET \
"https://instance.securid.com/aveksa/command.submit?cmd=findChangeRequestWorkItems&format=json&returnMaxRows=3&returnColumns=workitem_id,workflow_instance_name,change_request_id,work_state&work_state=completed&ignoreCase=true" \
-H "Authorization: Bearer <token>"

Response

{
"findChangeRequestWorkItems": [
{
"workitem_id": "491:WPDS:1",
"workflow_instance_name": "Asset Business Owner Approval",
"change_request_id": "221",
"work_state": "Completed"
},
{
"workitem_id": "445:WPDS:1",
"workflow_instance_name": "Asset Business Owner Approval",
"change_request_id": "201",
"work_state": "Completed"
},
{
"workitem_id": "486:WPDS:1",
"workflow_instance_name": "Supervisor Approval",
"change_request_id": "221",
"work_state": "Completed"
}
]
}

Sort ascending

Use sortByColumns with a column name and sortDirection=asc to sort results from lowest to highest. The example sorts by workitem_id.

Request

curl -K -X GET \
"https://instance.securid.com/aveksa/command.submit?cmd=findChangeRequestWorkItems&format=json&returnMaxRows=3&returnColumns=workitem_id,workflow_instance_name,change_request_id,work_state&sortByColumns=workitem_id&sortDirection=asc" \
-H "Authorization: Bearer <token>"

Response

{
"findChangeRequestWorkItems": [
{
"workitem_id": "211:WPDS:1",
"workflow_instance_name": "Supervisor Approval",
"change_request_id": "102",
"work_state": "Completed"
},
{
"workitem_id": "217:WPDS:1",
"workflow_instance_name": "Manual Fulfillment",
"change_request_id": "102",
"work_state": "Canceled"
},
{
"workitem_id": "224:WPDS:1",
"workflow_instance_name": "Manual Fulfillment",
"change_request_id": "102",
"work_state": "Completed"
}
]
}

Sort descending

Set sortDirection=desc to reverse the order.

Request

curl -K -X GET \
"https://instance.securid.com/aveksa/command.submit?cmd=findChangeRequestWorkItems&format=json&returnMaxRows=3&returnColumns=workitem_id,workflow_instance_name,change_request_id,work_state&sortByColumns=workitem_id&sortDirection=desc" \
-H "Authorization: Bearer <token>"

Response

{
"findChangeRequestWorkItems": [
{
"workitem_id": "495:WPDS:1",
"workflow_instance_name": "Asset Business Owner Approval",
"change_request_id": "221",
"work_state": "Completed"
},
{
"workitem_id": "491:WPDS:1",
"workflow_instance_name": "Asset Business Owner Approval",
"change_request_id": "221",
"work_state": "Completed"
},
{
"workitem_id": "486:WPDS:1",
"workflow_instance_name": "Supervisor Approval",
"change_request_id": "221",
"work_state": "Completed"
}
]
}

CSV with custom delimiter

Set format=csv for a comma-separated response. Use delimiter to change the separator character.

Request

curl -K -X GET \
"https://instance.securid.com/aveksa/command.submit?cmd=findChangeRequestWorkItems&format=csv&returnMaxRows=3&returnColumns=workitem_id,workflow_instance_name,change_request_id,work_state&delimiter=~" \
-H "Authorization: Bearer <token>"

Response

workitem_id~workflow_instance_name~change_request_id~work_state
491:WPDS:1~Asset Business Owner Approval~221~Completed
445:WPDS:1~Asset Business Owner Approval~201~Completed
486:WPDS:1~Supervisor Approval~221~Completed

CSV without header row

Set includeHeaderRow=false when your downstream system expects raw data rows without a header.

Request

curl -K -X GET \
"https://instance.securid.com/aveksa/command.submit?cmd=findChangeRequestWorkItems&format=csv&returnMaxRows=3&returnColumns=workitem_id,workflow_instance_name,change_request_id,work_state&includeHeaderRow=false" \
-H "Authorization: Bearer <token>"

Response

491:WPDS:1,Asset Business Owner Approval,221,Completed
445:WPDS:1,Asset Business Owner Approval,201,Completed
486:WPDS:1,Supervisor Approval,221,Completed

Error responses

A 401 is returned when the token is missing, invalid, or expired. A 412 is returned when returnColumns includes a column name that does not exist in the PV_CHANGE_REQUEST_WORK_ITEM public view.

<html>
<head><title>Error</title></head>
<body>The token is not valid for the command 'findChangeRequestWorkItems'. Token is invalid or expired</body>
</html>

Verified with RSA Governance & Lifecycle version 8.0.0.188886 P10_HF01.