Introduction

Learn what Nahook is and how it works

Nahook is a webhook delivery platform that handles the complexity of reliably delivering events to your endpoints. You send events — Nahook delivers them with automatic retries, signature verification, and delivery logging.

Key Concepts

Environments

Isolate your webhook infrastructure across stages like Production, Staging, and Development. API keys, endpoints, and event routing are all scoped per environment.

Endpoints

HTTP URLs or Slack channels where events are delivered. Each webhook endpoint gets a unique signing secret for verification.

Event Types

Named categories like order.created or payment.failed. Subscribe endpoints to specific event types for targeted routing. Control visibility per environment.

Deliveries

Each event sent to an endpoint creates a delivery. Nahook tracks every attempt, status code, and response for full observability.

Subscriptions

Connect endpoints to event types. When an event of that type is ingested, Nahook fans out delivery to all subscribed endpoints in the same environment.

How It Works

  1. Set up an environment — Every workspace starts with a Production environment. Add Staging or Development as needed.
  2. Create an endpoint — Register the URL where you want to receive events, scoped to an environment.
  3. Get an API key — Create an API key for the same environment to authenticate ingestion requests.
  4. Send events — POST event payloads to Nahook's ingestion API.
  5. Nahook delivers — Events are routed to endpoints in the matching environment, signed, delivered, and automatically retried on failure.

Nahook supports two delivery modes:

  • Direct delivery — Send an event to a specific endpoint by ID.
  • Fan-out delivery — Send an event by type, and Nahook routes it to all subscribed endpoints.

Endpoint Types

TypeDescriptionSigning
WebhookHTTP POST to any URLHMAC-SHA256 with Standard Webhooks headers
SlackPost to a Slack channel via Incoming WebhookNo signing (Slack handles auth)

Retry Strategy

Failed deliveries are retried automatically with exponential backoff:

  • Hot retries: 3 attempts within ~20 seconds (immediate, 5s, 15s)
  • Cold retries: 5 attempts over 24 hours (5min, 30min, 2h, 6h, 24h)
  • Total: Up to 8 delivery attempts before moving to the dead letter queue

Next Steps