Integrating with GoldMine using a self hosted RESTful API

It’s not too uncommon to have a customer ask me, “Does GoldMine integrate with, “XYZ” app.” For many years that answer was simply “NO”. That’s because there wasn’t a lot of development work/integration work being done by inside or outside developers to create integrations between GoldMine and other applications. The other reason is because GoldMine is not a web based application and integrating it with other web applications would be quite time consuming and expensive. So when ever we actually had a customer that was interested they would be turned off by the costs to develop a custom integration for them.

Today the answer is a little different. First Direct Corp. has written a RESTful API for GoldMine, that allows web applications to now be integrated with GoldMine or GoldMine to be integrated with web applications, using this RESTful (web based) API. Most web applications today have their own RESTful API, which allows web developers to create/write integrations between various web applications. With this GoldMine RESTful API, the same is now true for GoldMine.

In addition to having a RESTful API, many web applications today, also have a feature called “WEBHOOKS”. If you are not sure what “webhooks” are, they have been all the rage of the Internet for the last 10+ years. A quick google search for “What are webhooks?” should give you some insight into what this internet technology is and what it can mean for you in the terms of integrating your applications with your GoldMine.

In summary, a “Webhook” is a very simple and light weight way for developers to integrate one application with another. The integration is automatic, requiring no intervention by a human or use of a middleware application to facilitate the data transfer/integration. Think less development time/costs.

A webhook, once setup and configured is based on a “triggering action” in one application and a receiving URL end point in the other. This URL end point or webhook is nothing more than a web script that is developed/configured to accept the data that is sent to it from the triggering application, and then the webhook/web script processes that data in what ever way is needed to get that data into the receiving application.

There are so many potential uses for this sort of integration, and the key thing to realize is that its automatic. So imagine someone signs up for your newsletter on your web site by submitting an online web form. Once that form is submitted (triggering action), the contact data provided is then sent to a URL end point (webhook), and that web script then is programmed to automatically add that contact to your email marketing systems subscriber list, and also add it to your CRM system, and also add it to your Accounting System. But when it adds it to your CRM system, you now want to automatically schedule a call for an assigned rep, and send an introductory email to the contact thanking them for signing up. This can all be achieved with the GoldMine RESTful API and custom webhooks.

In many cases, where I have setup these sort of automations for our customers, I am also using a web automation platform tool called www.Zapier.com. Zapier makes integrating various web applications with one another as simple as clicking some buttons, with very little or no web development or programming skills needed.

What is also very nice about Zapier.com, is that they act as an “Answering Machine” for when your automations/workflows fail. For example, lets say the power goes out at your office, or one of your applications is down and offline for what ever reason. When that is the case, no automation is performed.

Normally, when this disconnect occurs, there is nothing that can be done to “REPLAY” or “RETRY” that data transfer. Sort of like back in the old days of making a phone call and no one answers. The call just ends. With Zapier.com, that’s not the case. When the data from the “Triggering App” sends its data (makes a call) to Zapier.com, Zapier.com will save any failed data transfers and allows you to either automatically keep retrying that automation (with certain paid accounts) or you can manually retry them when they fail. Zapier.com will also email you and let you know when/if your automations/workflows (what they call Zaps) fail.

If you are interested in integrating one or more of your applications with GoldMine, please contact us today at (845) 221-3800 or contact us online.