HaloPSA
Setting up this integration allows you to
- Deploy Software to machines covered by a certain contract type
- Example: Deploy Huntress to all customers with a Managed Security Contract
- (Preferred) Deploy Software to machines covered by an Contract with a specific recurring invoice item
- Example: Deploy SentinelOne to all computers that have SentinelOne on a recurring invoice as a recurring invoice item on their contract
Create an ImmyBot Application under /config/integrations/api/applications
- Under the details section, select the Client ID and Secret Authentication Method
- Generate and copy the Client ID and Client Secret
- The API will need to have the API permissions below.
- The Login Type should be "Agent", and you should select an "Agent to log in as"
- When selecting the "Agent to log in as" be sure it has the Agent permissions below.
Agent Permissions:
The agent user must be part of a the Team used for support and have the following permissions either from a Role or directly applied.
Feature Access Permissions
| Permission | Value |
|---|---|
| Tickets Access Level | Read Only |
| Clients Access Level | Read Only |
| Users Access Level | Read Only |
| CRM Access Level | Read Only |
| Assets Access Level | Read and Modify |
| Suppliers Access Level | Read Only |
| Items Access Level | Read Only |
| Sales Access Level | Read Only |
| Quotations Access Level | Read Only |
| Sales Orders Access Level | Read Only |
| Purchase Orders Access Level | Read Only |
| Billing Details Access Level | Read Only |
| Invoices Access Level | Read Only |
| Reporting Access Level | Read and Modify |
| Client Contracts Access Level | Read Only |
| Supplier Contracts Access Level | Read Only |
Tickets Permissions
| Permission | Value |
|---|---|
| Can view Unassigned Tickets | Yes |
| Can view Tickets that are assigned to other Agents | Yes |
| Can export tickets | Yes |
Billing Permissions
| Permission | Value |
|---|---|
| Can View Item Costs | Read Only |
| Can View Item Prices | Read Only |
| Can View Item SKU | Read Only |
API Permissions:
| Permission | Value | Notes |
|---|---|---|
| read:customers | Yes | |
| read:contracts | Yes | |
| read:items | Yes | |
| edit:reporting | Yes | |
| edit:items | Yes | Should not be needed > 2.99, API bug will not allow listing items without edit rights |
| read:invoices | Yes | |
| read:software | Yes | |
| read:tickets | Yes | Required for the Technician Tools feature |
| read:assets | Yes | Future feature of the integration will include asset population, not currently necessary |
| edit:assets | Yes | Future feature of the integration will include asset population, not currently necessary |
Plug in the Client ID and Client Secret in ImmyBot
Create a HaloPSA Integration Link and fill in the Integration Settings

Embedded Ticket Tab
HaloPSA version 2.125.5, introduced a new feature called Custom Tabs. You can configure these Custom Tabs to point to a web address, similar to an iframe.
Within HaloPSA, configure the tab as follows:
This tab will then show on all tickets in the system, like this:
Technician Tools
HaloPSA version 2.125.5 introduced a new feature called Custom Tabs. You can configure these Custom Tabs to point to a web address that is rendered as an iframe.
Within HaloPSA, configure the tab as follows:

Copy the url template:
https://<your-domain>.immy.bot/technician-pod/psa/<halo-integration-id>/ticket/$FAULTID
The URL is specific to your instance. You'll need to replace <your-domain> with your domain and <halo-integration-id> with your halo integration id. This id can be found here:

After you setup the tab, navigate to a ticket and select the tab with the name you just created. It should load the technician tools page of immy.bot.
