Kompozy has no inbound webhook. Route CRM, Stripe or GitHub events through Zapier into an RSS feed it polls, and send blog posts out by signed webhook.
Published 2026-05-19 · Updated
Short answer
A webhook content pipeline turns a business event, such as a closed CRM deal, a Stripe milestone or a GitHub release, into a draft in your voice. Kompozy has no inbound webhook endpoint, so the event goes to Zapier first, which writes it as an item in an RSS feed that Kompozy polls every 15 minutes by default. Going the other way, Kompozy can send finished blog posts to your endpoint as a signed webhook.
Key takeaways
RSS and Gmail each cover one shape of trigger: a feed updating, an email being forwarded. Webhooks cover everything else — every event in your business that could justify a piece of content but does not arrive as a feed or an email. Closed a deal worth a case study? An event fired somewhere. Shipped a release? Hit a revenue milestone? A customer crossed a usage threshold? Each of those is an event your systems already emit, and each is a content trigger you are currently ignoring because nobody is sitting in the CRM waiting to write a post.
Kompozy has no inbound webhook endpoint. Its automatic input is the RSS source, which it polls on a schedule, so the working pattern puts a glue tool in the middle. The source system fires a webhook at Zapier (or a similar tool), the glue step writes the fields worth turning into content as an item in an RSS feed, and Kompozy picks that item up and drafts from it in your Persona Brief's voice. Going the other way, Kompozy can push finished blog posts to your own endpoint as a signed webhook. The plumbing still has plenty of ways to go wrong: retry storms, leaked secrets, rate spikes. This guide is the honest version: the pattern, the four wiring options, the payload discipline that keeps it safe, and why event-sourced content still needs a human fact check like everything else. Pairs with apify-scraping-to-content for the scraper source and gmail-to-content for the inbox source.
Webhooks are the general case. They catch the events that are not a feed, an inbox or a file. Kompozy's built-in inputs are narrower than that: the RSS source polls feeds, in-app uploads cover files, the Brand Prompt lane generates from your Persona Brief with no source, and the email-forwarding source is still pending provider setup. There is no inbound webhook, so in Kompozy an event arrives as a feed item. Anything that can be expressed as "when X happens in some system, make content about it" is a webhook trigger, because almost every modern tool can fire an HTTP POST when something happens inside it.
Mechanically, a webhook is an HTTP request carrying a JSON payload. Once the glue step has turned the fields you chose into a feed item, Kompozy treats it like any other RSS item: it becomes raw_content, Claude transforms it against your Persona Brief into a draft, the draft waits for approval or, with Auto-Publish Generated on, is approved automatically, then the scheduler, then publish. The webhook does not get a fast lane; it is a source like any other, and event-sourced data needs the same scrutiny as feed-sourced or scraped data. What makes webhooks distinctive is not the downstream pipeline, which is shared; it is the breadth of what can trigger them and the plumbing discipline that breadth demands.
That framing matters because the failure modes specific to webhooks all live in the ingest layer — the part before raw_content — not in generation. Get the trigger, the payload, and the idempotency right and the rest of the pipeline behaves exactly as it does for RSS. Get them wrong and you get duplicate posts, leaked customer data, or a queue overflowing during a traffic spike. The sections below are mostly about getting the ingest layer right. See autopilot-explained for how an event source rides the autopilot loop.
The end-to-end setup is four decisions and a configuration. Walk them in order:
The single most important configuration choice is which fields you map. A webhook payload typically carries far more than you want to generate from — internal IDs, system metadata, secrets, customer PII. Mapping only the content-relevant fields is both a quality decision (the model generates from signal, not noise) and a safety decision (secrets and PII never reach generation if you never map them). The payload discipline section below treats this as the load-bearing control it is.
Zapier is the easiest of the four ways to turn an event into a feed item Kompozy can poll, especially for non-technical operators. Whichever you pick, the last step has to produce an RSS feed, because that is the only way an event reaches Kompozy. The options trade ease of setup against cost and control. The right one depends on how technical your team is and how much middleware tax you are willing to pay:
| Wiring option | Best for | Pricing | Trade-off |
|---|---|---|---|
| Zapier | Non-technical operators, fast setup | Tiered by task count | Per-task billing gets costly at high event volume |
| Make | Value at moderate complexity | Usage-based | Complex scenarios cost more per event |
| n8n | Technical teams, custom transforms | Self-host or paid cloud | You own the infra (or pay for managed cloud) |
| Your own RSS feed | Your own software as the source | No middleware cost | You own and maintain the integration code |
A note on choosing: the glue tools earn their cost when the source is a third-party app you cannot modify, because they handle the auth and the polling for you. Once the source is your own code, publishing your own feed is cheaper and cleaner, because you skip the middleware and write exactly the items you want. Many setups end up mixed: glue for the SaaS sources, a home-grown feed for the in-house ones.
The events that land mark a moment that is genuinely interesting to your audience, not just to your operations team. The pattern is only worth the plumbing if the content gets read. The high-yield patterns:
The connective tissue across these is that the event is a fact ("a deal closed," "a release shipped") and the content is your interpretation of it, written in your voice. The pipeline is not inventing the milestone; it is dressing a real event in your brand and shipping it fast. That is the legitimate core of event-driven content.
Three controls are non-negotiable: idempotency, secret handling, and rate limits. The webhook-specific failure modes all live in how the payload is handled at ingest, and skipping any one control produces a specific, predictable failure:
A fourth control is operational rather than per-payload: build a daily reconciliation job. CRMs and other sources occasionally fail to fire a webhook at all, silently. A job that compares "events that should have fired today" (deals closed today) against "content generated today" catches the silent misses that no error log will show you, because a webhook that never fired leaves no trace on your side. This is the same reconciliation discipline that catches dropped feed items in RSS — events that do not arrive are invisible until you go looking for the gap.
| Failure mode | What it looks like | The control | Where it lives |
|---|---|---|---|
| Retry storm | Same post published repeatedly | Dedup on unique event id | Feed item GUID + glue-step dedup |
| Leaked secret / PII | API key or customer data in generated text | Allow-list field mapping | Glue-step field mapping |
| Rate spike | Queue overflow, flood of low-value posts | Hard cap of N events/minute | Glue-step throttle + max items per poll |
| Silent source failure | Event never fired, no error anywhere | Daily reconciliation job | Scheduled audit |
Event payloads often carry fields you did not author, so data from your own systems is not automatically trustworthy. A CRM "win reason" is a sales rep's free-text note. A Slack wins-channel message is whatever someone typed. A customer testimonial pulled from a support thread is the customer's words, possibly with claims you cannot verify. When the pipeline generates content from those fields, the same hallucination and contamination risks apply as with any other source.
Kompozy tells the model not to invent figures, dates or sources for every source, event data included, but it does not check the draft against the payload afterward, so an invented stat is not rejected automatically. If the payload itself carried an unverified claim — a rep's optimistic "saved them 40% on costs" note — the draft can repeat it faithfully, and nothing confirms the number is true, the same contamination gap that scraped sources have. Event-sourced numerics from free-text fields warrant the same human spot-check as scraped ones. Structured, system-generated fields (a Stripe amount, a customer count) are trustworthy; free-text human-entered fields are not. A reviewer pass on every number, free-text claims above all, is the safe configuration. What Kompozy does and does not check is in fact-anchor-gate.
The wiring is the quick part. The durable engineering work is idempotency, allow-list field mapping and the daily reconciliation job, because those controls stop retries, leaks and silent misses from piling up. Teams that treat the wiring as the whole job ship a pipeline that double-publishes on the first retry storm.
Webhooks push and RSS feeds are polled. Because Kompozy only polls, an event routed through a feed waits for the next poll, every 15 minutes by default. Time to publish still depends on your review window.
Yes, for blog posts. Kompozy's Custom Webhook blog destination sends each published blog article to an HTTPS endpoint you own as a JSON POST with the event name blog.publish, carrying the title, slug, markdown, HTML, excerpt, tags and hero image. If you set a shared secret, the request carries an X-BKE-Signature header with an HMAC-SHA256 of the body, so your receiver can confirm the post came from Kompozy. A test button in Settings sends a sample payload and reports whether your endpoint answered with a 2xx. Social posts go out through Kompozy's platform connections, not through this webhook.
Webhooks are the right source for discrete business events and the wrong source for several adjacent jobs. The boundaries:
When a business event, not a feed or an email, should trigger the content. Any event your systems already emit can become a piece of content in your voice. Wiring each source is quick, but the durable work is the ingest-layer discipline — idempotency so retries do not double-publish, allow-list field mapping so secrets and PII never reach generation, a rate cap so spikes do not flood the queue, and a reconciliation job so silent misses surface. Event data is not automatically trustworthy, so give every number a human check, free-text claims above all. Wire the events that mark interesting moments, keep the plumbing clean, and the webhook source turns your business's own activity into a steady content engine. Start with pricing to size the content-engine tier, and see apify-scraping-to-content for scraped data, which reaches Kompozy the same way, through a feed.
A photo post generated in the Kompozy workspace, the kind of asset a customer-win or release event can become.

