Go to Configuration → Integrations → HaloPSA API, click View Applications, then New.
Configuration → Integrations → HaloPSA API, then View Applications
2
Configure application details
Set these fields:
Application Name: neoagent
Active: checked
Authentication Method: Client ID and Secret (Services)
Agent to log in as: the Neo Agent resource you created, not the default
Set the name, authentication method, and the Neo Agent login agent
The login agent decides which tickets Neo can see: HaloPSA scopes the application’s access to that agent’s teams. Leave it on the default and Neo works the wrong ticket set. Neo’s verification checks confirm the agent after you connect.
3
Set the permissions
On the Permissions tab, set these three scopes to Yes and leave every other scope at No:
all:standard: read and write access to tickets, actions, contacts, assets, and the other standard areas
all:teams: access to teams and agents, so Neo routes and assigns tickets correctly
admin:webhooks: lets Neo register its webhook automatically
Set all:standard, all:teams, and admin:webhooks to Yes
HaloPSA’s scopes are coarse, so all:standard grants broad access. The Neo dashboard’s permission groups control what Neo actually does; the scopes only set the maximum access. Sensitive areas such as invoices, contracts, and configuration default to read-only in Neo’s standard permission profiles. Two parts of Invoices stay protected even with write access enabled: Halo publishes charge rates as read-only through the API, and creating or deleting a billing template always asks a technician to approve it first — including on a Full Automation agent — because a template sets rates, free units, billing periods, and prepay top-up amounts for the clients it covers.
admin:webhooks is required. The all:standard scope does not cover webhook administration, and without it the connection fails with 401 Unauthorized when Neo creates its webhook. This is the most common reason a HaloPSA connection fails after the Client ID and Secret are accepted.
Optional: set admin to Yes only if Neo should manage HaloPSA email rules, for example to block a repeat spam sender with an Ignore Email rule. Everything else works without it, and you can enable it later without redoing the connection. Both required steps are in Letting Neo Manage Email Rules.
4
Save and copy the credentials
Click Save. The Details tab shows the Client ID and the Client Secret. Copy both now; HaloPSA may not show the secret again.
After saving, the Details tab shows the Client ID and Client Secret