Automation Rules API
- List automation rules
- Get a single automation rule
- Create a automation rule
- Update a automation rule
- Fields
List automation rules
List all automation rules for an account:
GET /automation_rules
Response
status: 200 OK
[
{
"id": 21,
"disabled": false,
"name": "Cancel task for new telephone",
"trigger": "on status update",
"position": 2,
"created_at": "2020-02-15T05:08:46-06:00",
"updated_at": "2020-02-15T05:08:46-06:00"
},
{
"id": 20,
"disabled": false,
"name": "Add email address to AD task",
"trigger": "on status update",
"position": 1,
"created_at": "2020-02-15T05:08:46-06:00",
"updated_at": "2020-02-15T05:08:46-06:00"
}
]
The response contains these fields by default. Filtering and pagination are available to reduce/limit the collection of automation rules.
Predefined Filters
The following predefined filters are available:
/automation_rules/for_requests
: List all automation rules for requests/automation_rules/for_request_templates
: List all automation rules for request templates/automation_rules/for_problems
: List all automation rules for problems/automation_rules/for_tasks
: List all automation rules for tasks/automation_rules/for_task_templates
: List all automation rules for task templates/automation_rules/for_workflows
: List all automation rules for workflows/automation_rules/for_workflow_templates
: List all automation rules for workflow templates/automation_rules/for_project_tasks
: List all automation rules for project tasks/automation_rules/for_project_task_templates
: List all automation rules for project task templates/automation_rules/for_project_templates
: List all automation rules for project templates/automation_rules/for_cis
: List all automation rules for configuration items/automation_rules/for_risks
: List all automation rules of risks/automation_rules/for_scim_users
: List all automation rules for SCIM users/automation_rules/for_scim_groups
: List all automation rules for SCIM groups/automation_rules/disabled
: List all disabled automation rules/automation_rules/enabled
: List all enabled automation rules
Collection Fields
By default the following fields will appear in collections of automation rules:
id
disabled
name
trigger
position
created_at
updated_at
In addition, one or two of the following fields appears, depending on the type of the automation rule:
generic
request
request_template
task
task_template
workflow
workflow_template
project_task
project_task_template
project_template
Obtain a different set of fields using the ?fields=parameter.
Filtering
Filtering is available for the following fields:
id
sourceID
The filter on sourceID
is not case sensitive.
Sorting
By default a collection of automation rules is sorted descending by id
.
The following fields are accepted by the ?sort=parameter:
id
position
Get a single automation rule
GET /automation_rules/:id
Response
status: 200 OK
{
"actions": "a1: update badge_task add note 'This task was canceled because a security badge was not requested for the new employee.'\na2: update badge_task set status = canceled",
"actions_html": "a1: update badge_task add note '<p>This task was canceled because a security badge was not requested for the new employee.</p>'\na2: update badge_task set status = canceled",
"condition": "is_assigned and !badge",
"created_at": "2020-02-15T05:08:46-06:00",
"description": "This rule cancels the task for preparing a security badge for the new employee if this was not requested.",
"description_html": "<p>This rule cancels the task for preparing a security badge for the new employee if this was not requested.</p>",
"disabled": false,
"expressions": "is_assigned: status = assigned\nrequest: workflow.requests[first]\nbadge: request.custom_fields.badge\nbadge_task: workflow.tasks['Prepare a security badge']",
"generic": false,
"id": 22,
"name": "Cancel task for new badge",
"position": 3,
"source": null,
"sourceID": null,
"trigger": "on status update",
"updated_at": "2020-02-15T05:08:46-06:00",
"workflow_template": {
"id": 22,
"subject": "Prepare services for new employee"
},
"task_template": {
"id": 69,
"subject": "Cancel tasks that do not need to be completed"
}
}
The response contains these fields.
Create a automation rule
POST /automation_rules
When creating a new automation rule these fields are available.
Response
status: 201 Created
{
"amount": "...",
"...": "..."
}
The response contains all fields of the created automation rule and is similar to the response in Get a single automation rule.
Update a automation rule
PATCH /automation_rules/:id
When updating a automation rule these fields are available.
Response
status: 200 OK
{
"amount": "...",
"...": "..."
}
The response contains all fields of the updated automation rule and is similar to the response in Get a single automation rule.
Fields
- actions
- Optional string (max 64KB) — The Actions field is used to define actions that should be executed when the condition of the automation rule is met. For example:
a1: update badge_task add note 'This task was canceled by automation.'
a2: update badge_task set status = canceled
- actions_html
- Readonly text (max 64KB) — Contents of the Actions field converted to HTML.
- condition
- Optional string (max 64KB) — The Condition field is used to define the condition that needs to be met in order for the update action(s) of the rule to be performed. For example:
is_assigned and !badge
. - created_at
- Readonly datetime — The date and time at which the automation rule was created.
- description
- Optional text (max 64KB) — The Description field is used to enter a high-level description of the automation rule’s function. The available formatting options are described in the Text Formatting section.
- description_html
- Readonly text (max 64KB) — Contents of the Description field converted to HTML.
- disabled
- Optional boolean, default:
false
— The Disabled box is checked when the automation rule should not be triggered. - expressions
- Optional string (max 64KB) — The Expressions field is used to define expressions that can subsequently be used to define the rule’s conditions and the update action(s) that the rule is to perform. For example:
is_assigned: status = assigned
request: workflow.requests[first]
badge: request.custom_fields.badge
badge_task: workflow.tasks['Prepare a security badge']
- generic
- Optional string (max 128) — When the automation rule is not linked to one specific record but to all records of a type, the Generic field contains the record type. Valid values are:
-
request
-
problem
workflow
task
risk
ci
scim_user
scim_group
- id
- Readonly integer — The unique ID of the automation rule.
- name
- Required string (max 128) — The Name field is used to enter the name of the automation rule.
- position
- Optional integer — The Position field dictates the order in which the automation rule is executed.
- project_task
- Optional reference to Project Task — The project task that the automation rule is linked to.
- project_task_template
- Optional reference to Project Task Template — The project task template that the automation rule is linked to.
- project_template
- Optional reference to Project Template — The project template that the automation rule is linked to.
- request
- Optional reference to Request — The request that the automation rule is linked to.
- request_template
- Optional reference to Request Template — The request template that the automation rule is linked to.
- source
- Optional string (max 30) — See source
- sourceID
- Optional string (max 128) — See source
- task
- Optional reference to Task — The Task that the automation rule is linked to.
- task_template
- Optional reference to Task Template — The Task Template that the automation rule is linked to.
- trigger
- Required string (max 128) — The Trigger field is used to specify when the automation rule is to be triggered, for example
on status update
oron note added
. - updated_at
- Readonly datetime — The date and time of the last update of the automation rule. If the automation rule has no updates it contains the
created_at
value. - workflow
- Optional reference to Workflow — The workflow that the automation rule is linked to.
- workflow_template
- Optional reference to Workflow Template — The workflow template that the automation rule is linked to.