# HaloPSA

## Introduction  <a href="#introduction" id="introduction"></a>

HaloPSA Integration will allow you to create issues with the detailed data per customer when the action will be called.

### Available Features <a href="#available-features" id="available-features"></a>

* User Inventory
* Misconfiguration Rules

### Prerequisites <a href="#prerequisites" id="prerequisites"></a>

* A HaloPSA Agent account with required privileges.
* API credentials (Application) with required permissions.

### Required Privileges for Agent Account <a href="#required-privileges" id="required-privileges"></a>

| Tickets Access Level                                                       | Read and Modify           |
| -------------------------------------------------------------------------- | ------------------------- |
| Clients Access Level                                                       | Read Only                 |
| Users Access Level                                                         | Read Only                 |
| Assets Access Level                                                        | Read Only                 |
| Can add new Tickets                                                        | Yes                       |
| Can edit closed Tickets                                                    | Yes                       |
| Can view Unassigned Tickets                                                | Yes                       |
| Can view Tickets that are assigned to other Agents                         | Yes                       |
| Can change a Ticket's Ticket Type                                          | Yes                       |
| Can Re-assign Tickets                                                      | Yes                       |
| Can Edit Advanced Ticket Details                                           | Yes                       |
| Editing of Actions                                                         | Can Edit Own Actions Only |
| Can assign to Agents in Teams the Agent is not a member of                 | Yes                       |
| Can Edit Tickets Which Are Not Assigned To Them                            | Yes                       |
| Can always update Ticket Statuses and re-assign Tickets outside of actions | Yes                       |
| Allow use of all Asset Types                                               | Yes                       |
| Allow use of all Ticket Types                                              | Yes                       |
| Allow use of all Asset Fields                                              | Yes                       |

<details>

<summary>To create an Agent Account, follow these steps:</summary>

1. Login to HaloPSA Agent Portal
2. Go to Configuration → Teams & Agents → Agents.
3. Click “+ New”
4. Add username : Perimeters and click “Save”
5. Go to the “Permissions” tab and click “Edit”.
6. Select the Agent Permissions
7. Click “Save”
8. Click “edit” in the “Departments & Teams” tab.
9. In the Teams section, click “+ Add” and select the teams you want to add perimeters to and send tickets to and click “Save”.

</details>

### Required Permissions for API Credentials (Application) <a href="#onboarding-jira-in-your-perimeters-account" id="onboarding-jira-in-your-perimeters-account"></a>

| Scope          | Usage                                      |
| -------------- | ------------------------------------------ |
| read:tickets   | Read tickets that are opened by perimeters |
| edit:tickets   | Create and update tickets                  |
| read:customers | Read Customer Inventory                    |
| read:assets    | Read Asset Inventory                       |
| read:projects  | Read Projects                              |
| all:teams      | Read Teams and Members                     |

<details>

<summary>To create API Credentials (Application), follow these steps:</summary>

1. Login to HaloPSA Agent Portal.
2. Navigate to Configuration → Integrations → HaloPSA API → View Applications.
3. Click "+ New".
4. Fill the following information:
   * Application Name: Perimeters
   * Authentication Method: Client ID and Secret (Services)
   * Login Type: Agent
   * Agent to login in as: Perimeters (Agent created via following perimeters' instructions from the previous step.)
5. Make sure to copy your Client ID and Client Secret. Once you are finished, navigate to the Permissions tab.
6. Select the following permissions:
   * all:teams
   * read:tickets
   * edit:tickets
   * read:customers
   * read:projects
   * read:assets
7. Click Save at the top left to finish creating the Application.

</details>

### Onboarding HaloPSA in your Perimeters account <a href="#onboarding-jira-in-your-perimeters-account" id="onboarding-jira-in-your-perimeters-account"></a>

1. Go to Integrations → SaaS Services → Select "HaloPSA" -> Click "+ Add" -> Click "+ Start Integration".
2. **"Namespace" -** Fill in the domain name for your HaloPSA instance. For example, if your HaloPSA domain name is "perimeters.halopsa.com" you would enter "perimeters" in this field.
3. **"Client ID" -** Provide the Client ID that was create in earlier steps.&#x20;
4. **“Client Secret” -** Provide the Client ID that was create in earlier steps.
5. Click **"Finish"** to complete the onboarding process.

Once you have completed these steps, HaloPSA should be successfully integrated with your Perimeters account.

<br>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://support.perimeters.io/perimeters-documentation/connecting-perimeters/integrations-for-security-insights/msp-specific-applications/halopsa.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
