Today, I dodged $20-a-month bullet by replacing Zapier with Pipedream. For those unfamiliar with these types of apps, Zapier is a user-friendly automation service that allows you daisy-chain all kinds of online apps and services together without needing to code. For example, I use Zapier to automate posting new blog articles to Facebook and Twitter. I have another Zap that pushes new members automatically to my MailerLite account for my newsletter.
For several reasons I’ve decided to move away from MailerLite and use Ghost’s integrated newsletter system instead. In doing so, I now need to overhaul the way I automate certain tasks. Thankfully, Ghost makes that easy with the ability to create Webhooks that are triggered when certain events occur, i.e., when a new member signs up.
Zapier allows you to create 5 simple zaps (automation workflows) free. However, delving into the guts of Ghost’s API to achieve what I wanted, meant I had to add some conditional logic to my Zap. Unfortunately, that creating using a multi-step Zap with filters, and Zapier only makes those available to their Starter plan and above. Jumping from $0 to $19.99 a month is a bit rich for my blood.
Enter Pipedream, a service that began life as a testing tool for developers wanting to throw payloads at an HTTP endpoint without having to stand up a PHP script on a web server. I discovered Pipedream through my day job as a technical writer and developer. My initial plan was to create a PHP page and deploy it on DigitalOcean, using Pipedream just for testing purposes, so I could analyse the payload sent by Ghost.
Well, to my surprise, Pipedream does everything Zapier does, and a hell of a lot more — for a fraction of the cost. Like so many developer-oriented tools, the free tier is incredibly generous, providing unlimited apps, event sources and workflows, with 10,000 invocations a month. In Zapier parlance, that’s unlimited, multi-step zaps, with custom logic.
However, Pipedream isn’t as user-friendly as Zapier — far from it. Where Zapier does its best to abstract away the complexity of APIs, JSON responses and code, Pipedream embraces them. Even so, Pipedream does take the tedium out of connecting services and provides about 400 ready-to-use integrations. Ghost isn’t one of them, so I had to create an HTTP trigger, which provides an endpoint I could then use with Ghost’s Webhook facility. Now when Ghost registers an event, in my case, Member Updated, it sends the data to Pipedream’s endpoint.
After receiving the payload from Ghost, you can use it in your workflow by adding additional steps. In a simple workflow you can pass it to an email, or app (more on this in a moment), with all or part of the payload using variables.
As noted, Pipedream provides integration with over 400 apps and services. At first, I thought of emailing the message to myself, but realised Slack was an option. I recently created a Slack workspace for Scriptorium, so I decided less clutter in my inbox was a good thing and wired up slack instead. I saved and deployed the workflow, tested it from Ghost by updating one of my dummy accounts, and seconds later the message popped up in my designated Slack channel.
I’ll admit I did a dance of victory when I wired everything up. Not only did Pipedream let me create the workflow I needed, but doing so means I don’t have to stand up a web server and write everything in PHP. Nor, for that matter, do I have to pay Zapier a cent — much less $20 a month.
Pipedream straddles the divide between scratch coding and the pre-canned solutions offered by the likes of Zapier and IFTTT. For me, as a time-challenged developer who's too much of a tight-arse to throw money at every problem, Pipedream is perfect.