Today we launched a very handy new feature making it easy to keep your Campaign Monitor lists synced with, well, anything. Using the awesome power of Webhooks, Campaign Monitor can now let any third party know the moment a change happens to your subscribers.
For a quick primer on the concept of Webhooks, this wiki is a great place to start. The idea is actually pretty simple. You tell us what you’d like to be notified about and where we should send that update when it happens. For example, let’s say you have a CRM system that relies on having accurate email addresses for your customers. You can set up a webhook that automatically updates your CRM system whenever a subscriber hard bounces or changes their email address via your preference center.
The beautiful thing about this is that it’s always real-time. The moment something happens on our end, we’ll let you know so you can always be confident your data is up to date.
Right now you can create three types of webhooks for each list in your account. These are all administered via the API, and we’ll likely add the ability to manage them via your account for those less comfortable working with the API in the future. Today, these 3 types of webhooks are available:
Whenever someone is added to your list, we can keep you in the loop. This includes joining via a subscribe form, via the API, you manually adding them or importing them from a file, and more. Basically, no matter how they get added, we’ll let you know about it.
While it’s great to keep track of subscribers when they are added or removed from your list, it’s also important to keep up with any updates to a subscriber’s details over time. They might update their interests, their postal address or change an email address. We’ll keep you covered for updates you make to a subscriber via the API, any changes they make via your preference center as well as when existing subscribers are re-imported with updated details via a list import.
There are lots of ways an active subscriber of yours can enter an “inactive” state that you’d want to know about. They might unsubscirbe from your latest newsletter, their address might hard bounce because it’s no longer in use, they might mark your email as spam at their ISP. This webhook ensures you’re informed if any of your subscribers drop off the radar so you can take the appropriate action.
Using batching to lighten your load
Because of the nature of some events, such as importing a large list, we’ve introduced batching so we don’t overload the address you set for these notifications. We’ll batch up larger calls into a maximum of 1,000 events each and space them 10 seconds apart so you have time to process everything at your end.
For example, lets say you import 5,652 new subscribers into a list. Instead of making 5,652 individual HTTP POST’s to the URL you set up for that webhook, we’ll make 6 over 60 seconds. The first 5 would include 1,000 of the new subscribers, and the 6th would include the final 652.
Right now all webhooks are maintained via the API. We’ve put together plenty of documentation on how to get started. You can easily add, delete, activate, deactivate and test webhooks with a single call. If you’re already familiar with our new API you should be able to dive right in.
We’re really happy to get this one out and are looking forward to seeing what sort of syncing solutions you all come up with. This really is the first step of many we plan to make in this area. We’d love to hear any feedback you guys have about webhooks and the easiest ways to keep your Campaign Monitor lists in sync with your favorite tools.