Ghost <-> Zapier Integration
The app is built using “Zapier Platform CLI”. An introductory guide into building and maintaining such apps is available here.
Quick command reference to get started with development:
# install the CLI globally
yarn global add zapier-platform-cli
# setup auth to Zapier's platform with a deploy key
zapier login
# setup dependencies
yarn
zapier test
All Zapier CLI apps are run using Node.js >=14.x. More details are available in the requirements doc.
Notes:
.nvmrc
file in this project if you have nvm
auto-switching enabledZapier checks the version of Ghost when authenticating to ensure that the API supports the required webhooks endpoints and other features. This is done by fetching the /ghost/api/v2/admin/site/
endpoint.
When a new major version of Ghost is released the supported version string must be updated!
zapier test
will run the testszapier test --debug
will test and output request and response logsThere are couple usecases where you would need to do a deploy:
package.json
(do not commit)zapier push
Tips:
zapier migrate 2.4.0 2.4.1 --user=user@example.com
. Check if the migrations completed through zapier history
.package.json
CHANGELOG.md
git commit -m "2.4.0"
git tag 2.4.0
git push upstream main --tags
zapier push
zapier promote {newVersion}
- only new integrations will use this versionzapier migrate {oldVersion} {newVersion} {percentage}
, eg: zapier migrate 2.3.1 2.4.0 10
, move 10% of users between versions (recommended to do gradual rollout and monitor for errors before migrating 100% to a new version)zapier history
to check migration status, continue once 100% completeFull Zapier reference for deploying a new version.
Before releasing a new version a common thing to do is checking if the changes work in production-like environment. Follow these steps to debug Zapier requests on a local Ghost instance:
ngrok
to do so by running: ngrok http http://localhost:2368
Ghost
and select the private version under test.https://8a4e-101-128-86-58.ngrok.io
if ngrok was used.To trigger configured above Zap use your local Ghost instance as usual and the Zaps should start getting triggered as expected. If you don’t see any comming through check out Zapier’s error dashboard to debug the problem.
Copyright (c) 2013-2025 Ghost Foundation - Released under the MIT license.