Webhooks-as-a-Service

Webhook infrastructure for your platform

Define your event types, publish events via API, and let Zyphr handle delivery, retries, monitoring, and an embeddable portal for your customers.

Custom Event Types

Define your own event types like order.created or invoice.paid. Organize by category with example payloads.

One API Call to Publish

Publish an event and Zyphr fans it out to all subscribed endpoints. Batch publish up to 100 events at once.

Automatic Retries

Configurable retry policies with exponential backoff. Circuit breakers prevent overwhelming failing endpoints.

Delivery Logs

Full request/response capture for every delivery attempt. Filter by tenant, event type, or status.

Embeddable Portal

Drop-in React component or iFrame lets your customers manage their own endpoints and view delivery logs.

HMAC Signatures

Every delivery is signed with HMAC-SHA256 per the Standard Webhooks spec. Zero-downtime secret rotation included.

Publish events in one API call

Use the Zyphr SDK or REST API to publish events. Zyphr automatically fans out to all subscribed endpoints with HMAC signatures and retry handling.

publish-event.ts

TypeScript
import Zyphr from '@zyphr/sdk';

const zyphr = new Zyphr('zy_live_xxx');

// Publish an event to all subscribed endpoints
const { data } = await zyphr.waas.publishEvent(
  'app_abc123',
  {
    event_type: 'order.created',
    tenant_id: 'tenant_xyz',
    data: {
      order_id: 'ord_456',
      total: 149.99,
      currency: 'USD',
    },
  }
);

console.log(data.deliveries_created);
// 3 — delivered to all matching endpoints

How it works

Your platform publishes events to Zyphr. Zyphr matches them to tenant endpoints, signs each delivery with HMAC-SHA256, and handles retries with exponential backoff and circuit breakers.

Your Platform  -->  Zyphr WaaS API  -->  Delivery Queue  -->  Customer Endpoints
                        |                      |
                   Event Types            Retries, Circuit
                   Endpoints              Breakers, DLQ
                   Deliveries             Rate Limiting

Built for multi-tenant platforms

Every endpoint is scoped to a tenant you define. Publish an event for a specific tenant and Zyphr delivers only to their subscribed endpoints. Full isolation, zero leakage.

Per-tenant endpoint isolation

Tenant-scoped delivery logs

Embeddable customer portal

Portal tokens with expiry

// Generate a portal token for your customer
const { token } = await zyphr.waas.generatePortalToken(
  'app_abc123',
  {
    tenant_id: 'tenant_xyz',
    allowed_event_types: ['order.*'],
    expires_in: 3600,
  }
);

// Embed in your React app
<ZyphrWebhookPortal token={token} />

Frequently asked questions

How is this different from Zyphr Webhooks?

Zyphr Webhooks lets you receive events from Zyphr services (email delivered, push failed, etc.). Webhooks-as-a-Service lets you power webhook delivery for your own platform's customers. You define the event types, your customers manage their endpoints.

How does multi-tenant isolation work?

Each endpoint is scoped to a tenant_id you assign. When you publish an event, Zyphr only delivers to endpoints belonging to that tenant. Tenants can only see their own endpoints and delivery logs through the embeddable portal.

What happens when a delivery fails?

Failed deliveries are automatically retried with exponential backoff (default: 6 attempts over 24 hours). If an endpoint fails consistently, the circuit breaker trips to prevent wasting resources. You can retry individual deliveries or bulk-retry from the dashboard.

Can my customers manage their own endpoints?

Yes. Zyphr provides an embeddable portal as a React component or iFrame. Your customers can register endpoints, select event types, view delivery logs, and retry failed deliveries — all within your app.

What are the plan limits?

The free plan includes 1 application, 5 event types, 10 endpoints, and 1,000 events/month. Paid plans scale up to unlimited everything. See the pricing page for full details.

Stop building webhook infrastructure

1,000 events free every month. Ship webhooks to your customers today.

Get Started Free