Introduction
Each step object will have different properties based on a number of factors including:
- The Common Step Settings that will apply to every step.
- The Step Type that will bring specific settings appropriate to it
- Whether the request for the object is being made for an active context (get steps by entry) or static (get steps by form)
Properties
Top Level Properties
The top level JSON object properties are described below.
| Key | Type | Description |
|---|---|---|
| id | integer | The step ID. |
| type | string | The type of workflow step. |
| label | string | The display label of the type of workflow step. |
| name | string | The name that has been configured for the workflow step in the step settings. |
| is_active | boolean | Whether the step has been set as active via the Settings > Workflow screen. |
| entry_count | integer | Number of entries that are active on this step in their workflow. |
| supports_expiration | boolean | Whether the step type supports expiration. Actual expiration details will be defined within the settings array. |
| assignees | array | If the step type supports assignees, such as an Approval or User Input step, each item in the array will include an assignee object. |
| settings | array | The array will include common step settings as well as unique settings based on step type. |
Active Settings
If the request for the step object is being made for an active context, such as Get Steps By Entry, it will include the following settings within the settings property.
| Key | Type | Description |
|---|---|---|
is_current_step | boolean | The step ID. |
status | string | The status of the step – pending, approved, rejected, complete. |
expiration_timestamp | integer | When the step will expire as a Unix timestamp; the number of seconds since the Unix epoch on January 1st, 1970 at UTC. |
is_expired | boolean | Is the step expired based on an expiration setting? |
is_queued | boolean | Is the step awaiting start based on a schedule? |
Workflow Step JSON
This example shows how an Workflow Step Object would look when formatted as JSON for use by the Gravity Flow Rest API V2.
A start step in an active context
{
"id": 1179,
"type": "workflow_start",
"label": "Start",
"name": "Start",
"is_active": true,
"entry_count": 0,
"supports_expiration": false,
"assignees": [],
"settings": {
"step_name": "Start",
"description": "",
"step_type": "workflow_start",
"feed_condition_conditional_logic": "0",
"feed_condition_conditional_logic_object": [],
"scheduled": "0",
"schedule_type": "delay",
"schedule_date": "",
"schedule_delay_offset": "",
"schedule_delay_unit": "hours",
"schedule_date_field_before_after": "after",
"schedule_date_field_offset": "0",
"schedule_date_field_offset_unit": "hours",
"instructionsEnable": "0",
"instructionsValue": "",
"display_fields_mode": "all_fields",
"destination_complete": "next",
"_entry_count": 0
},
"is_current_step": false,
"status": "complete",
"expiration_timestamp": false,
"is_expired": false,
"is_queued": false
}
A notification step
{
"id": 77,
"type": "notification",
"label": "Notification",
"name": "Thank User",
"is_active": true,
"entry_count": 0,
"supports_expiration": false,
"assignees": [],
"settings": {
"step_name": "Thank User",
"description": "",
"step_type": "notification",
"step_highlight": "0",
"step_highlight_type": "color",
"step_highlight_color": "#dd3333",
"feed_condition_conditional_logic_object": [],
"feed_condition_conditional_logic": "0",
"scheduled": "0",
"schedule_type": "delay",
"schedule_date": "",
"schedule_delay_offset": "",
"schedule_delay_unit": "hours",
"schedule_date_field_offset": "",
"schedule_date_field_offset_unit": "hours",
"schedule_date_field_before_after": "after",
"notification_id_51794abf1f0d1": "1",
"workflow_notification_enabled": "0",
"workflow_notification_type": "select",
"workflow_notification_routing": [
{
"assignee": "user_id|1",
"fieldId": "0",
"operator": "is",
"value": "",
"type": ""
}
],
"workflow_notification_from_name": "",
"workflow_notification_from_email": "{admin_email}",
"workflow_notification_reply_to": "",
"workflow_notification_cc": "",
"workflow_notification_bcc": "",
"workflow_notification_subject": "",
"workflow_notification_message": "",
"workflow_notification_disable_autoformat": "0",
"destination_complete": "next",
"highlight": "",
"condition": "",
"notification": "",
"workflow_notification_users": "",
"workflow_notification_autoformat": "",
"_entry_count": 0
}
}
An Approval Step in an active context
{
"id": 1172,
"type": "approval",
"label": "Approval",
"name": "Decision Checkpoint",
"is_active": true,
"entry_count": 1,
"supports_expiration": true,
"assignees": [
{
"key": "user_id|1",
"id": "1",
"type": "user_id",
"display_name": "admin",
"status": false
}
],
"settings": {
"step_name": "Decision Checkpoint",
"description": "",
"step_type": "approval",
"step_highlight": "0",
"step_highlight_type": "color",
"step_highlight_color": "#dd3333",
"feed_condition_conditional_logic_object": [],
"feed_condition_conditional_logic": "0",
"scheduled": "0",
"schedule_type": "delay",
"schedule_date": "",
"schedule_delay_offset": "",
"schedule_delay_unit": "hours",
"schedule_date_field_offset": "0",
"schedule_date_field_offset_unit": "hours",
"schedule_date_field_before_after": "after",
"type": "select",
"assignees": [
"user_id|1"
],
"routing": "",
"assignee_policy": "all",
"instructionsEnable": "0",
"instructionsValue": "Instructions: please review the values in the fields below and click on the Approve or Reject button",
"display_fields_mode": "all_fields",
"confirmation_prompt": "0",
"assignee_notification_enabled": "0",
"assignee_notification_from_name": "",
"assignee_notification_from_email": "{admin_email}",
"assignee_notification_reply_to": "",
"assignee_notification_cc": "",
"assignee_notification_bcc": "",
"assignee_notification_subject": "",
"assignee_notification_message": "A new entry is pending your approval. Please check your Workflow Inbox.",
"assignee_notification_disable_autoformat": "0",
"resend_assignee_emailEnable": "0",
"resend_assignee_emailValue": "7",
"resend_assignee_email_repeatEnable": "0",
"resend_assignee_email_repeatValue": "3",
"rejection_notification_enabled": "0",
"rejection_notification_type": "select",
"rejection_notification_routing": [
{
"assignee": "user_id|1",
"fieldId": "0",
"operator": "is",
"value": "",
"type": ""
}
],
"rejection_notification_from_name": "",
"rejection_notification_from_email": "{admin_email}",
"rejection_notification_reply_to": "",
"rejection_notification_cc": "",
"rejection_notification_bcc": "",
"rejection_notification_subject": "",
"rejection_notification_message": "Entry {entry_id} has been rejected",
"rejection_notification_disable_autoformat": "0",
"approval_notification_enabled": "0",
"approval_notification_type": "select",
"approval_notification_routing": [
{
"assignee": "user_id|1",
"fieldId": "0",
"operator": "is",
"value": "",
"type": ""
}
],
"approval_notification_from_name": "",
"approval_notification_from_email": "{admin_email}",
"approval_notification_reply_to": "",
"approval_notification_cc": "",
"approval_notification_bcc": "",
"approval_notification_subject": "",
"approval_notification_message": "Entry {entry_id} has been approved",
"approval_notification_disable_autoformat": "0",
"note_mode": "not_required",
"approved_messageEnable": "0",
"approved_messageValue": "Entry Approved",
"rejected_messageEnable": "0",
"rejected_messageValue": "Entry Rejected",
"processed_step_messageEnable": "0",
"processed_step_messageValue": "This link is no longer valid.",
"due_date": "0",
"due_date_type": "delay",
"due_date_date": "",
"due_date_delay_offset": "",
"due_date_delay_unit": "hours",
"due_date_date_field_offset": "0",
"due_date_date_field_offset_unit": "hours",
"due_date_date_field_before_after": "after",
"due_date_highlight_type": "color",
"due_date_highlight_color": "#dd3333",
"expiration": "0",
"expiration_type": "delay",
"expiration_date": "",
"expiration_delay_offset": "",
"expiration_delay_unit": "hours",
"expiration_date_field_offset": "0",
"expiration_date_field_offset_unit": "hours",
"expiration_date_field_before_after": "after",
"status_expiration": "rejected",
"destination_expired": "next",
"destination_rejected": "1173",
"destination_approved": "next",
"highlight": "",
"condition": "",
"editable_fields": "",
"instructions": "",
"display_fields": "",
"notification_tabs": "",
"approved_message": "",
"rejected_message": "",
"processed_step_message": "",
"_entry_count": 1
},
"is_current_step": false,
"status": "pending",
"expiration_timestamp": false,
"is_expired": false,
"is_queued": false
}