HaloPSA logo

Integrate HaloPSA with your AI CRM

Create, inspect, list, and delete HaloPSA tickets, with customer, site, user, agent, asset, and ticket-routing lookups.

Explore Triggers and Actions

Create Ticket

Create one HaloPSA ticket from a summary and optional details and routing IDs; sends the provider-required one-item array body.

ActionTry it

Delete Agent

Request deletion of one HaloPSA agent by numeric ID. Use only for an agent that is confirmed safe to remove; this action does not create or verify a disposable replacement.

ActionTry it

Delete Appointment

Delete one HaloPSA appointment by numeric ID. HaloPSA also deletes its linked Exchange event unless ignore_exchange_delete is true.

ActionTry it

Delete Asset

Delete one HaloPSA asset by numeric ID.

ActionTry it

Delete Attachment

Delete one HaloPSA attachment by numeric ID.

ActionTry it

Delete Client Contract

Delete one HaloPSA client contract by numeric ID.

ActionTry it

Delete Customer

Delete one HaloPSA customer by numeric ID. Success is reported only after HaloPSA returns the endpoint's documented HTTP 200 status.

ActionTry it

Delete Invoice

Delete one HaloPSA invoice by numeric ID. Set bypass_accounts_sync to true to delete it in HaloPSA without synchronizing the deletion to the connected accounts system.

ActionTry it

Delete Item

Delete one HaloPSA inventory or service item by numeric ID. Use only for an item that is confirmed safe to remove.

ActionTry it

Delete Knowledge Base Article

Delete one HaloPSA knowledge-base article by numeric ID. Use only for an article that is confirmed safe to remove.

ActionTry it

Delete Opportunity

Delete one HaloPSA sales opportunity by numeric ID.

ActionTry it

Delete Project

Delete one HaloPSA project by numeric ID.

ActionTry it

Delete Quotation

Delete one HaloPSA quotation by numeric ID.

ActionTry it

Delete Report

Delete one HaloPSA report definition by numeric ID.

ActionTry it

Delete Site

Delete one HaloPSA customer site by numeric ID.

ActionTry it

Delete Status

Delete one HaloPSA ticket-status configuration record by numeric ID. Use only for a status that is confirmed safe to remove.

ActionTry it

Delete Supplier

Delete one HaloPSA supplier by numeric ID. Use only for a supplier that is confirmed safe to remove.

ActionTry it

Delete Team

Delete one HaloPSA team by numeric ID. This changes tenant-level team configuration.

ActionTry it

Delete Ticket

Delete one HaloPSA ticket by numeric ID, optionally recording a reason. The ticket is removed from active ticket results.

ActionTry it

Delete Ticket Action

Delete one HaloPSA ticket action by numeric action ID and its parent ticket ID. HaloPSA may reject deletion for protected action types; the provider's reason is returned.

ActionTry it

Delete Ticket Type

Delete one HaloPSA ticket-type configuration record by numeric ID. This does not create or verify a disposable replacement.

ActionTry it

Delete User

Delete one HaloPSA end user by numeric ID.

ActionTry it

Get Agent

Return one HaloPSA agent by numeric ID. Optional flags can request expanded configuration, signature, holiday-allowance, cache, or client-context data; the response preserves additional provider fields.

ActionTry it

Get Appointment

Return one HaloPSA appointment by numeric ID, optionally with extra detail objects.

ActionTry it

Get Asset

Return one HaloPSA asset by numeric ID, optionally including activity, allowed statuses, details, diagram data, and hierarchy data.

ActionTry it

Get Attachment

Download one HaloPSA attachment by numeric ID.

ActionTry it

Get Client Contract

Return one HaloPSA client contract by numeric ID, with optional expanded billing, asset, user, schedule, and period details.

ActionTry it

Get Current Agent

Return a compact identity for the HaloPSA agent authorized by the current connection, without claims or access-control records.

ActionTry it

Get Customer

Return one HaloPSA customer by numeric ID, with optional expanded, activity, ticket-type, period, and pre-pay data.

ActionTry it

Get Invoice

Return one HaloPSA invoice by numeric ID, optionally with extra detail objects.

ActionTry it

Get Item

Return one HaloPSA inventory or service item by numeric ID, optionally with expanded details and tenant-specific accounting data; additional provider fields are preserved.

ActionTry it

Get Knowledge Base Article

Return one HaloPSA knowledge-base article by numeric ID, optionally with expanded details and language or organisation context.

ActionTry it

Get Opportunity

Return one HaloPSA sales opportunity by numeric ID, optionally with extra provider detail objects.

ActionTry it

Get Project

Return one HaloPSA project by numeric ID, optionally with expanded details.

ActionTry it

Get Quotation

Return one HaloPSA quotation by numeric ID, optionally with expanded details or portal-view context.

