> ## Documentation Index
> Fetch the complete documentation index at: https://kb.mspprocess.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Step 1: Creating an API User and Integration in Halo PSA

> IntroductionConfiguring MSP Process and HaloPSA to work with one another is a quick and easy process that is composed of a few steps:Creating an Agent in…

### **Introduction**

Configuring MSP Process and HaloPSA to work with one another is a quick and easy process that is composed of a few steps:

1. Creating an Agent in HaloPSA that has the appropriate roles and permissions.
2. Creating an Application within the HaloPSA API
3. Providing MSP Process with the appropriate URL and tokens to communicate with HaloPSA.
4. Creating a custom tab in HaloPSA that will display the MSP Process Pod

Once you've completed the steps in this KB article, you'll have MSP Process and HaloPSA communicating with one another, and you'll be ready to move on to the next KB article: [Step 2: Setup the MSP Process "Custom Tab" in Halo](https://kb.mspprocess.com/msp-process/settings/psa-integrations/halo-psa/step-2-setup-the-msp-process-custom-tab-in-halo.md).

### **Creating an Agent in HaloPSA**

1. Sign into your HaloPSA system
2. Navigate to **Configuration -> Teams and Agents -> Agents**
3. Click the **New** button to add a new agent
4. Provide a name for the agent; we recommend *MSP Process Agent*
5. Specify a password that meets your organizations security rules
6. Assign the agent a Role; we recommend the default Role called *1st Line Support* (or your equivalent if you’re modified the Roles in your Halo PSA instance).
7. In the Department & Teams tab, in the Teams section, you will want to edit the Team you are using

![](https://mintcdn.com/triggr/o9r5jEtjdR2oUtiW/images/msp-process-kb/db2bbdefce9e.png?fit=max\&auto=format\&n=o9r5jEtjdR2oUtiW\&q=85\&s=d1b79cd1747053b756a4e692f36375f3)

8. Once the editing Role-Team Relationship opens, you will want to ensure that the following two options are selected:
9. Can see Unassigned Tickets for this Team
10. Can see Tickets assigned to other Agents in this Team

![](https://mintcdn.com/triggr/-njaXAnAb5AWpJCy/images/msp-process-kb/4fc8fb1a6a39.png?fit=max\&auto=format\&n=-njaXAnAb5AWpJCy\&q=85\&s=6bcd563758ed7b6e0d206ac2791d0f2f)

9. Next you will review the Role permissions. The following Access Level permissions must be assigned:

10. **Mandatory Permissions:**

11. Ticket Access Level: **Read and Modify**

12. Customer Access Level: **Read and Modify**

13. User Access Level: **Read and Modify**

14. CRM Access Level: **Read-only**

15. Assets Access Level: **Read and Modify**

16. **Optional Permissions -** only required if you want to use the MSP Process custom tab within Opportunity, Project or Sales tickets in HaloPSA:

17. Sales Access Level: **Read and Modify**

18. Please note that is you are experiencing the errors below, double check these options:

19. ![](https://mintcdn.com/triggr/o9r5jEtjdR2oUtiW/images/msp-process-kb/acd0fe5a9650.jpg?fit=max\&auto=format\&n=o9r5jEtjdR2oUtiW\&q=85\&s=cc65528cd876ce4682f226a1f12f883b)

    or

    ![](https://mintcdn.com/triggr/-njaXAnAb5AWpJCy/images/msp-process-kb/6418408cb1a3.jpg?fit=max\&auto=format\&n=-njaXAnAb5AWpJCy\&q=85\&s=cba37a610c1aa0bc1378c4b598afa0a5)

20. **Ticket Permissions**

21. Can add new tickets: **Yes**

22. Can edit closed tickets: **Yes**

23. Can view unassigned tickets: **Yes**

24. Can view Tickets that are assigned to other Agents: **Yes**

25. Can Re-assign Tickets: **Yes**

26. Editing of Actions: **Can Edit Own Actions Only**

27. Can Edit Tickets Which Are Not Assigned To Them: **Yes**

28. Enable the **Is an API-only agent** option

29. Fill out any other mandatory fields (such as the **Team** and **Working Hours** fields)

30. Click **Save**

#### Agent Permissions

Next, navigate to **Configurations** > **Teams and Agents** \\> **Agents**

1. Edit the *MSP Process Agent* account; on the **Permissions** tab, enable the "Can Delete Tickets" option:\`

2) Click **Save**

**NOTE:** The ability to delete tickets is only needed when setting up a Ticket Default in MSP Process, as validating the Ticket Default involves creating and then deleting a ticket in Halo PSA. Once the ticket default has been setup, you can disable the "**Can Delete Tickets**" option.

#### **Creating an Application within the HaloPSA API**

1. From the Halo PSA UI, navigate to **Configuration -> Integrations -> HaloPSA API**
2. Take note of the **Resource Server** URL; you'll need it (including the https\:// prefix, but without the */api* at the end) during one of the configuration steps with MSP Process
3. Within the **Applications** portion of the page, click the **View Applications** button
4. Click the **New** button to add a new application
5. Specify a name for the application; we recommend *MSP Process*
6. Within the **Authorization Method** section, click **Client ID and Secret (Services)**
7. Copy the **ClientID** and **Client Secret**; you'll need it during one of the configuration steps with MSP Process
8. Ensure that the **Login Type** drop-down menu is set to **Agent**
9. Open the **Agent to log in as** drop-down menu, and choose the Agent you configured in the **Creating an Agent in HaloPSA** section
10. Click the **Save** button
11. Dismiss any permissions-related messages that appear; we'll be configuring those next

#### **Configuring Permissions**

1. On the **Permissions** tab, click the **Edit** button and enable the following permissions:
2. **Mandatory Permissions:**
3. read:tickets
4. edit:tickets
5. read:customers
6. edit:customers
7. read:crm
8. edit:crm
9. read:items
10. edit:items
11. **Optional Permissions** - only required if you want to use the MSP Process custom tab within Opportunity, Project or Sales tickets in HaloPSA:
12. edit:projects
13. edit:sales
14. Please note that is you are experiencing the errors below, double check these options:

![](https://mintcdn.com/triggr/o9r5jEtjdR2oUtiW/images/msp-process-kb/acd0fe5a9650.jpg?fit=max\&auto=format\&n=o9r5jEtjdR2oUtiW\&q=85\&s=cc65528cd876ce4682f226a1f12f883b)

or

![](https://mintcdn.com/triggr/-njaXAnAb5AWpJCy/images/msp-process-kb/6418408cb1a3.jpg?fit=max\&auto=format\&n=-njaXAnAb5AWpJCy\&q=85\&s=cba37a610c1aa0bc1378c4b598afa0a5)

2. Click the **Save** button

#### **Providing MSP Process with the appropriate URL and tokens to communicate with HaloPSA**

1. Login to the MSP Process UI ([https://app.mspprocess.com](https://app.mspprocess.com))
2. Navigate to **Settings -> Integrations -> PSA Integrations**
3. Click on the **Add new PSA** icon
4. Click the **HaloPSA** icon
5. Specify the **ClientID** and **Secret** that you obtained in step 7 of the **Creating an Application within the HaloPSA API** section
6. Specify the Resource Server URL (remove the /api at the end) that you obtained in step 2 of the **Creating an Application within the HaloPSA API** section. Note that the URL **must** start with **https\://**
7. Click **Submit** to save the HaloPSA configuration settings
8. Finally, fill in the ticketing default fields; these values will be used when leveraging MSP Process to create tickets
9. Click **Submit** to finish setting up the HaloPSA module in MSP Process


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.