Hornbill Blog

INTEGRATION: Hornbill Open Integration Approach

When I first conceived our Hornbill Platform I knew that the key to being successful was the ease in which it could be made to interoperate with other systems.  In theory, the Hornbill Platform could be used to implement pretty much any business application with its many capabilities. However, for now at least, we have chosen to focus our go-to-market efforts on Collaboration, Service Management and Customer Management application areas.  Any business system needs to be able to “play nice” with other systems, and not only should it work well but it should be easy to achieve comprehensive levels of integration without complexity. 

First of all, a little integration history.  All systems have some form of API, everyone knows that, but APIs are generally not interoperable. In the enterprise world for example, an attempt by a working group sponsored by Microsoft to create a standard for exchanging information was created called SOAP, using XML technologies, specifically XML Schema to describe the information structure being exchanged.  SOAP was adopted by Microsoft and Java SDKs and so the dream of seamless interoperability was being sold to the enterprise developers.  Truth is though, the standard was too flexible, and too verbose in its representation, a classic outcome of a committee driven approach to standardise something.  With the flexibility came interoperability issues as different systems took different approaches to represent data within the confines of the standard and it became clear that SOAP actually was not going to deliver on the promise of solving interoperability issues, it was actually going to create just as many.  Since then, web technologies have really taken hold while browsers have never natively supported XML, instead a simple data representation scheme known as JSON (JavaScript Object Notation) which, along with REST has become the defacto standard for implementing API’s simply because its compact, easier to read and browsers support it natively.  There are many variations of these schemes as well as some obscure schemes that use things like ASN.1 or other serializations so the integration landscape is not without its challenges.

Now while we wanted to do as much of the heavy lifting as possible in terms of integrations so our customers don’t have to (see our iBridge for example), we also recognise that there will always be that one thing that we did not think of, integrating two systems always requires what I call “glue code” which is simple code that transforms a message from one format to another. So early on we adopted a strategy of providing a fully open and documented API for the Hornbill Platform and an open source integration approach.   Every integration we build outside of our “everything is done for you” schemes are built and published as open-source projects under the Hornbill Community License, all projects we create are made available to our customers on GitHub, we fully support and maintain these projects, although our customers are also free to fork these projects and make them their own too.

Here are some of the projects we have published with a brief description of their purpose

  • dotNetApiLib – a library that makes integrating any .NET application with Hornbill simple and intuitive
  • goApiLib – a library that makes talking to the Hornbill Platform easy from the Go Programming Language
  • pythonApiLib – a library to use the Hornbill Platform API’s with Python
  • phpApiLib – a library to enable you to integrate with the Hornbill Platform API from PHP
  • goSWRequestImport - Supportworks Request Import Tool for Hornbill Service Manager written in Go
  • goServiceNowRequestImporter – Import requests from a Servicenow instance into Hornbill Service Manager
  • goDbAssetImport – A tool written in Go to import assets from a database source into Hornbill Service Manager CMDB
  • goDb2HContactImport – A tool written in Go to import contacts from a database source into Hornbill
  • goDb2HUserImport – A tool written in Go to import user accounts from a database into Hornbill
  • goAzure2UserImport – A tool written in Go to import user accounts from Azure AD to Hornbill
  • goLDAPUserImport – A tool written in Go to import user accounts from an LDAP source
  • rPowerBIHornbillDataSources -  Data Source scripts written in “R” that enable Power BI to use the Hornbill Reporting and Trend Engine APIs as data sources
  • SCOrchHornbillIntegration – Runbooks that allows Microsoft System Center Orchestrator to integrate with Hornbill
  • goApiScheduler – A simple tool written in Go that can be used to schedule the invocation of Hornbill APIs
  • goHornbillCleaner – A tool to clear down test data in a Hornbill instance
  • powershellHornbillAPIModule – A module that enables you to easily interact with your Hornbill Instance

We are committed to providing a rich and diverse set of tools and integrations to enable our customers to gain the maximum value from using Hornbill in their organisations.  All systems should be built to be interoperable but not all systems are built by people that understand this – I am pleased to say that at Hornbill we truly do understand this and embrace the idea of integrating with anything.

Latest Posts

  • We are getting ready for INSIGHTS 19

    Feb 12, 2019
    News Item

    I am excited to tell you that we have been busy at Hornbill, planning and organizing our next annual conference, INSIGHTS 19. This event is the highlight of our year at Hornbill, as we create it for our community. It brings our customers, prospects,...

  • Love me Tender

    Jan 22, 2019
    Collaborative Service Management

     Although Elvis Presley and Vera Matson were given the credit, the principal writer of “Love me tender” was Ken Darby. At the time, Elvis’ publishing deal demanded that writers concede 50% of the credit for the song if they wanted Presley to record...

  • Be the change you so desperately seek!

    Sep 23, 2018
    Blog Posts

    I love the idea of this quote, attributed to the wise man Mahatma Gandhi this simple quote is profound because it strikes right at the heart of human behavior.   In every part of our lives, there is change, and most of it is outside of our control;...

  • Why do people struggle to follow processes?

    Aug 27, 2018
    Blog Posts

    Many a great manager has asked themselves the time-honored question; How do you make people follow procedures and not miss things?  Having more or less documented the processes, and having put them into your knowledge base tool, and having created...

  • Release Roundup - Customer Feedback

    Jul 30, 2018
    Release Roundup

    Hornbill is deployed using Continuous Delivery, and this means we typically make multiple incremental releases every week. As well as providing essential fixes, we also release new features as and when they become available. To supplement the more...

Subscribe to our mailing list and keep up with our latest software updates.