Skip to main content

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

PropertyTypeDescription
page_nointegerCurrent page number
page_sizeintegerPage size
record_countintegerTotal record count
automationsarray[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:

NameTypeRequiredDescription
idinteger (int32)YesAutomation record ID

Response: Automation

Key fields:

PropertyTypeDescription
idintegerRecord ID
timestampdatetimeWhen the automation was triggered
ticket_idintegerAssociated ticket ID
workflow_idintegerWorkflow that triggered this automation
workflow_namestringWorkflow name
workflow_stepintegerCurrent step in the workflow
runbook_idstringAssociated runbook ID (UUID string)
runbook_namestringRunbook name
statusintegerExecution status
errorstringError message if failed
retry_attempts_remainingintegerRetry attempts left
next_retry_datedatetimeWhen the next retry is scheduled
date_processeddatetimeWhen processing completed
runbook_stepintegerCurrent runbook step
runbook_step_namestringStep name
iterationintegerIteration count
stoppedbooleanWhether execution was stopped
execution_timeinteger (int64)Execution duration
steps_executedintegerSteps executed in this run
tracearray[Trace]Execution trace entries

DELETE /Automation/{id}

Delete an automation record.

Path Parameters:

NameTypeRequiredDescription
idinteger (int32)YesAutomation record ID

POST /Automation/{runbookId}

Execute or submit a runbook by UUID.

Path Parameters:

NameTypeRequiredDescription
runbookIdstring (uuid)YesRunbook 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:

NameTypeDescription
access_control_levelintegerFilter by access control level
includeinactivebooleanInclude 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:

NameTypeRequiredDescription
idinteger (int32)YesWorkflow ID

Query Parameters:

NameTypeDescription
includedetailsbooleanInclude full step/stage details

Response: FlowHeader

Key fields:

PropertyTypeDescription
idintegerWorkflow ID
guidstring (uuid)Workflow GUID
namestringWorkflow name
notestringNotes
notinusebooleanWhether the workflow is inactive
activebooleanActive status
in_usebooleanWhether the workflow is assigned to tickets
stepsarray[FlowDetail]Workflow steps
stagesarray[FlowStages]Workflow stages
always_allow_actionsarray[TOutcome]Actions always available regardless of step
targetsarray[WorkflowTarget]OLA/SLA targets
workflow_historyarray[WorkflowHistory]History log
access_control_levelintegerAccess control level

DELETE /Workflow/{id}

Delete a workflow definition.

Path Parameters:

NameTypeRequiredDescription
idinteger (int32)YesWorkflow ID

FlowDetail (Workflow Steps)

FlowDetail represents individual steps within a workflow.


GET /workflowstep

List workflow steps.

Query Parameters:

NameTypeDescription
includecriteriainfobooleanInclude 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:

NameTypeDescription
access_control_levelintegerFilter by access control level
excludeworkflowbooleanExclude workflow-type rules
includecriteriainfobooleanInclude criteria details
isconfigbooleanFilter configuration rules
rule_useintegerFilter by rule use type

POST /TicketRules

Create or update ticket assignment rules.

Request Body: Array of Autoassign objects

Key Autoassign fields:

PropertyTypeDescription
idintegerRule ID
guidstring (uuid)Rule GUID
namestringRule name
precedenceintegerEvaluation precedence order
useintegerRule use type
stopmatchingbooleanStop processing further rules on match
activebooleanWhether rule is active
new_agent_idintegerAgent to assign on match
new_teamstringTeam to assign on match
new_priority_idintegerPriority to set on match
new_status_idintegerStatus to set on match
new_sla_idintegerSLA to assign on match
new_workflow_idintegerWorkflow to assign on match
new_category_1_idintegerCategory 1 to set on match
new_category_2_idintegerCategory 2 to set on match
new_category_3_idintegerCategory 3 to set on match
new_category_4_idintegerCategory 4 to set on match
new_template_idintegerTemplate to apply on match
script_idintegerScript to run on match
criteriaarray[AutoassignCriteria]Matching criteria
outcomesarray[AutoassignOutcome]Rule outcomes
criteria_groupsarray[CriteriaGroup]Grouped criteria (when use_criteria_groups is true)
dontshownotificationbooleanSuppress notification on match
batch_sizeintegerBatch processing size

GET /TicketRules/{id}

Get a single ticket assignment rule.

Path Parameters:

NameTypeRequiredDescription
idinteger (int32)YesRule ID

Query Parameters:

NameTypeDescription
includedetailsbooleanInclude full criteria and outcome details

DELETE /TicketRules/{id}

Delete a ticket assignment rule.

Path Parameters:

NameTypeRequiredDescription
idinteger (int32)YesRule 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:

PropertyTypeDescription
idintegerRule ID
guidstring (uuid)Rule GUID
namestringRule name
notesstringNotes
precedenceintegerEvaluation precedence
activebooleanActive status
tickettype_idintegerTicket type for created tickets
template_idintegerTemplate to apply
create_typeintegerCreation type
alwayscreatenewbooleanAlways create new ticket (vs. append to existing)
clientmatchingtypeintegerClient matching strategy
clientmatchingfieldintegerField used for client matching
sitematchingtypeintegerSite matching strategy
usermatchingtypeintegerUser matching strategy
assetmatchingtypeintegerAsset matching strategy
criteriaarray[AutoassignCriteria]Matching criteria for the rule
ticket_matching_criteriaarray[AutoassignCriteria]Criteria for matching to existing tickets
mappingsarray[EventMapping]Field mappings from event data
event_keystringEvent identifier key
authorizationtypeintegerAuthorization type for the event source

GET /EventRule/{id}

Get a single event rule by ID.

Path Parameters:

NameTypeRequiredDescription
idinteger (int32)YesRule ID

DELETE /EventRule/{id}

Delete an event rule.

Path Parameters:

NameTypeRequiredDescription
idinteger (int32)YesRule 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:

NameTypeRequiredDescription
idinteger (int32)YesEvent ID

DELETE /Event/{id}

Delete an event record.

Path Parameters:

NameTypeRequiredDescription
idinteger (int32)YesEvent 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:

NameTypeDescription
checkhalointegratorbooleanCheck Halo integrator status
checknhserverbooleanCheck notification server status
clientversionstringClient version string