When you’re working with a mix of different technologies and are asked to perform an application, workflow, or data integration, you have to select the right tool for the job. Some integrations are complex and involve multiple data sources, real-time data streaming, and strict requirements around data protection. For those integrations, you might consider enterprise integration platforms such as Boomi, or SnapLogic to be the hub to connect multiple data sources, perform transformations, and provide access to downstream applications.
Other times, the integration is data-centric and entails moving data from source systems to one or more downstream systems. Many data integration platforms are available depending on whether you are working with batch data from enterprise systems, real-time data from IoT sensors, or integration across multiple big data platforms.
Lastly, you may be asked to do something far smaller in scale, and the art of the solution is finding an approach that’s easy to build, simple to maintain, and operationally reliable. Here are some examples:
- When a new user registers on the website, add their email as a subscriber to newsletters sent through an email marketing tool such as Mailchimp or Constant Contact.
- When the help desk investigates a user issue and discovers an application defect, the defect is added to the agile development team’s backlog.
- When one of your competitors publishes a new blog post, capture the title, URL, and publishing data of the post and add it to a database that stores competitor information.
The common thread is that activity in one platform triggers the need to action data into a second platform. This is a common IFTTT (If This Then That) pattern that is especially important when integrating data and workflow across multiple SaaS and public cloud services.
Many organizations rely on multiple SaaS tools for workflow. It’s common to have one tool such as Jira or Azure DevOps to manage a development team’s backlog, and a separate tool such as ServiceNow to handle help desk tickets. Digital marketers often use a mix of tools for different types of ads, social media, and email campaigns. Many data-driven organizations also try to gather information from public sources such as website RSS feeds, social media feeds, and business information sources.
Event-driven automation, IFTTT platforms simplify common integrations
When the integration fits the simple IFTTT pattern, then event-driven automation platforms such as Zapier, IFTTT, Microsoft Flow, Workato, and Tray.io may offer sufficient integration. These platforms already connect to the APIs from hundreds of SaaS platforms as well as public cloud services, and they enable integrations of growing sophistication.
These platforms all start with selecting the originating platform’s trigger and then the destination platform’s action. For example, the trigger may be a ServiceNow ticket and the action is logging a defect in Jira. At a minimum, these tools offer a way to map data from the trigger to the action’s service. They also provide more sophisticated tools for transforming data fields and filtering which records to action.
What to look for in an IFTTT platform
Here are some considerations when reviewing these platforms. First, have a good understanding of several SaaS and public cloud platforms where you need integration, now or in the future. Second, hypothesize some of the likely integrations based on how SaaS tools and cloud services are used today.
You are then in a position to review the following questions:
- Does the IFTTT platform connect to the SaaS and public cloud services in use? Many IFTTT platforms connect to widely used platforms such as SalesForce and common public cloud services from Amazon, Microsoft, and Google, but chances are you’re using some less common SaaS and cloud services. Before jumping into an IFTTT platform, review the integrations available. You might find one platform has more of the integrations you need.
- Does it support the triggers and data processing required? It’s one thing to have a SaaS connector, but the platform also needs to support the types of necessary integrations. Look for whether the integrations match the SaaS features you’re using, and look at the available parameterizations. Also, consider what kinds of operations on the data are required. For example, if you need to aggregate or join multiple records into a single one, perform complex field transformations, or instantiate data lookups to transform data, then your needs may exceed some IFTTT platform capabilities.
- Does the sophistication of actions match short and longer-term needs? Once you know that the IFTTT platform can process the required triggers, look deeper to see the extent of CRUD (create, read, update, and delete) operations that are available. Review if the actions support batch operations, such as multiple inserts or searches that can update multiple records.
- How easy is it to collaborate with a larger team? If you are the only one in the organization working on these integrations, then collaboration, versioning, or sharing integrations may not be a concern. However, if multiple people will have access and develop different types of integrations, then reviewing the collaboration, version control, sharing, reuse, and security controls is essential.
- Does the platform meet compliance requirements? Compliance, privacy, and data security are crucial considerations if you intend to use the platform to process PII, HIPAA, or any other data sets that have requirements around data governance.
- How easy is it to test, monitor, and recover a transaction? It’s one thing to build integrations; it’s a wholly separate consideration to support them. If a transaction fails, will you be alerted? Can you fix the problem and then rerun the operation on the failed record? Will it alert you if there’s a burst of unusual activity?
- Will higher transaction volumes drive up costs? Many of these platforms make it easy to get started and offer free and low-cost options for a limited number of transactions. If you’re planning on using the platform for higher volumes, then costs may be a deciding factor.
Should I build to the API?
You might think that developing to SaaS platforms’ APIs without an IFTTT platform is a better answer. If you have very few SaaS platforms and cloud APIs to integrate, then developing the integration may be an option. However, I suggest that developers do so with caution. Although it may be easy to code the integration, it’s a lot more work to develop the capabilities to monitor and recover from failures.
Failures are common when integrating SaaS platforms because one service may be unavailable or may be experiencing slow performance at the time of a transaction. Also, if your field transformations are not robust, and an action processes unexpected data, it might result in failed transactions that require corrections.
IFTTT platforms are getting more sophisticated. Even if the types of transformations you need aren’t available today, it’s possible they are part of the platform’s roadmap and will be feasible in the future.