StableN/ASyncedN/A

Connecting Through the API

Updated Jun 5, 202610,008 viewsView on usehalo.com
  • SSL
  • API
  • Authentication
  • Development
  • connecting
  • grant token

In this guide we will cover:

  • Importing Data
  • Authentication
  • Resources and Data
  • Common Issues

Documentation on the Halo API can be found by going to your Halo URL and adding "/apidoc" to the end, or a full list of endpoints can be found here.

We allow the exporting and importing of a lot of your data in JavaScript Object Notation (JSON) format.

Importing Data

To authorise any connection to your Web-App through the API you must register the application, this is done through the integrations tab of the configuration and navigating to the Halo API.

Fig 1. Integrations module.

Configuration > Integrations > HaloPSA API (or whichever product you use).

Fig 2. Halo API module.

Authentication

This is fully explained in the aforementioned API documentation and will allow your program to have continued access whilst the integration whilst the integration is active in Halo.

Resources and Data

By default, the resource server is available at *your Halo Web Application url*"/api". Each resource then has it's own endpoint, e.g. tickets are available at *your Web Application url*"/api/tickets". Endpoints accept the HTTP GET, POST and DELETE methods depending on the resource that you are accessing.

GET - will return a dataset depending on the parameters in the Request.

POST - will accept an array of objects to add or update. Not all fields are required, only those that need to be updated and the ID field.

DELETE - require an ID and will remove the resource with that ID.

Each resource and method is protected by a minimum authentication level.

No Authentication - can access without a token.
User - can access as a Halo end user.
Agent - can access as a Halo agent.
Admin - can only access as a Halo administrator.

Resources may be protected further by permissions depending on your Halo configuration.

Common Issues

Your program will not receive a grant token:

  • This can often mean that your program does not have access to a valid or up to date SSL Library. Current ones can be downloaded here. These should be placed in the working directory for the program.
  • Somewhere in the input of data a spelling mistake was made.