How MailChimp and Wicket fell in love: A case study on how modern software works together
Here at Wicket, we’re strong believers that smaller is better when it comes to software. The web has created a new category of software tools – driven by the standardization of web services – that can connect to each other through powerful API’s. Such software are small and targeted: focus on one core raison d’être, and do it very, very well.
Wicket follows this approach: it’s a membership data management platform, built using an approach called “API-first.”
So too does MailChimp: MailChimp is the most powerful email distribution platform in the world. It doesn’t try to be anything more than that and geez, it does it really well.
And so began one of the most epic love stories in the history of modern software. But first, let’s set the stage.
What’s an API?
In the web – the term “web services” and “API” are often used interchangeably. In the simplest of terms, an API allows software applications to “talk” to each other, passing data back and forth. If you’re looking for a formal definition:
Application programming interface (API) is a set of routines, protocols, and tools for building software applications. An API specifies how software components should interact. Additionally, APIs are used when programming graphical user interface (GUI) components. A good API makes it easier to develop a program by providing all the building blocks. A programmer then puts the blocks together. Source: Webopedia
Some software is built as an API… this is known as an API-first software development methodology. In this scenario, the API is a first-class citizen, and the user interface (what you interact with) is built on top of the API. API-first is generally concerned the best way to build modern software. You can read more about the API-first methodology in this article on Quora. Older software applications, that weren’t build using the API-first methodology, often will bolt on an API later, creating what is considered an “artificial API.” While not ideal, this is better than having no API at all.
What does an API look like?
API’s are hard to see. They’re built for developers first and foremost, to facilitate the programmatic connection of software applications. API’s are defined as an endpoint: essentially a web address that can be called by another software application, with clearly defined parameters that can be received, and a definition of what is returned.
Why is all this important?
In 2017, you shouldn’t use any single piece of software that isn’t capable of connecting to other software to share its data. As you evaluate potential software for your organization, evaluating its API-readiness should be one of the most important considerations.
Tell me more about Wicket
Wicket is a web-based software application for storing membership data. It’s built using an API-first methodology, with a goal of freeing your core membership data to interact with other software applications that you choose to use within your organization.
Wicket’s high-level features include:
- An API-first approach, meaning your membership data can talk to any other software application
- A slick, easy-to-use administrative panel for managing your data
- The ability to do online transactions for membership
- A single sign-on (SSO) utility to allow you to use Wicket as the single source of logins for your users
- Integrations with other modern web-based software applications like Drupal, WordPress, MailChimp, Eventbrite, Shopify and Litmos.
Wicket is being built with direct input from member-driven organizations. If you’d like to get involved with Wicket, get in touch.
MailChimp does what?
MailChimp is a marketing and communications tool for delivering email campaigns to large groups of people. If you work in the marcom field, you’re most likely familiar with it, or a similar product like Constant Contact.
MailChimp is considered by most to be the industry-standard tool for getting email communication out to large groups of people. It has a great user interface, is very easy to use, has a powerful template engine, gives great metrics, and has a powerful API for integration with other software.
The product can be divided into a few key functional areas:
- Campaigns A campaign is the term MailChimp uses for an email that is delivered to a group of subscribers. A campaign is based on an email Template, and sent to a List of subscribers.
- Templates A template is an email design and layout that you’ve set up ahead of time. MailChimp comes with dozens of prebuilt templates, and it has a very easy to use interface for creating, modifying, and refining email templates.
- Lists Lists are where email addresses are stored. Your subscribers join various Lists, and you can send your Campaign emails to a List, or a Segment of a List. Segmentation is perhaps the most powerful feature of MailChimp…. more on that later.
- Reports MailChimp gives you in depth insights into the success of your email campaigns. Measure delivery rates, open rates, click rates, and so much more.
MailChimp’s powerful feature set combined with ease of use has made it the industry leader. It’s also loved by web developers like us… it has a very powerful API that is makes available for integration with other applications.
When Wicket and MailChimp’s API’s met, it was love at first sight.
Making a connection
API’s use something called a “key” to connect to each other. An API key is an alphanumeric string that is registered by the software and made available to other applications in order to communicate.
A typical API key would look something like this:
In order to connect MailChimp to Wicket, an API key is generated in MailChimp, and configured within Wicket. With that in place, Wicket can now send data to the MailChimp account associated with the API key.
With the API facilitating the sending of data from Wicket to MailChimp, we have to consider how to get MailChimp to send data to Wicket based on activities. To do this, a powerful tool called Webhooks is configured in MailChimp.
The screen above shows the MailChimp Webhooks configuration screen. Webhooks are configured on a list-by-list basis, and fire a request to the Wicket API based on specific actions that occur in MailChimp. Examples of such actions include: a new user subscription, an email campaign send, a user changing their email address, to name a few.
With the API connection in place, and Webhooks configured, we now have two software applications that are deeply connected.
What does this integration give us?
So many things! By connecting Wicket and MailChimp, we are creating a real-time synchronization between these two great software applications. More specifically:
- When a new Person is added to Wicket, they are also automatically added to MailChimp.
- When a Person’s name or email address is updated in Wicket, it is automatically updated in MailChimp.
- When a Person modifies their name or email address in MailChimp, it updates it in Wicket.
- When a Person changes their subscription settings – or unsubscribes – in MailChimp, Wicket is updated accordingly.
- Any number of fields from Wicket – such as membership category, membership year, postal code, education information – can be configured to synchronize in real time with MailChimp.
- When a campaign is sent in MailChimp, a Touchpoint is written to the Person in Wicket to track member engagement.
Why is this so awesome?
The integration between MailChimp and Wicket is a great example of how modern software can work together.
- You only have to update your data once, and it is updated in all the connected software applications.
- Your staff get to use the best software in the world to meet their needs, maintaining connectivity with your core membership data, without sacrificing functionality.
- In the case of MailChimp, you can synchronize key data from Wicket, providing robust segmentation for targeted marketing campaigns.
- E.g. Send an email campaign to all members in Membership Category A, in Toronto (based on Postal Code), between the ages of 25-40, who have not yet renewed for the the upcoming membership year, who received our last email campaign but didn’t click on the link in it.
- You empower your organization with flexibility in its software choices.
We modern software here at Wicket, and it’s why we love software like MailChimp. In 2017, the best software in the world is small and focused. It does one core thing, and does it very well.
As a member-driven organization, as you evaluate software, think small, and think about connectivity. The end result is flexibility in decision making, satisfied staff empowered to use great software, and connected data to inform strategic decisions.