Skip to main content
POST

Authorizations

Authorization
string
header
required

Authorization: Bearer <token> where <token> is either a neo_sk_<env>_<secret> API key (service account) or a Microsoft Entra ID access token (dashboard user).

Body

application/json

A fixed-pipeline workflow — the server runs FIND_ENTITIES (built from entity_type and the conditions below) followed by actions in order. Triggered by a PSA event (trigger_type=TRIGGERED + callback_settings) or on a schedule (trigger_type=SCHEDULED

  • schedule).
actions
Actions · object[]
required
name
string
required
trigger_type
enum<string>
required
Available options:
SCHEDULED,
TRIGGERED,
NONE
autonomy_type
string
default:CHAINED_ACTIONS
Allowed value: "CHAINED_ACTIONS"
callback_settings
EventMatchSettings · object | null
description
string | null
entity_type
enum<string>
default:TICKET
Available options:
ticket,
project_ticket,
task,
scheduled_entry,
time_entry,
project,
company,
contact,
resource,
contract,
opportunity,
none,
configuration,
note,
team,
role,
audit_trail,
appointment,
servicecall,
contract_service,
company_location,
product
execution_order
integer | null
group_name
string | null
group_order
integer | null
process_entities_sequentially
boolean
default:false
process_sub_entities_only_once
boolean
default:false
schedule
WorkflowSchedule · object | null
show_in_psa_pod
boolean | null
state
enum<string>
default:ENABLED
Available options:
ENABLED,
DISABLED,
DELETED
ticket_conditions
PsaTicketConditions · object | null

Trigger/entity filter for TICKET agents — which tickets this agent fires on. Send it at the top level to set or change the filter; the server (re)builds the FIND_ENTITIES action from it (do not put the filter in actions). Use time_entry_conditions instead for TIME_ENTRY agents. Shape: conditions holds a combinator (and/or) and a rules list of leaves (field/operator/value) and/or nested groups (rules + combinator). A rule's position in the tree changes the logic — a company exclusion belongs as a top-level rule under the root and, not nested inside an or, or it only excludes when the other branches also miss.

time_entry_conditions
PsaConditions · object | null

Trigger/entity filter for TIME_ENTRY agents — the analogue of ticket_conditions. Ignored for TICKET agents.

Response

Success.

data
Agent · object
required

Lean summary of a workflow row — the per-item shape GET /public-api/agents (list) returns. The single-resource GET /public-api/agents/<id> returns the richer AgentDetail; historical snapshots come back as AgentVersion.

meta
object
required