Best for:
Not ideal for:
No. Kompozy's automatic input is its RSS source. To get an event in, send it to a tool like Zapier and have that tool write the event as an item in an RSS feed Kompozy polls.
In Zapier, start with the app's own trigger or a Webhooks by Zapier Catch Hook, then add an RSS by Zapier Create Item in Feed step with a title, link and description. Add that feed's URL as an RSS source in Kompozy.
Kompozy skips feed items it has already stored, matched on each item's GUID, ID or link. Build that value from a unique event ID, such as a Stripe charge ID, so a retried event lands as the same item.
Map only the fields you want written about into the feed item. Anything you never map never reaches Kompozy or the model.
Yes, for blog posts. The Custom Webhook blog destination POSTs each published blog article to your HTTPS endpoint as JSON, with an X-BKE-Signature HMAC header when you set a shared secret.
A webhook fires when the event happens, while RSS is polled on an interval. In Kompozy, an event routed through a feed waits for the next poll, every 15 minutes by default.
On 2026-10-23 we checked Kompozy's API routes and workers. There is no inbound content webhook, the RSS source is polled every 15 minutes by default and skips items it has already stored, and the Custom Webhook blog destination sends HMAC-signed POSTs. We checked Zapier's Catch Hook and RSS by Zapier steps on zapier.com the same day and removed connector prices we did not confirm.
Sources