Skip to main content
Manage workflows. Workflows allow you to automate certain actions and behaviors based on specific triggers.

The workflow object

condition_groups
object[]
required

Conditions that apply to the workflow trigger

Example:
[
{
"conditions": [
{
"operation": {
"label": "Lawrence Jones",
"value": "01FCQSP07Z74QMMYPDDGQB9FTG"
},
"param_bindings": [
{
"array_value": [
{
"label": "Lawrence Jones",
"literal": "SEV123",
"reference": "incident.severity"
}
],
"value": {
"label": "Lawrence Jones",
"literal": "SEV123",
"reference": "incident.severity"
}
}
],
"subject": {
"label": "Incident Severity",
"reference": "incident.severity"
}
}
]
}
]
continue_on_step_error
boolean
required

Whether to continue executing the workflow if a step fails

Example:

true

expressions
object[]
required

Expressions that make variables available in the scope

Example:
[
{
"else_branch": {
"result": {
"array_value": [
{
"label": "Lawrence Jones",
"literal": "SEV123",
"reference": "incident.severity"
}
],
"value": {
"label": "Lawrence Jones",
"literal": "SEV123",
"reference": "incident.severity"
}
}
},
"label": "Team Slack channel",
"operations": [
{
"branches": {
"branches": [
{
"condition_groups": [
{
"conditions": [
{
"operation": {
"label": "Lawrence Jones",
"value": "01FCQSP07Z74QMMYPDDGQB9FTG"
},
"param_bindings": [
{
"array_value": [
{
"label": "Lawrence Jones",
"literal": "SEV123",
"reference": "incident.severity"
}
],
"value": {
"label": "Lawrence Jones",
"literal": "SEV123",
"reference": "incident.severity"
}
}
],
"subject": {
"label": "Incident Severity",
"reference": "incident.severity"
}
}
]
}
],
"result": {
"array_value": [
{
"label": "Lawrence Jones",
"literal": "SEV123",
"reference": "incident.severity"
}
],
"value": {
"label": "Lawrence Jones",
"literal": "SEV123",
"reference": "incident.severity"
}
}
}
],
"returns": { "array": true, "type": "IncidentStatus" }
},
"filter": {
"condition_groups": [
{
"conditions": [
{
"operation": {
"label": "Lawrence Jones",
"value": "01FCQSP07Z74QMMYPDDGQB9FTG"
},
"param_bindings": [
{
"array_value": [
{
"label": "Lawrence Jones",
"literal": "SEV123",
"reference": "incident.severity"
}
],
"value": {
"label": "Lawrence Jones",
"literal": "SEV123",
"reference": "incident.severity"
}
}
],
"subject": {
"label": "Incident Severity",
"reference": "incident.severity"
}
}
]
}
]
},
"navigate": {
"reference": "1235",
"reference_label": "Teams"
},
"operation_type": "navigate",
"parse": {
"returns": { "array": true, "type": "IncidentStatus" },
"source": "metadata.annotations[\"github.com/repo\"]"
},
"returns": { "array": true, "type": "IncidentStatus" }
}
],
"reference": "abc123",
"returns": { "array": true, "type": "IncidentStatus" },
"root_reference": "incident.status"
}
]
id
string
required

Unique identifier for the workflow

Example:

"01FCNDV6P870EA6S7TK1DSYDG0"

include_private_escalations
boolean
required

Whether to include private escalations

Example:

true

include_private_incidents
boolean
required

Whether to include private incidents

Example:

true

name
string
required

Name provided by the user when creating the workflow

Example:

"My little workflow"

once_for
object[]
required

This workflow will run 'once for' a list of references

Example:
[
{
"array": false,
"key": "incident.custom_field[\"01FCNDV6P870EA6S7TK1DSYDG0\"]",
"label": "Incident -> Affected Team",
"type": "IncidentSeverity"
}
]
runs_on_incident_modes
enum<string>[]
required

Which incident modes should this workflow run on? By default, workflows only run on standard incidents, but can also be configured to run on test and retrospective incidents.

Incident mode that workflows can run on

Available options:
standard,
test,
retrospective
Example:
["standard", "test", "retrospective"]
runs_on_incidents
enum<string>
required

Which incidents should the workflow be applied to?

Available options:
newly_created,
newly_created_and_active
Example:

"newly_created"

state
enum<string>
required

What state this workflow is in

Available options:
active,
disabled,
draft,
error
Example:

"active"

steps
object[]
required

Steps that are executed as part of the workflow

Example:
[
{
"for_each": "abc123",
"id": "abc123",
"label": "PagerDuty Escalate",
"name": "pagerduty.escalate",
"param_bindings": [
{
"array_value": [
{
"label": "Lawrence Jones",
"literal": "SEV123",
"reference": "incident.severity"
}
],
"value": {
"label": "Lawrence Jones",
"literal": "SEV123",
"reference": "incident.severity"
}
}
]
}
]
trigger
object
required
Example:
{
"label": "Incident Updated",
"name": "incident.updated"
}
version
integer<int64>
required

Revision of the workflow, uniquely identifying it's version

Example:

3

delay
object
Example:
{
"conditions_apply_over_delay": false,
"for_seconds": 60
}
folder
string

Folder to display the workflow in

Example:

"My folder 01"

runs_from
string<date-time>

The time from which this workflow will run on incidents

Example:

"2021-08-17T13:28:57.801578Z"

shortform
string

The shortform used to trigger this workflow (only applicable for manual triggers)

Example:

"page-the-ceo"