# Posthook

> Posthook is a managed webhook scheduling API for developers to reliably schedule reminders, follow-ups, expirations, and notifications at precise future times.

Posthook is a managed webhook scheduling service built and run by Carlos Gomez, a backend engineer who started the product in 2018 after needing reliable per-event scheduling for a social events app. It has been in continuous production since then, with the site reporting 99.98% uptime and over 98 million hooks scheduled to date.

## What It Is

Posthook is a scheduling-as-a-service API that lets developers schedule HTTP callbacks (webhooks) to fire at a specific future time — relative delays, absolute UTC timestamps, or local times with timezone awareness. Rather than building and maintaining cron pollers, timestamp columns, or queue-backed job systems, developers make a single API call to schedule a hook, and Posthook handles delivery, retries, observability, and alerting. It is intentionally narrow: it is not a full workflow orchestration engine or general background job platform, but a focused tool for the "do this later, reliably" problem.

## How the Scheduling Model Works

Posthook accepts three scheduling modes per hook:
- **Relative delay** (`postIn`): fire in `30m`, `24h`, `7d`, etc.
- **Absolute UTC** (`postAt`): RFC 3339 timestamp
- **Local time with timezone** (`postAtLocal` + `timezone`): DST-safe, handles spring-forward and fall-back automatically

When the scheduled time arrives, Posthook POSTs a signed (HMAC-SHA256) payload to the developer's configured endpoint. Handlers can return a 202 and call back with ack/nack up to 3 hours later for long-running async jobs. Retries use fixed or exponential backoff with jitter and do not count against the monthly quota.

## Observability and Alerting

Every hook delivery is captured and queryable — scheduling, attempts, response bodies, and cancellations — with retention from 7 to 90 days depending on plan. The dashboard supports per-delivery drill-down, health aggregation by endpoint, and bulk retry or replay by endpoint and time range. Anomaly alerting uses per-endpoint baselines learned from actual traffic, with alert speeds ranging from 15 minutes down to 30 seconds, routed to email, Slack, or webhook.

## Developer Tooling and Integrations

Posthook ships official SDKs for Node.js/TypeScript, Python, and Go. The Node SDK (MIT-licensed, v1.2.0 as of March 2026) handles auth, pagination, retries, signature verification, and WebSocket delivery. A CLI enables local development by receiving webhooks on localhost via WebSocket — the same transport works for endpoints behind VPCs or firewalls. Config-as-code via TOML (`posthook.toml`) lets teams manage recurring schedules in version control and deploy with `npx posthook apply`. Framework guides cover Next.js, Express, FastAPI/Flask/Django, Go, and Rails.

## Update: Node SDK v1.2.0

The Node.js SDK reached v1.2.0 in March 2026, adding WebSocket listener support (`listen` and `stream` APIs), an Express handler helper (`signatures.expressHandler`), async hook support with `ack`/`nack` callbacks, bulk retry/replay/cancel operations, and full TypeScript generics for typed payloads. The SDK requires Node.js 18+ and has a single runtime dependency (`ws`).

## Architecture and Reliability

Posthook runs on Kubernetes across multiple availability zones with PostgreSQL using synchronous replication and automatic failover, and Pub/Sub with no single-zone dependency. Every hook is committed to a durable message queue before the API returns. The service has maintained 99.98% uptime since 2018 per its public uptime monitor. Payments are processed via Stripe; a Data Processing Agreement (DPA) is available for compliance needs.

## Features
- Webhook scheduling via API (relative delay, absolute UTC, local timezone)
- HMAC-SHA256 signed deliveries with replay protection
- Async hooks with ack/nack callbacks up to 3 hours
- Per-endpoint anomaly alerting with learned baselines
- Bulk retry, replay, and cancel by endpoint and time range
- 7–90 day delivery log retention with per-hook drill-down
- Timezone-aware scheduling with automatic DST handling
- Fixed and exponential backoff retries with jitter
- Config-as-code recurring schedules via TOML
- WebSocket delivery for endpoints behind VPCs or firewalls
- CLI for local development webhook testing
- Multi-project workspaces with separate keys and alerting
- Official SDKs for Node.js/TypeScript, Python, and Go
- Per-hook retry override
- Idempotent delivery with hook ID as idempotency key

## Integrations
Node.js, TypeScript, Python, Go, Next.js, Express, Fastify, Django, Flask, FastAPI, Rails, Laravel, Spring, AWS Lambda, Slack, Stripe, Vercel, Netlify, Cloudflare

## Platforms
API, CLI, DEVELOPER_SDK, WEB

## Pricing
Freemium — Free tier available with paid upgrades

## Version
v1.2.0

## Links
- Website: https://posthook.io
- Documentation: https://docs.posthook.io/
- Repository: https://github.com/posthook/posthook-node
- EveryDev.ai: https://www.everydev.ai/tools/posthook
