Automation Endpoints (Part 1)
Automation & Workflows
Automation
Automation records track the execution state of runbook/workflow automations, including retry state, execution trace, and iteration details.
GET /Automation
List automation execution records.
Response: Automation_View
| Property | Type | Description |
|---|---|---|
page_no | integer | Current page number |
page_size | integer | Page size |
record_count | integer | Total record count |
automations | array[Automation] | List of automation records |
POST /Automation
Trigger or queue automation executions.
Request Body: Array of automation IDs (integer[])
GET /Automation/{id}
Get a single automation execution record by ID.
Path Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
id | integer (int32) | Yes | Automation record ID |
Response: Automation
Key fields:
| Property | Type | Description |
|---|---|---|
id | integer | Record ID |
timestamp | datetime | When the automation was triggered |
ticket_id | integer | Associated ticket ID |
workflow_id | integer | Workflow that triggered this automation |
workflow_name | string | Workflow name |
workflow_step | integer | Current step in the workflow |
runbook_id | string | Associated runbook ID (UUID string) |
runbook_name | string | Runbook name |
status | integer | Execution status |
error | string | Error message if failed |
retry_attempts_remaining | integer | Retry attempts left |
next_retry_date | datetime | When the next retry is scheduled |
date_processed | datetime | When processing completed |
runbook_step | integer | Current runbook step |
runbook_step_name | string | Step name |
iteration | integer | Iteration count |
stopped | boolean | Whether execution was stopped |
execution_time | integer (int64) | Execution duration |
steps_executed | integer | Steps executed in this run |
trace | array[Trace] | Execution trace entries |
DELETE /Automation/{id}
Delete an automation record.
Path Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
id | integer (int32) | Yes | Automation record ID |
POST /Automation/{runbookId}
Execute or submit a runbook by UUID.
Path Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
runbookId | string (uuid) | Yes | Runbook UUID |
Request Body: multipart/form-data with formCollection (array of key-value pairs)
FlowHeader (Workflows)
FlowHeaders define workflow configurations — sequences of steps, stages, and outcomes that govern ticket progression.
GET /Workflow
List workflow definitions.
Query Parameters:
| Name | Type | Description |
|---|---|---|
access_control_level | integer | Filter by access control level |
includeinactive | boolean | Include inactive workflows |
POST /Workflow
Create or update workflow definitions.
Request Body: Array of FlowHeader objects
GET /Workflow/{id}
Get a single workflow definition.
Path Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
id | integer (int32) | Yes | Workflow ID |
Query Parameters:
| Name | Type | Description |
|---|---|---|
includedetails | boolean | Include full step/stage details |
Response: FlowHeader
Key fields:
| Property | Type | Description |
|---|---|---|
id | integer | Workflow ID |
guid | string (uuid) | Workflow GUID |
name | string | Workflow name |
note | string | Notes |
notinuse | boolean | Whether the workflow is inactive |
active | boolean | Active status |
in_use | boolean | Whether the workflow is assigned to tickets |
steps | array[FlowDetail] | Workflow steps |
stages | array[FlowStages] | Workflow stages |
always_allow_actions | array[TOutcome] | Actions always available regardless of step |
targets | array[WorkflowTarget] | OLA/SLA targets |
workflow_history | array[WorkflowHistory] | History log |
access_control_level | integer | Access control level |
DELETE /Workflow/{id}
Delete a workflow definition.
Path Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
id | integer (int32) | Yes | Workflow ID |
FlowDetail (Workflow Steps)
FlowDetail represents individual steps within a workflow.
GET /workflowstep
List workflow steps.
Query Parameters:
| Name | Type | Description |
|---|---|---|
includecriteriainfo | boolean | Include criteria details for each step |
Autoassign (Ticket Rules)
Ticket rules (autoassign rules) automatically set agent, team, priority, SLA, status, workflow, and categories based on criteria matching.
GET /TicketRules
List ticket assignment rules.
Query Parameters:
| Name | Type | Description |
|---|---|---|
access_control_level | integer | Filter by access control level |
excludeworkflow | boolean | Exclude workflow-type rules |
includecriteriainfo | boolean | Include criteria details |
isconfig | boolean | Filter configuration rules |
rule_use | integer | Filter by rule use type |
POST /TicketRules
Create or update ticket assignment rules.
Request Body: Array of Autoassign objects
Key Autoassign fields:
| Property | Type | Description |
|---|---|---|
id | integer | Rule ID |
guid | string (uuid) | Rule GUID |
name | string | Rule name |
precedence | integer | Evaluation precedence order |
use | integer | Rule use type |
stopmatching | boolean | Stop processing further rules on match |
active | boolean | Whether rule is active |
new_agent_id | integer | Agent to assign on match |
new_team | string | Team to assign on match |
new_priority_id | integer | Priority to set on match |
new_status_id | integer | Status to set on match |
new_sla_id | integer | SLA to assign on match |
new_workflow_id | integer | Workflow to assign on match |
new_category_1_id | integer | Category 1 to set on match |
new_category_2_id | integer | Category 2 to set on match |
new_category_3_id | integer | Category 3 to set on match |
new_category_4_id | integer | Category 4 to set on match |
new_template_id | integer | Template to apply on match |
script_id | integer | Script to run on match |
criteria | array[AutoassignCriteria] | Matching criteria |
outcomes | array[AutoassignOutcome] | Rule outcomes |
criteria_groups | array[CriteriaGroup] | Grouped criteria (when use_criteria_groups is true) |
dontshownotification | boolean | Suppress notification on match |
batch_size | integer | Batch processing size |
GET /TicketRules/{id}
Get a single ticket assignment rule.
Path Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
id | integer (int32) | Yes | Rule ID |
Query Parameters:
| Name | Type | Description |
|---|---|---|
includedetails | boolean | Include full criteria and outcome details |
DELETE /TicketRules/{id}
Delete a ticket assignment rule.
Path Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
id | integer (int32) | Yes | Rule ID |
EventRule
Event rules define automatic actions triggered by incoming events (e.g., from third-party integrations), matching events to tickets or creating new ones.
GET /EventRule
List event rules.
POST /EventRule
Create or update event rules.
Request Body: Array of EventRule objects
Key EventRule fields:
| Property | Type | Description |
|---|---|---|
id | integer | Rule ID |
guid | string (uuid) | Rule GUID |
name | string | Rule name |
notes | string | Notes |
precedence | integer | Evaluation precedence |
active | boolean | Active status |
tickettype_id | integer | Ticket type for created tickets |
template_id | integer | Template to apply |
create_type | integer | Creation type |
alwayscreatenew | boolean | Always create new ticket (vs. append to existing) |
clientmatchingtype | integer | Client matching strategy |
clientmatchingfield | integer | Field used for client matching |
sitematchingtype | integer | Site matching strategy |
usermatchingtype | integer | User matching strategy |
assetmatchingtype | integer | Asset matching strategy |
criteria | array[AutoassignCriteria] | Matching criteria for the rule |
ticket_matching_criteria | array[AutoassignCriteria] | Criteria for matching to existing tickets |
mappings | array[EventMapping] | Field mappings from event data |
event_key | string | Event identifier key |
authorizationtype | integer | Authorization type for the event source |
GET /EventRule/{id}
Get a single event rule by ID.
Path Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
id | integer (int32) | Yes | Rule ID |
DELETE /EventRule/{id}
Delete an event rule.
Path Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
id | integer (int32) | Yes | Rule ID |
Event
Event records represent individual incoming event log entries.
GET /Event
List event records.
POST /Event
Submit event IDs for processing.
Request Body: Array of integer IDs
GET /Event/{id}
Get a single event record by ID.
Path Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
id | integer (int32) | Yes | Event ID |
DELETE /Event/{id}
Delete an event record.
Path Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
id | integer (int32) | Yes | Event ID |
EscMsg (Notifications)
Notifications (EscMsg) represent outbound notification messages — email, SMS, push, Slack, MS Teams, and popup alerts.
GET /Notifications
List notifications/escalation messages.
Query Parameters:
| Name | Type | Description |
|---|---|---|
checkhalointegrator | boolean | Check Halo integrator status |
checknhserver | boolean | Check notification server status |
clientversion | string | Client version string |