ActionTry it

Get Report

Return one HaloPSA report definition by numeric ID. Optionally include definition details or load report data with the documented report context.

ActionTry it

Get Site

Return one HaloPSA customer site by numeric ID, with optional customer, permission, activity, detail, setup, and ticket-type context.

ActionTry it

Get Status

Return one HaloPSA ticket-status configuration record by numeric ID, optionally including its detailed configuration.

ActionTry it

Get Supplier

Return one HaloPSA supplier by numeric ID, optionally including expanded details; additional provider fields are preserved.

ActionTry it

Get Team

Return one HaloPSA team by numeric ID, optionally including agent details and expanded team objects.

ActionTry it

Get Ticket

Return one HaloPSA ticket by numeric ID, with core assignment and classification fields and optional expanded details and most recent action.

ActionTry it

Get Ticket Action

Get one HaloPSA ticket action by numeric action ID, optionally providing its ticket ID and requesting expanded details.

ActionTry it

Get Ticket Type

Return one HaloPSA ticket type by numeric ID. Optional flags select the documented configuration, detail, knowledge-base, team-restriction, survey, new-ticket, and ticket-context representations.

ActionTry it

Get User

Return one HaloPSA end user by numeric ID, with optional customer, site, ticket-type, opportunity, supplier, activity, billing, asset, and detail context.

ActionTry it

List Agents

Return compact HaloPSA agent records for assignment lookup, optionally filtered by name, email address, telephone number, or team ID.

ActionTry it

List Appointments

Return one page of HaloPSA appointments, optionally filtered by customer, ticket, date range, or search text.

ActionTry it

List Assets

Return one page of HaloPSA assets, optionally filtered by customer, site, user, asset type, search text, and active state.

ActionTry it

List Attachments

List HaloPSA attachment metadata, optionally for one ticket.

ActionTry it

List Client Contracts

Return one page of HaloPSA client contracts, optionally filtered by customer, site, search text, and active state.

ActionTry it

List Customers

Return one page of HaloPSA customers, optionally filtered by name and active state.

ActionTry it

List Invoices

Return one page of HaloPSA invoices, optionally filtered by date, customer, site, ticket, user, or search text.

ActionTry it

List Items

Return one page of HaloPSA inventory and service items with the provider's documented status, asset, supplier, accounting, stock, search, and ordering filters.

ActionTry it

List Knowledge Base Articles

Return one page of HaloPSA knowledge-base articles using the provider's documented status, access, relationship, language, search, and ordering filters.

ActionTry it

List Opportunities

Return one page of HaloPSA sales opportunities, optionally filtered by customer, assignment, status, date range, or search text.

ActionTry it

List Priorities

Return HaloPSA policy-priority mappings used to classify tickets, optionally filtered by SLA policy ID.

ActionTry it

List Projects

Return one page of HaloPSA projects. HaloPSA represents projects as ticket-like records in a tickets array.

ActionTry it

List Quotations

Return HaloPSA quotations with customer, state, approval, processing, text, attachment, ordering, and page filters.

ActionTry it

List Reports

Return one page of HaloPSA report definitions with the provider's documented access, chart, customer, publication, ordering, group, search, and type filters.

ActionTry it

List Sites

Return one page of HaloPSA customer sites, optionally filtered by customer, name, and active state.

ActionTry it

List Statuses

Return HaloPSA ticket statuses, optionally constrained to a ticket type or a specific ticket's valid context.

ActionTry it

List Suppliers

Return one page of HaloPSA suppliers with the provider's documented status, integration, ordering, search, and top-level filters.

ActionTry it

List Teams

Return HaloPSA teams available for ticket assignment, optionally limited to the current agent's teams or a department.

ActionTry it

List Ticket Actions

List HaloPSA ticket actions, optionally filtering by occurrence date range and whether attachment details are included. Set ticket_id to retrieve actions for a ticket; HaloPSA can return an empty list when it is omitted.

ActionTry it

List Ticket Types

Return ticket types available for ticket classification, optionally limited to types that agents can create for a customer.

ActionTry it

List Tickets

Return one page of HaloPSA tickets, optionally filtered by customer, site, user, status, assigned agent, or text search.

ActionTry it

List Users

Return one page of HaloPSA end users, optionally filtered by customer, site, name, and active state.

ActionTry it

Upsert Agent

Create or update HaloPSA agent profiles, team memberships, account enablement, administrator access, working hours, licensing, costs, notifications, and approval settings in one array request.

ActionTry it

Upsert Appointment

Create or update HaloPSA appointments in one array request. Each item with id updates that appointment and each item without id creates one. HaloPSA does not document a universally sufficient minimal create payload.

ActionTry it

Upsert Asset

Create or update one or more HaloPSA assets. Each item with an id updates that asset; each item without an id creates a new asset.

