The Datadog platform has 400+ out-of-the-box integrations. While their integrations cover a lot of use cases when it comes to collecting metrics, logs, and events, there are still an unnamed number of technologies the platform does not natively integrate with. In August 2020, Datadog launched their Marketplace platform, where technology partners could create their own platform integrations and sell them directly through the Datadog portal, similar to the marketplaces available on many of the mainstream cloud platforms.
As a Gold Datadog Partner, RapDev was one of the flagship companies involved in releasing the first Datadog Marketplace integrations. Now we have almost 20 integrations available for download.
The Marketplace can be found in the Datadog portal by going to “Integrations” -> “Marketplace”, where you will currently see a few dozen of Marketplace applications developed by partners. From here, you can choose which integration you’d like to explore. Each integration has a free 14-day trial where you test them out for yourself and see if it fits your needs.
However, most users aren’t really aware that unless they’re a partner themselves, when a trial starts, an email is sent to the partner listing who’s trying the integration. RapDev uses this information to follow up with the customer in case they have questions on installation, functionality, etc. We started placing this information in HubSpot to catalog customers’ contact information and track the lifecycle of the potential deal. But, as we developed more integrations, the number of trials increased and tracking this information became a time-sink for our sales team. As our demand grew, so did the amount of time and effort it took to track trials. Because of this I decided to automate this process with AWS.
I started by configuring an email receiving rule using Amazon Simple Email Service (SES). From here, the email is published to an Amazon Simple Notification Service (SNS) topic, which triggers a Lambda function that is subscribed to it. Publishing from SES to SNS allows the entire email to be passed through to the Lambda, including the email body which contains the bulk of the information we wanted to use in this automation, such as email address, the user’s name, the integration being trialed, and pricing information. With the email body available to the Lambda, I was able to use some simple regex to parse this information out.
As anyone should when doing some sort of API authentication to another tool, I utilized AWS Secrets Manager to store the HubSpot API key I use in my calls to their API. I start by checking HubSpot to see if the user that took out the integration is already in HubSpot to avoid possible duplication of contacts. If they do exist, I return the ID of the contact from HubSpot. If they do not exist, I use the information from the Marketplace trial email to create a new contact. With the contact now created, I then use the HubSpot Deal API to create the deal, followed by a call to associate the deal to the contact. Now that the contact and deal association is created, I then make a call to HubSpot’s product API to search our product catalog for the HubSpot SKU of the integration being trialed. Using this information, I create a line item in HubSpot with the integration pricing information, and then associate that line item with the deal created previously.
Now that all the information is in HubSpot, our sales team uses it to reach out to the user to see if they have any questions on the integration, and track metrics around which integrations are the most popular, conversion and engagement rates, and where in the licensing process the customer is. The end result of all this work is better and faster engagement with our customers, less manual work that avoids potential human error, and much better metric tracking for various parts of our sales cycle.