How do I connect Zapier or Make to VeloCMS?
Generate a scoped API key, subscribe a webhook to any event in the catalog — new post, new order, new gift card, and more — and Zapier or Make picks it up within seconds, no code required.
Connecting VeloCMS to Zapier or Make takes two steps: grab an API key from Admin → Settings → API Keys, and register a webhook subscription pointed at whichever automation platform you're using. From there VeloCMS pushes a signed JSON payload to your endpoint the moment the event happens — no polling delay, no middleman service. Both Zapier and Make work today through their own built-in generic connectors, before any VeloCMS-branded app exists in either directory.
Which events can trigger a webhook?
There are twenty events in the catalog, grouped by what they touch: content (post.published, post.updated, page.published), members (member.subscribed, member.tier_changed, member.unsubscribed), commerce (order.paid, order.refunded, order.shipped, product.created, gift_card.issued), comments, and media uploads. Pick as many as you need on a single subscription — post.published is the one most people reach for first, since it drives social-sharing automations, but order.paid and gift_card.issued are just as popular for creators running a shop. The full list with payload shapes lives at /developers/zapier and, if you want the machine-readable version, at /api/v1/asyncapi.json.
How do I generate the API key I'll need?
Open Admin → Settings → API Keys, click New Key, give it a name, and tick the webhooks:read and webhooks:write scopes (add posts:write or members:write too if you plan to have Zapier create content back in VeloCMS). The plaintext key is shown exactly once — copy it somewhere safe before closing the dialog, since VeloCMS never displays it again. Webhook subscriptions are a Pro-plan feature, so this step is gated behind an active Pro (or higher) subscription.
How do I set up a Zapier zap for new posts?
In Zapier, create a new zap and choose Webhooks by Zapier as the trigger, then Catch Hook as the event. Zapier hands you a unique URL — that's what you register with VeloCMS. Call VeloCMS's subscribe endpoint with your API key as a Bearer token, your Zapier URL, and the event you want (post.published, in this case); the full curl example is on the /developers/zapier reference page. Back in Zapier, hit Test Trigger and publish a test post — or just call the test-fire endpoint VeloCMS gives you, which sends a synthetic ping using the exact same signing as a real delivery. Once Zapier captures that payload, wire up whatever comes next: a Slack post, a row in Google Sheets, a tweet.
How do I set up a Make scenario instead?
Make is actually the faster path here, because its generic HTTP and Webhooks modules need zero app registration. Add a Webhooks module to your scenario, copy the URL it generates, and register it with VeloCMS the same way you would a Zapier hook. Admin → Settings → API Keys has a one-click copy button that pre-fills a subscribe command with your blog's own base URL, so you're mostly just pasting in the Make webhook URL and your event. n8n users follow the identical pattern — add a Webhook trigger node, copy its production URL, register it — since none of this cares which platform is on the receiving end.
What if I want to test before I've wired anything real?
Two options, and you don't need to publish real content for either. First, every subscription has a built-in test-fire call that sends a test.ping event to your URL immediately, HMAC-signed exactly like production traffic. Second, there's a polling endpoint (/api/v1/webhooks/events) that reads back the last 100 deliveries for a given event — handy for Zapier's own "Test" step, or for a Make scenario that polls instead of catching a live hook. Neither one requires you to touch your actual blog content.
Are webhook deliveries reliable and do they retry on failure?
Yes — every delivery attempt is logged before VeloCMS even tries the HTTP call, so nothing is silently dropped. If your endpoint doesn't return a 2xx status, VeloCMS retries on a widening schedule: five minutes, thirty minutes, two hours, six hours, then twenty-four hours — six attempts total. After all six fail, the subscription is automatically disabled and you get an email so you're never guessing why events stopped arriving. You can review every attempt, including the HTTP status and response, from the same API Keys settings page.
Your API key and your webhook secret are both bearer credentials — treat them like passwords. Never commit them to a public repo or paste them into a screenshot. If either leaks, revoke the key from Admin → Settings → API Keys and generate a fresh one; existing Zaps or scenarios will need the new key.