Introducing our new API

Still Life of an Electrical Wall Outlet Overloaded with Wires and Cables

As you may have seen already, we’re about to release a major new version of our call centre software. One of the major changes we have made is that we have completely replaced the API for 2nd and 3rd party developers.

As Q-Suite is over 16 years old, technology has evolved along with it. Looking back on old call centre technologies can make us feel nostalgic, but we shouldn’t be feeling nostalgic when looking at our current API set. This is why we decided to replace our multiple API sets with a single one that can be accessed over different technologies.

Our 6.0 API can be accessed over a websocket, REST, or STOMP connection with the same command set. These will replace our .NET libraries, XML over HTTP, and proprietary binary protocol APIs.

As an example, let’s take a look at the API call that’s used to log in. We send the command with the username and password and a unique token for the request.

{
 "api": "authenticate",
 "version": "1",
 "token": "71c0ac12-9b3a-11e4-9898-74d435e8439b",
 "hostname": "127.0.0.1",
 "username": "test",
 "password": "test"
 }

The server then returns the response:

{
 "api": "authenticate",
 "version": 1,
 "timestamp": "2015-05-20T17:33:10.812Z",
 "microseconds": 90000,
 "token": "71c0ac12-9b3a-11e4-9898-74d435e8439b",
 "success": true,
 "data": {
     "userId": 11,
     "authKey": "19407819-be9b-4fec-9339-d97845019b33"
     }
 }

While we’ll still be supporting our old APIs on our 5.X platform for the time being, we believe the transition to the new one will worthwhile as it will open up many new features and provide a much more consistent way of interfacing with our software.