ActionTry it

Upsert Client Contract

Create or update one or more HaloPSA client contracts. Each item with an id updates that contract; each item without an id creates a contract. Creates require client_id, ref, start_date, end_date, and billingperiod.

ActionTry it

Upsert Customer

Create or update one or more HaloPSA customers in the endpoint's array body. Each item with id updates that customer; each item without id creates one.

ActionTry it

Upsert Invoice

Create or update HaloPSA invoice records and their typed line items. This action does not capture payment, post or email invoices, create credit notes, or trigger accounting-system synchronization.

ActionTry it

Upsert Item

Create or update HaloPSA inventory and service items in one array request. Each item with id updates that record and each item without id creates one; mixed batches are supported and can alter inventory and accounting state.

ActionTry it

Upsert Knowledge Base Article

Create or update one or more HaloPSA knowledge-base articles through POST /KBArticle. Each item with id updates that article; each item without id creates one. HaloPSA documents no universally sufficient create payload.

ActionTry it

Upsert Opportunity

Upsert HaloPSA sales opportunities: each resource item with id updates that record, while each item with id omitted creates a record. HaloPSA does not document a universally sufficient minimal create payload.

ActionTry it

Upsert Project

Create or update HaloPSA project records, typed milestones, and tags. This action does not close projects, publish articles, send notifications, override record locks, or invoke provider-import and validation workflows.

ActionTry it

Upsert Quotation

Create or update HaloPSA quotation records and typed quotation lines. This action does not send quotations, start signing or approval, create sales orders, or invoke external commerce integrations.

ActionTry it

Upsert Report

Create or update HaloPSA report definitions in one array request. Each item with id updates that report and each item without id creates one; this mutates report definitions and may expose saved SQL or report output.

ActionTry it

Upsert Site

Create or update one or more HaloPSA customer sites. Each item with an id updates that site; each item without an id creates a site. HaloPSA does not document a universally sufficient minimal create payload.

ActionTry it

Upsert Status

Create or update HaloPSA ticket statuses in one array request. Set an item's id to update that exact status, or omit id to create one.

ActionTry it

Upsert Supplier

Create or update one or more HaloPSA suppliers through POST /Supplier. Each item with id updates that supplier; each item without id creates one. HaloPSA does not document a universally sufficient minimal create payload.

ActionTry it

Upsert Team

Create or update HaloPSA teams in one array request. Set an item's id to update that exact team, or omit id to create one.

ActionTry it

Upsert Ticket Action

Create or update ticket notes and work-log actions, optionally recording time or applying a ticket status, without sending email. Each resource with action_id updates that action; each resource without action_id creates one.

ActionTry it

Upsert Ticket Type

Create or update HaloPSA ticket types in one array request. Set an item's id to update that exact ticket type, or omit id to create one.

ActionTry it

Upsert User

Create or update one or more HaloPSA end-user records without sending welcome email. Each item with an id updates that user; each item without an id creates one.

ActionTry it

How the HaloPSA integration works

The HaloPSA integration connects your Dench AI CRM directly to HaloPSA, so agents can read and act on your HaloPSA data as part of everyday work — answering questions in chat, keeping your CRM in sync, and running automations without anyone copying data between tools.

85 actions are available for agents to invoke on your behalf. Every call runs through HaloPSA's own authorization, scoped to the account you connect.

Set up HaloPSA in Dench

  1. 1

    Sign in to your Dench workspace and open Integrations.

  2. 2

    Find HaloPSA and click Connect — you'll authorize access through HaloPSA's own sign-in flow. No API keys or code required.

  3. 3

    Ask an agent to use HaloPSA in chat, or call it from an automation.

  4. 4

    Manage or disconnect the connection any time from workspace settings.

Frequently asked questions

How does the HaloPSA integration work with Dench?

The Dench HaloPSA integration connects your AI CRM to HaloPSA, so AI agents can work with your HaloPSA data as part of chats, automations, and CRM workflows. You connect your account once, and every agent in your workspace can use it — governed by your workspace permissions.

What actions can AI agents perform with HaloPSA via Dench?

The HaloPSA integration currently exposes 85 actions, including Create Ticket, Delete Agent, Delete Appointment, Delete Asset, Delete Attachment, and Delete Client Contract. Agents invoke them on your behalf from chat or from automations.

Do I need to write code to connect HaloPSA to Dench?

No. You connect HaloPSA from your Dench workspace using HaloPSA's own sign-in and authorization flow — no API keys to copy, no glue code to maintain.

Is the HaloPSA integration secure?

Connections are authorized through HaloPSA's own authentication flow, and Dench stores only the authorization needed to act on your behalf. You can review and disconnect the HaloPSA connection from your workspace settings at any time.

HaloPSA | Dench AI CRM