Mizo voted top 3 innovative MSP solutions by ConnectWise. Read the full press release

HaloPSA Setup Guide

Purpose

This document outlines the standardized steps for setting up an API integration between HaloPSA and Mizo, including agent, application and custom ticket tab creation.

Section 1 – Setting up the base configuration in Mizo Console

Step 1: Configure Integration in Mizo

  1. Log into the Mizo console.
  2. In the left-hand menu, go to Integrations.
  3. Select HaloPSA from the list.

Step 2: Enter HaloPSA configuration

  1. Instance URL:
    • Your HaloPSA instance URL (e.g., https://{{your_company_name}}.halopsa.com)
  2. Client ID:
    • Will be covered in section 2.
  3. Client Secret:
    • Will be covered in section 2.
  4. Mizo Ticket Tab Secret:
    • Will be covered in section 2.
  5. Interface Language:
    • Select your preferred language.

Keep the configuration open in a browser tab, as it will be modified in the next sections.


Section 2 – Creating the HaloPSA Mizo Agent

Step 1: Log in to HaloPSA

  • Sign in to your HaloPSA instance using an account with Administrator rights.

Step 2: Create a Security Role for the Integration

  1. Navigate to Configuration > Teams & Agents > Agents.
  2. Click New to add a new agent.
  3. Configure the new agent (fields not listed below should keep their default value):
    • Username: Mizo Agent
    • Password: Keep blank.
    • Use AD authentication: No
    • Roles: Administrator (This doesn’t give admin rights to Mizo, permissions are set later).
    • Is an API-only Agent: Yes
    • First Name: Mizo
    • Surname: Agent
    • Initials: MZ
    • Default Team: *No Default Team*
    • Work Hours: 24 Hours
  4. Click Save.

Step 3: Add a new Application

This application allows Mizo to view and update tickets

  1. Navigate to Configuration > Integrations > HaloPSA API > Applications > View Applications.

  2. Click New to add a new application.

  3. Configure the application:

    • Application Name: Mizo Agent

    • Authentication Method: Client ID and Secret (Services)

    • Client ID and Client Secret: Copy the values and paste them in your HaloPSA Integration Configuration in the Mizo Console.

    • Login Type: Agent

    • Agent to log in as: Mizo Agent

    • In the Permissions tab, set the following permissions:

    PermissionComments
    all:teams
    read:tickets
    edit:tickets
    read:calendarNeeded for dispatch
    edit:calendarNeeded for dispatch
    read:customers
    edit:customers
    read:contactsNeeded for ticket attribution
    edit:contactsNeeded for ticket attribution
    read:items
    edit:items
    read:timesheetNeeded for dispatch
    edit:timesheetNeeded for dispatch
    read:kb
    edit:kb
    read:assets
    edit:assets
  4. Click Save.

Step 4: Create the Custom Mizo Tab

This tab will display Mizo’s analysis and actions

  1. Navigate to Configuration > Custom Objects > Custom Tabs.
  2. Click New to create the new custom tab.
  3. Configure the custom tab:
    • Tab Name: Mizo
    • Sequence: 1 (or higher if you want it to be displayed after other tabs)
    • Type: Iframe
    • Url: Copy the Mizo Ticket Tab Url field from the Mizo Console and paste it here.
    • Check the Send secure URL parameter box.
    • Iframe secret: Copy and paste it in your HaloPSA Integration Configuration in the Mizo Console.
  4. Click Save.

Step 5: Configure Ticket Types for Mizo

  1. Navigate to Configuration > Tickets > Ticket Types.
  2. Click on a ticket type you want to add the Mizo tab for and click Edit.
    1. We recommend selecting at least your ticket types equivalent to the [ITIL](https://iseoblue.com/post/itil-ticket-types-explored/)TriageIncident, Change Request,Service Request, and Problem ticket types
  3. Configure the ticket type:
    1. Open the Allowed Values tab.
    2. Scroll down to the Custom Tabs section.
    3. Click Add.
    4. Select Mizo.
    5. Click Save.
  4. Click Save at the top.
  5. Repeat steps 2-4 for each other ticket type you want to configure.


Section 3 – Complete the HaloPSA Integration Configuration in Mizo

Step 1: Validate the HaloPSA Integration

  1. Go back to your HaloPSA Integration Configuration in the Mizo Console.
  2. Click Save.
    • A green message should appear, validating that the HaloPSA API is properly reached.
    • If a red error message appears, validate that your values are correct (regenerating secrets if needed).
  3. Scroll down to the Scope section and enable all the ticket types you configured in Step 5 of Section 2 and click Save.
  4. (Optional) Also set the Assignable Ticket Types that Mizo should consider for assignation.
  5. (Optional) On the left menu, go to the Automation page and check the automation features you want to be enabled.

Section 4 - Create the WebHook to process tickets

Step 1: Configure the certificate

  1. In the WebHook Configuration section in the Mizo console, click on the Generate certificate button. This should download a pfx file on your computer.
  2. Copy the password below the button.
  3. Open the new certificate page of HaloPSA:
    • Go back to HaloPSA.
    • Navigate to Configuration > Advanced Settings.
    • Scroll down until you see a Certificates button and click it.
    • Click New.
  4. Configure the certificate:
    • Name: Mizo
    • Pfx: Upload the pfx file you just downloaded.
    • Password: Paste the password copied in step 1.2.
  5. Click Save.

Step 2: Configure the WebHook

  1. Navigate to Configuration > Integrations > WebHooks.
  2. Click New.
  3. Configure the WebHook:
    1. WebHook name: Mizo ticket webhook

    2. Payload URL: Copy the Mizo WebHook URL displayed above the button you clicked on step 1 and paste it here.

    3. Authentication: Sign Request Body with a X.509 Certificate

    4. Certificate: Mizo

    5. In the Events section and click Add. the following events:\

      Event NameNotes
      New Ticket Logged
      Ticket Status Changed
      Ticket ChangedField: Client (Or Customer), Change context: Value changed, Rule type: To any value
      Action added by AgentAdd the actions equivalent to: 1. Logging a Private Note on the ticket 2. Sending an Email to the customer

      INFO

      1. N.B. In the end, you should have 5 different events that trigger Mizo Webhooks. The Ticket Updated event in the image below represents the Ticket Changed trigger above. HaloPSA changes the name on updated

    6. Click Save.


Section 5 - Create the Mizo actions in haloPSA

Step 1: Configure the “Mizo resolve” actions

  1. Navigate to Configuration > Tickets > Actions.
  2. Click New.
  3. Configure the Action:
    1. Outcome Description: Mizo resolve. This is character sensitive, make sure to copy it exactly
    2. Button Name: Mizo resolve
    3. Status After Action : Choose your “Closed/Resolved” ticket action - Mizo will automatically use this action to close tickets it resolves.
  4. Save and click Edit. Under the Details tab:
    1. Enable Action is visible checkbox
    2. Enable Action is visible outside of Workflows checkbox
    3. Enable Hide from Ticket Header checkbox
    4. Enable Hide from User checkbox
  5. Under the Field List tab
    1. Add the Private Note field
  6. Click Save

Section 6 - Test the complete setup

Step 1: Create a new ticket

  1. At the top of any page on HaloPSA, click New Ticket.
  2. Choose a Ticket Type that has been configured in section 2.4.
  3. Fill the rest of the fields with any information.

Step 2: Verify if the WebHook detected the new ticket

  1. Navigate to Configuration > Integrations > WebHooks.
  2. Select the Mizo new ticket WebHook.
  3. Open the Deliveries tab.
  4. Make sure the ticket you created is listed here and that the response is 200.
    • If it is not the case, you should contact Mizo’s technical support.

Step 3: Validate the ticket

  1. Navigate to Service Desk > Triage.
  2. Select the ticket you created.
  3. Open up the Mizo tab.
  4. Information about the ticket generated by Mizo should be shown.
    • If an error pops up, you should contact Mizo’s technical support.