Extending Intercom’s functionality with 3rd party API integrations

The Intercom quickstarts on Hasura Hub serve as base projects you can extend and modify for your custom use-case

Hasura
3 min readDec 29, 2017

Intercom is a customer engagement platform that allows businesses to chat with prospective and existing customers within their app, on their website, through social media, or via email. With over 100,000 users, Intercom is one of the most popular platforms for customer support, and is especially widely used across startups and younger companies — We use it at Hasura as well, and suffice it to say, we are huge fans!

Ping us on chat on hasura.io to see Intercom in action!

Customising your Intercom workspace

As with any modern tool, Intercom offers a comprehensive list of APIs that can integrate with custom apps you write. You can find the complete reference here. These APIs can be used to create custom apps that add functionality to your Intercom workspace, or modify functionality to suit your own unique requirement.

For example, on our Intercom workspace, we have the following functionality added:

  1. We have an integration with the Google Translate API that allows us to parse and respond to users who communicate with us in a language that is not English.
  2. We also have a simple webhook that sends fun messages to especially responsive members of our customer engagement team.
Our Intercom Translate integration in action

We have since published both of these projects onto Hasura Hub. Hub is a collection of community contributed projects that you can extend and modify, to give you a head start on developing your application.

To deploy these apps to your own Intercom workspace, simply follow the instructions in their respective Readmes — you can find the Readme for the translate integration here, and for the simpler webhook here. To see the Translate integration in action, you can also chat with us in a language other than English on our website :)

Using these Hub projects as a base for developing your own custom Intercom functionality

Both of these projects are written in a way to serve as extensible references for your own experiments with Intercom. Each project comes with:

  1. Sample code in Python Flask with Intercom APIs/callbacks wired up.
  2. Connections to database APIs to store state — you can integrate this further with a third party service such as an NLP API to manipulate the data before responding.
  3. Instant git-push to deploy on a free Hasura cluster with an SSL-enabled domain.
  4. The Translate integration is also wired up with the Google Cloud Translation API, to serve as an example third party integration.

To customise and modify the project:

  1. First click on the clone and deploy button on the Hub page (translate integration page here, and the simpler webhook page here) and follow instructions to clone and deploy these projects onto your own Hasura cluster.
  2. Then head to the section in the Readme on modifying and building on top of the project.
  3. Once you have made your modifications, simply do another git-push to deploy changes to your Hasura cluster.
  4. The Readmes also have instructions for adding the final project to your Intercom workspace.

If you do extend these projects and create your own custom Intercom integrations, you can publish the results back to Hasura hub, so everyone benefits from your work.

As part of the first Hasura #Pub2Hub challenge, we are also giving away Hasura swag boxes and 3 months of hosting credits to the best published projects!

Build powerful applications in minutes with Hasura. Check it out here: https://hasura.io

--

--

Hasura
Hasura

Written by Hasura

⚡️ Instant realtime GraphQL APIs! Connect Hasura to your database & data sources (GraphQL, REST & 3rd party API) and get a unified data access layer instantly.

No responses yet