Add an external agent to Halo and restrict their access
The first step in this process is to create all of the necessary departments and teams, we will begin by creating the department for our new agent now by going to Configuration>Organisation and pressing the "Configure My Organisation" button as shown below.
Once you are configuring your organisation go to the "Departments" tab and add a new department, in this example we will call our new department "Tutorial".
Once you have created this new department, press the save button and navigate to Configuration>Teams&Agents>Teams and create a new team.
You can then assign this team to the department you created in the previous step.
On the team creation page, you should configure this team with the settings you would like your external agent's to have, in the tutorial team I have created here I set them to only be for tickets.
After creating this team, navigate to Configuration>Teams&Agents>Roles and create a new role, we will call this tutorial, and on this page is where we will set all of our agent's permissions, for an external agent you will likely want to set every permission to "No Access" except for "Tickets Access Level" which they will need "Read and Modify" permissions for.
If you scroll down further you will see the option to change their "Ticket Type Restrictions" if for instance you only wanted them to be able to see incidents. Just below this, you will see "Client Restrictions" and in this area, we will set it so that the agent only has access to their associated client's information.
Once you have created this role go to Configuration>Teams&Agents>Agents and create the agent account for your external agent, assign this agent the role that we just created.
If you scroll down on the agent creation page you will see the field "Default Team" select this and set your agent to the new team you created earlier.
Now that the new agent has been created you can check their permissions and they will reflect the ones we created in the role, you can now log in as this agent and ensure that they have the access level you want.
Finally, go to the "Users" section of your instance and locate the agent's user account and ensure that they are assigned to the correct client.
Additionally, you can modify any existing agents to have access to this new team so that they can interact with the external agent.