The REST interface and its benefits
In 2000 a doctoral candidate at UC Irvine named Roy Fielding presented his thesis entitled “Architectural Styles and the Design of Network-based Software Architectures”. In his thesis, Mr. Fielding describes a model he called Representational State Transfer (REST) as an architectural principle of the World Wide Web. Over the ensuing years, the acceptance of REST as an approach to developing web services has led to many software vendors implementing REST into their products (and therefore becoming RESTful) as a way of providing interoperability with their products.
Without going into too much detail, essentially a RESTful application allows for a “client” to (potentially) receive and transfer data with a “server” in much the same way people are used to interacting with a traditional website. Requests made from a client to a resource (server) will receive a response that may be in XML, HTML, JSON or some other format. The client can then interpret that response and display the result to a user or provide it as input to another application and so on. Depending on the servers implementation of REST a client may potentially be able to perform other data functions like POST, PUT, DELETE, etc. on the resource server as well.
Beginning with version 7.0 of StableNet®, we have included a REST API as part of our Unified Network & Services Management solution. Based on the Java API for RESTful Web Services (JAX-RS) the REST API adds a lot of flexibility to StableNet® and simplifies the ability of StableNet® to integrate with third party products. One of the main reasons we initially included this API was that it enabled the creation of our StableNet® mobile client. As Eduardo Gonzales Pozega – lead developer of our mobile client – states
“We developed the StableNet mobile app to extend the range of our StableNet GUI and to provide a vivid example of the capabilities our REST API delivers.”Eduardo Gonzales
Indeed, it is this core functionality which allowed Eduardo and our team to fully leverage the REST API’s capability in order to deliver the mobile client. However, you don’t need to be an Infosim developer to reap the benefits of our API. Rather, it is the very fact that such REST architectures are well known and accepted by virtually every web developer in the world, which makes it so powerful.
Currently, the StableNet operations available in our REST API are shown in the table below:
As you can see, we have exposed many of the core functions of StableNet via the REST API. This means that our customers can use their own expertise to integrate StableNet with other critical applications in their environment. Some common examples of integrations include:
- Dynamic customer portals
- 3rd party performance and/or fault applications
- Service Desk (Trouble ticket) platforms
- Reporting engines
- Workflow utilities
We also have a number of hardware partners which are using our API to develop applications to manage their own platforms!
Let’s look at two examples of how the REST API could be used in practice.
REST API Example #1 – Adding a user
Many organizations have multiple tools which they use to monitor and manage their IT estate. It is likely that each of these tools maintain their own user controls for who can access the tool. It can be quite a time consuming and (frankly annoying) process to add/remove/change access for many users on all of these tools. However, if each of the tools supports an API method to add a user (which StableNet does) then the organization could build a simple web form which could then issue the appropriate commands to each of the connected applications.
Standard parameters like username, password, group membership and so on could be filled out once by a manager and then quickly disseminated to multiple tools. If some tools have special parameters, they could be handled with additional dropdown menus or other ways most web users are already comfortable with. This ensures that all users are created or changed the same way each time and saves a tremendous amount of effort within large organizations.
REST API Example #2 – Calling a Weathermap to a portal
A more StableNet specific example would be where an organization might already have a single web portal built which combines data from multiple sources in order to provide a better interface for their IT support teams. Like we stated in example #1, many companies utilize multiple tools in order to comprehensively monitor their systems. However, the disadvantage of having so many tools is that the end users sometimes need to access multiple applications to track down the data they need. In these cases, a single web based portal which can pull data from disparate systems into one view can be a huge time saver.
One of the best features of StableNet® is our Weathermaps which can be used to create live graphical views of the connectivity / performance / state of the systems we monitor. By using the ability of our REST API to call an existing Weathermap, an organization could create a single place for a support team to login and see not only a StableNet® Weathermap, but also data from other systems as well. This “Single pane of glass” view is much more valuable to a support team than the alternative of having to separately login to multiple systems to get the same information.
At Infosim® we always want to support our customers and partners in the best way possible to achieve their goals. In the short time since the release of our REST API, we have seen tremendous excitement from our customer/partner ecosystem, and we expect even greater adoption in the future.
Share this Blog post:
Consultant & Developer at Infosim®