Safeguard
Developer Tools•

One webhook endpoint or many? How to split event handlers

Use one endpoint for related events and separate endpoints when teams, risk or scaling differ. Each gets its own secret, URL and failure handling.

Safeguard Security Team
4 min read

Use one endpoint when events are related and one team owns them. Use separate endpoints when owners, risk levels or load differ. Either way, each endpoint needs its own signing secret, signature check and failure alerts, and each should subscribe only to the event types it handles.

What the vendors allow

One payment provider's documentation says you can register and create one endpoint to handle several different event types at the same time, or set up individual endpoints for specific events. It limits you to 16 event destinations. A messaging platform lets you subscribe your app only to the events you want, tied to the OAuth scopes granted at install.

So the choice is yours. Here is how to make it.

Decision guide

QuestionOne endpointSeparate endpoints
Same team owns all events?FitsNot needed
Events differ in sensitivity, for example payments versus marketing?Mixes riskFits
Very different volumes?Slow events block fast onesFits
Need to disable one flow quickly?Hard, all or nothingFits
Small team, few event types?SimpleExtra overhead
Strict vendor endpoint limits?FitsWatch the cap

Reasons to split

  1. Blast radius. If an endpoint is flooded or broken, only its events are affected.
  2. Least privilege in code. A billing handler needs database access to orders. A notification handler does not.
  3. Independent secrets. A leak of one signing secret does not allow forged events at the other.
  4. Independent rotation and disabling. You can pause one without losing the rest.
  5. Clear ownership. Each team runs its own alerts.

Reasons to keep one

  1. Less to monitor. One URL, one certificate, one alert.
  2. Shared parsing and verification code in one place.
  3. Fewer secrets to rotate.

A middle path: one public gateway that verifies signatures, stores events and routes to internal queues by type. You get a single place for verification and separation after it.

Rules whichever you choose

A worked example

Picture a small shop with three event families: payments, shipping updates and marketing sign ups. Payments touch money and need careful ordering, duplicate protection and tight alerts. Shipping updates are frequent but low risk. Marketing events are noisy and low value.

Put payments on their own endpoint with its own secret, its own queue and its own on call alert. Let shipping and marketing share a second endpoint, since the same developer owns both and a delay there costs little. If marketing traffic ever floods the shared endpoint, payments keep flowing. If the payments secret leaks, rotating it does not touch the other flow.

Revisit the split when teams or volumes change. Splitting later is easy if you routed by event type from the start.

Where Safeguard fits

Safeguard's asset discovery can help surface integrations and endpoints you forgot to list, and its policies help set review rules for new ones. Start with a free scan.

Quick check

Is one endpoint per event type too many?

Often. Group related events by team and risk instead, and keep within the vendor's endpoint limit.

Can two endpoints share a signing secret?

Vendors usually issue one per endpoint. Keeping them separate limits what a leak can forge.

Sources

Last reviewed: 19 October 2026.

Never miss an update

Weekly insights on software supply chain security, delivered to your inbox.

Self-healing security runs on Safeguard.

Your first fix PR is minutes away.

No sales call required, even your agent can complete the purchase over MCP.