GetWorkflowStatesAndTransitions
Gets the states and transitions of the given workflow.
Syntax
// Assumes shellUI has been initialized with IShellUI instance
const results =
await shellUI.Vault.ObjectOperations.GetWorkflowStatesAndTransitions({
workflow_id: 0,
current_state: {
is_null_value: false,
type: 15 /* Enum: Datatype */,
data: {
text: "<!< Text.>",
integer: 0,
real_number: 0,
decimal_number: "<!< Fixed precision number.>",
date: { seconds: 0, nanos: 0 } /* google.protobuf.Timestamp */,
time: { seconds: 0, nanos: 0 } /* google.protobuf.Timestamp */,
timestamp: { seconds: 0, nanos: 0 } /* google.protobuf.Timestamp */,
boolean: false,
lookup: {
value_list_item_info: {
obj_id: {
type: 0,
item_id: {
internal_id: 0,
external_repository_id: {
connection:
"<!< The external repository connection identifier.>",
item: "<item>",
},
},
},
name: "<!< The name of the item.>",
external_id_status: 5 /* Enum: ExtIDStatus */,
external_id: "<external_id>",
guid: "<!< GUID for the item.>",
options: {
all: false,
is_shortcut: false,
is_deleted: false,
is_accessed_by_valid: false,
has_shared_files: false,
is_conflict_object: false,
is_normal: false,
is_view: false,
has_external_data: false,
is_referred_external_object: false,
},
external_repository_icon_id: "<!< The ID of the item's icon.>",
},
version: {
type: 7 /* Enum: ObjVerVersionType */,
internal_version: 0,
external_repository_version: "<external_repository_version>",
external_repository_sort_key: 0,
},
},
multi_select_lookup: {
values: [] /* Array of Lookup */,
},
integer64: 0,
multi_line_text: "<!< Multi-line text.>",
acl: {
checked_out_to_user: 0,
is_fully_authoritative: false,
custom_component: {
named_acl_id: 0,
has_named_acl: false,
current_user_id: 0,
has_current_user: false,
permissions: [] /* Array of AccessControlEntry */,
overridability_permissions: [] /* Array of AccessControlEntry */,
status: {
all: false,
deleted: false,
source_item_linked_via_pseudo_users: false,
},
},
restrictive_components:
[] /* Array of AccessControlListComponentMapEntry */,
secondary_access_control_list: {} /* AccessControlList */,
additive_components:
[] /* Array of AccessControlListComponentMapEntry */,
},
},
},
obj_ver: {
obj_id: {} /* ObjID */,
version: {} /* ObjVerVersion */,
},
});
Message
Name | Description | Type |
---|---|---|
workflow_id | The ID of the workflow. | number |
current_state | If the pointer is not NULL, it points to a struct that specifies the current state of the object(s) as JSON (represented by MF_TypedValue struct). If the pointer is NULL, the bSelectable flags of all returned states will be true because transition rights cannot be checked in that case. | TypedValue |
obj_ver | If the pointer is not NULL, it specifies the object version for which the state transitions are inquired as JSON. If the pointer is NULL, the bSelectable flags of all state transitions that involve pseudo users will be true because transition rights cannot be checked in that case. | ObjVer |
Return type
Name | Description | Type |
---|---|---|
states | Results. | StateBasic[] |
transitions | Results. | StateTransitionBasic[] |
Example
{
"states": [] /* Array of StateBasic */,
"transitions": [] /* Array of StateTransitionBasic */
}