Features

Built for developers who'd rather ship than maintain infrastructure

Every feature exists to save you time. We handle the plumbing so you can focus on what your data makes possible.

CORE

Change Data Capture

StreamHook taps into your database's native replication stream — PostgreSQL WAL or MongoDB change streams — to capture every INSERT, UPDATE, and DELETE the moment it happens. No polling. No application-level hooks. No missed events.

  • Sub-second event capture latency (p95)
  • Full before/after snapshots for UPDATEs
  • Table and column-level selection
  • Optional initial snapshot (backfill)
  • Automatic replication slot management
{
  "id": "evt_a1b2c3d4e5f6",
  "timestamp": "2026-03-13T10:30:00.123Z",
  "source": {
    "database": "myapp_production",
    "schema": "public",
    "table": "orders"
  },
  "operation": "UPDATE",
  "before": { "status": "pending" },
  "after":  { "status": "shipped" }
}
Attempt 1 1s 200 OK
If that fails...
Retry 1 +5s 503
Retry 2 +30s 503
Retry 3 +2m 200 OK
After 6 retries → Dead Letter Queue
DELIVERY

Reliable Webhook Delivery

Every event is delivered via HTTPS POST with HMAC-SHA256 signing. If your endpoint is down, we retry with exponential backoff up to 6 times over 1 hour. After that, events land in your dead-letter queue where you can inspect and replay them.

  • HMAC-SHA256 payload signing
  • Custom headers (auth tokens, etc.)
  • 6-step exponential backoff (1s → 1hr)
  • Dead-letter queue with manual replay
  • Auto-pause on consecutive failures
  • 10-second webhook timeout per request
OBSERVABILITY

Dashboard & Monitoring

See every event flowing through your system. Real-time delivery metrics, latency percentiles, failure rates, and a searchable event log. Know the health of your data pipeline at a glance — not after an incident.

  • Real-time event stream visualization
  • Delivery success rate & latency charts
  • Searchable event log with filters
  • Per-source and per-destination metrics
  • Email alerts for failures & usage limits
  • One-click event retry from the UI
Events delivered (24h) 48,293
Success rate 99.97%
Avg latency (p95) 340ms
Failed (in DLQ) 3

Last 24 hours delivery success

SECURITY

Secure by default. Not by upgrade.

We know you're trusting us with database access. Every security feature is included on every plan, including Free.

AES-256-GCM Encryption

Database credentials encrypted at rest with AES-256-GCM. Never stored in plaintext. Never exposed in API responses or logs.

HMAC Webhook Signing

Every webhook payload is signed with HMAC-SHA256 using your secret. Verify authenticity before processing.

TLS Everywhere

All connections — to your database, to our API, to your webhook — are encrypted in transit with TLS.

API Key Authentication

Primary and secondary API keys for zero-downtime rotation. Scoped to your account.

Rate Limiting

Built-in rate limiting protects your endpoints and our platform from abuse and runaway loops.

SOC 2 Roadmap

SOC 2 Type I certification is on our roadmap. We build with compliance in mind from day one.

COMPATIBILITY

Works with your database provider

Scroll to see full table →

Provider Status Notes
Supabase Works out of the box
Neon Works out of the box
AWS RDS PostgreSQL Supported Set wal_level=logical via parameter group
Google Cloud SQL Supported Enable via server flags
Azure Database Supported Enable via server parameters
MongoDB Atlas Supported Change streams enabled by default
Self-hosted Supported We provide setup guides
MySQL Coming soon
API

Full REST API

Everything you can do in the dashboard, you can do via API. Automate source creation, manage destinations, query events, and trigger retries programmatically.

View API Reference →
curl -X POST https://api.streamhook.in/v1/sources \
  -H "X-API-Key: sk_live_..." \
  -d '{
    "name": "Production DB",
    "type": "postgresql",
    "connection_uri": "postgres://...",
    "tables": ["orders", "users"]
  }'

See it in action

Connect your first database in under 2 minutes. No credit card required.

No credit card required. Free forever on the Free plan.