# Hookdeck Outpost documentation index Everything under /docs/outpost. Outpost is outbound event delivery (webhooks, queues, buses) for your product, with a managed service or self-hosted deployment. Fetch each `.md` URL below for full page text. - [API Reference](/docs/outpost/api.md) ### Getting Started - [Overview](/docs/outpost/overview.md): Outbound webhooks infrastructure for delivering platform events to webhooks, queues, and streams — available managed or self-hosted. - [Concepts](/docs/outpost/concepts.md): Core concepts and architecture of Outpost: tenants, destinations, topics, events, and delivery attempts. - [SDKs](/docs/outpost/sdks.md): An overview of the Outpost SDKs for Go, TypeScript, and Python. - [Quickstarts](/docs/outpost/quickstarts/overview.md): Hookdeck managed Outpost and self-hosted deployment quickstarts. - [Self-Hosting](/docs/outpost/self-hosting/architecture.md): The architecture of Outpost for self-hosted deployments. ### Features - [Multi-Tenancy](/docs/outpost/features/multi-tenancy.md): How Outpost isolates destinations, events, and delivery per tenant in your platform. - [Topics](/docs/outpost/features/topics.md): Categorize events with topics and control which destinations receive which events. - [Destination Filters](/docs/outpost/features/filter.md): Route events to destinations selectively based on event content using flexible filter rules. - [Event Delivery & Retries](/docs/outpost/features/event-delivery.md): How Outpost delivers events, tracks attempts, and retries on failure. - [Operator Events & Alerts](/docs/outpost/features/operator-events.md): Subscribe to lifecycle events from your Outpost deployment for alerting, automation, and auditing. - [Tenant Portal](/docs/outpost/features/tenant-user-portal.md): An embedded self-service portal for your customers to manage destinations and inspect events. - [Metrics](/docs/outpost/features/metrics.md): Query event and delivery attempt metrics to monitor throughput, reliability, and error trends. - [OpenTelemetry](/docs/outpost/features/opentelemetry.md): Export Outpost performance metrics via OpenTelemetry to your observability platform. ### Destinations - [Webhook](/docs/outpost/destinations/webhook.md): Deliver events via HTTP POST to any URL endpoint, with customizable headers and HMAC signature verification. - [Hookdeck Event Gateway](/docs/outpost/destinations/hookdeck.md): Route events through Hookdeck for advanced delivery with retries, transformations, filtering, and observability. - [AWS SQS](/docs/outpost/destinations/aws-sqs.md): Deliver events to an Amazon SQS queue with metadata as message attributes. - [AWS EventBridge](/docs/outpost/destinations/aws-eventbridge.md): Publish events to an Amazon EventBridge event bus, with the topic as the detail type. - [AWS Kinesis](/docs/outpost/destinations/aws-kinesis.md): Stream events to an Amazon Kinesis Data Stream with configurable partition keys. - [AWS S3](/docs/outpost/destinations/aws-s3.md): Store events as JSON objects in an Amazon S3 bucket with configurable key templates and storage classes. - [GCP Pub/Sub](/docs/outpost/destinations/gcp-pubsub.md): Publish events to a Google Cloud Pub/Sub topic using a service account. - [Azure Service Bus](/docs/outpost/destinations/azure-service-bus.md): Send events to an Azure Service Bus queue or topic with metadata as application properties. - [RabbitMQ](/docs/outpost/destinations/rabbitmq.md): Send events to a RabbitMQ exchange via AMQP with the event topic as the routing key. - [Apache Kafka](/docs/outpost/destinations/kafka.md): Publish events to an Apache Kafka topic with SASL authentication and a configurable partition key. - [Cloudflare Queues](/docs/outpost/destinations/cloudflare-queues.md): Publish events to a Cloudflare Queue via the Cloudflare HTTP API. ### Guides - [Migrate to Outpost](/docs/outpost/guides/migrate-to-outpost.md): Migrate your existing webhook infrastructure to Outpost. - [Verify Webhook Signatures](/docs/outpost/guides/verify-webhook-signatures.md): Verify the HMAC signature on webhooks delivered by Outpost's default webhook mode. - [Change Webhook Signature Scheme](/docs/outpost/guides/change-webhook-signature-scheme.md): Optional: send a second signature in your previous format so receivers keep verifying while you change signature schemes or move to Outpost. - [Building your own UI](/docs/outpost/guides/building-your-own-ui.md): Build your own UI for users to manage their destinations and view their events using the Outpost API. ### Publishing - [Publishing Events](/docs/outpost/publishing/events.md): How to publish events to Outpost for delivery to tenant destinations. - [Publish from Hookdeck Event Gateway](/docs/outpost/publishing/publish-from-hookdeck-event-gateway.md): Configure Outpost to ingest published events from Hookdeck Event Gateway. - [Publish from RabbitMQ](/docs/outpost/publishing/publish-from-rabbitmq.md): Configure Outpost to ingest published events from a RabbitMQ exchange and queue. - [Publish from SQS](/docs/outpost/publishing/publish-from-sqs.md): Configure Outpost to ingest published events from an AWS SQS queue. - [Publish from GCP Pub/Sub](/docs/outpost/publishing/publish-from-gcp-pubsub.md): Configure Outpost to ingest published events from a GCP Pub/Sub topic and subscription. ### Platform (Managed Only) - [Organizations](/docs/platform/organizations.md) - [Projects](/docs/platform/outpost-projects.md) ## Quickstarts - [Hookdeck Outpost: curl](/docs/outpost/quickstarts/hookdeck-outpost-curl.md): Use the REST API with curl to create a tenant, destination, and publish an event. - [Hookdeck Outpost: TypeScript](/docs/outpost/quickstarts/hookdeck-outpost-typescript.md): Use the TypeScript SDK to create a tenant, destination, and publish an event. - [Hookdeck Outpost: Python](/docs/outpost/quickstarts/hookdeck-outpost-python.md): Use the Python SDK to create a tenant, destination, and publish an event. - [Hookdeck Outpost: Go](/docs/outpost/quickstarts/hookdeck-outpost-go.md): Use the Go SDK to create a tenant, destination, and publish an event. ## Self-Hosting ### Overview - [Deployment](/docs/outpost/self-hosting/deployment.md): Deploy Outpost services, choose runtime distribution, and plan dependencies and resource allocation. - [Configuration Reference](/docs/outpost/self-hosting/configuration.md): Configuration options for Outpost — environment variables for self-hosted deployments and dashboard settings for managed Outpost. - [Data Model](/docs/outpost/self-hosting/data-model.md): How Outpost lays out its data across Redis and the PostgreSQL or ClickHouse log store, and how the tables and keys relate to each other. - [Github Repository](https://github.com/hookdeck/outpost) ### Quickstarts - [Deploy on Railway](/docs/outpost/quickstarts/railway.md) - [Deploy with Docker](/docs/outpost/quickstarts/docker.md) - [Deploy on Kubernetes](/docs/outpost/quickstarts/kubernetes.md) ### Guides - [Logging](/docs/outpost/guides/logging.md) - [Bring Your Own Message Queues](/docs/outpost/guides/byo-mqs.md) - [Azure Service Bus Internal MQ](/docs/outpost/guides/service-bus-internal-mq.md) - [Migrations](/docs/outpost/guides/migration.md) - [Event & Delivery Log](/docs/outpost/guides/event-delivery-log.md) - [Redis Troubleshooting](/docs/outpost/guides/troubleshooting-redis.md) - [Webhook Forward Proxy](/docs/outpost/guides/webhook-proxy.md) ### Changelog - [Upgrade to v1.6](/docs/outpost/changelog/upgrade-v1.6.md) - [Upgrade to v1.2](/docs/outpost/changelog/upgrade-v1.2.md) - [Upgrade to v1.1](/docs/outpost/changelog/upgrade-v1.1.md) - [Upgrade to v1.0](/docs/outpost/changelog/upgrade-v1.0.md) - [Upgrade to v0.17](/docs/outpost/changelog/upgrade-v0.17.md) - [Upgrade to v0.16](/docs/outpost/changelog/upgrade-v0.16.md) - [Upgrade to v0.14](/docs/outpost/changelog/upgrade-v0.14.md) - [Upgrade to v0.13](/docs/outpost/changelog/upgrade-v0.13.md) - [Upgrade to v0.12](/docs/outpost/changelog/upgrade-v0.12.md) ## Outpost API Reference ### Introduction - [Introduction](/docs/outpost/api.md#introduction) - [Authentication](/docs/outpost/api.md#authentication) - [Errors](/docs/outpost/api.md#errors) - [Rate limit](/docs/outpost/api.md#rate-limit) - [Openapi](/docs/outpost/api.md#openapi) - [Sdks](/docs/outpost/api.md#sdks) ### Configure - [Configure](/docs/outpost/api/configure.md) - [Tenants](/docs/outpost/api/configure.md#tenants) - [Destinations](/docs/outpost/api/configure.md#destinations) - [Configuration](/docs/outpost/api/configure.md#configuration) ### Publishing - [Publishing](/docs/outpost/api/publishing.md) - [Publish](/docs/outpost/api/publishing.md#publish) - [Retry](/docs/outpost/api/publishing.md#retry) ### Inspect - [Inspect](/docs/outpost/api/inspect.md) - [Events](/docs/outpost/api/inspect.md#events) - [Attempts](/docs/outpost/api/inspect.md#attempts) - [Metrics](/docs/outpost/api/inspect.md#metrics) ### Resources - [Resources](/docs/outpost/api/resources.md) - [Destination Types](/docs/outpost/api/resources.md#destination-types) - [Topics](/docs/outpost/api/resources.md#topics) - [Health](/docs/outpost/api/resources.md#health) ## Platform - [Access Control](/docs/platform/members.md): Team membership lifecycle and role assignment - [API Keys](/docs/platform/api-keys.md): Manage organization and project API keys, project access, permission scopes, key rotation, and revocation - [Billing](/docs/platform/billing.md): Manage organization billing and subscription - [Event Gateway Projects](/docs/platform/event-gateway-projects.md): Isolated environments with separate configs - [Organizations](/docs/platform/organizations.md): Manage team access, roles, and billing across projects - [Outpost Projects](/docs/platform/outpost-projects.md): Isolated environments with separate configs - [User profile](/docs/platform/user-profile.md): User profile authentication and account settings - [Platform API Reference (Overview)](/docs/platform/api.md): Organization-scoped authentication, base URL, and the endpoint index. - [Platform API: Resources](/docs/platform/api/resources.md) ## Outpost Guides - [Send MCP Events Webhooks with Outpost](/docs/outpost/guides/send-mcp-events-webhooks-with-outpost.md): How to implement MCP Events webhook delivery (events/list, events/subscribe, events/unsubscribe) in an MCP server using Hookdeck Outpost: Standard Webhooks mode, one tenant per principal, one destination per subscription, destination filters from subscription arguments, secret rotation, TTL expiry, publishing the MCP event envelope, and testing with ChatGPT. - [Webhook Versioning Strategies for Outbound Webhook Providers](/docs/outpost/guides/webhook-versioning-strategies.md): Guide to webhook versioning strategies including global API versioning, additive-only evolution, per-event-type versioning, and topic-based versioning with trade-offs and migration approaches - [Why Alerting and Notifications Are Necessary for Outbound Webhook Providers](/docs/outpost/guides/webhook-alerting-and-notifications.md): Guide to implementing alerting and notifications for outbound webhook delivery, covering consecutive failure alerts, auto-disabling destinations, latency monitoring, and callback-based alert routing - [Common Mistakes with Outbound Webhooks (And How to Avoid Them)](/docs/outpost/guides/common-outbound-webhook-mistakes.md): Guide to common mistakes outbound webhook providers make and best practices for building reliable webhook delivery - [Why Outbound Webhook Providers Need Self-Serve Portals](/docs/outpost/guides/webhook-consumer-self-service-portal.md): Guide to building a self-service portal when sending webhooks to consumers covering destination management, event visibility, retries, and more - [Why You Need Topics and Subscriptions When Sending Webhooks](/docs/outpost/guides/webhook-topics-and-subscriptions.md): Guide to webhook topics and subscriptions for event routing and filtering - [Anatomy of a Good Webhook Payload](/docs/outpost/guides/webhook-payload-best-practices.md): Guide to designing webhook payloads including structure, headers, versioning, and common mistakes - [Why Multi-Tenancy Matters for Outbound Webhooks (And How to Implement It)](/docs/outpost/guides/multi-tenancy-outbound-webhooks.md): Multi-tenancy for outbound webhooks with Hookdeck Outpost - [Why Your Platform Needs Outbound Webhooks](/docs/outpost/guides/why-your-platform-needs-outbound-webhooks-and-how-to-ship-them.md): Guide to outbound webhooks for platforms including build vs buy analysis - [Webhook Retry Best Practices for Sending Webhooks](/docs/outpost/guides/outbound-webhook-retry-best-practices.md): Webhook retry best practices for sending webhooks - [Send Webhooks with Django](/docs/outpost/guides/send-webhooks-with-django-guide.md): Comprehensive overview of how to send webhooks with Django using Hookdeck's Outpost open-source event dispatcher. - [Send Webhooks with Express.js](/docs/outpost/guides/send-webhooks-with-express-guide.md): Comprehensive overview of how to send webhooks with Express.js using Hookdeck's Outpost open-source event dispatcher. - [Send Webhooks with FastAPI](/docs/outpost/guides/send-webhooks-with-fastapi-guide.md): Comprehensive overview of how to send webhooks with FastAPI using Hookdeck's Outpost open-source event dispatcher. - [Send Webhooks with Flask](/docs/outpost/guides/send-webhooks-with-flask-guide.md): Comprehensive overview of how to send webhooks with Flask using Hookdeck's Outpost open-source event dispatcher. - [Send Webhooks with Gin](/docs/outpost/guides/send-webhooks-with-gin-guide.md): Comprehensive overview of how to send webhooks with Gin using Hookdeck's Outpost open-source event dispatcher. - [Send Webhooks with Go](/docs/outpost/guides/send-webhooks-with-go-guide.md): Comprehensive overview of how to send webhooks with Go using Hookdeck's Outpost open-source event dispatcher. - [Send Webhooks with JavaScript](/docs/outpost/guides/send-webhooks-with-javascript-guide.md): Comprehensive overview of how to send webhooks with JavaScript using Hookdeck's Outpost open-source event dispatcher. - [Send Webhooks with Koa](/docs/outpost/guides/send-webhooks-with-koa-guide.md): Comprehensive overview of how to send webhooks with Koa using Hookdeck's Outpost open-source event dispatcher. - [Send Webhooks with NestJS](/docs/outpost/guides/send-webhooks-with-nestjs-guide.md): Comprehensive overview of how to send webhooks with NestJS using Hookdeck's Outpost open-source event dispatcher. - [Send Webhooks with Next.js](/docs/outpost/guides/send-webhooks-with-next-guide.md): Comprehensive overview of how to send webhooks with Next.js using Hookdeck's Outpost open-source event dispatcher. - [Send Webhooks with Node.js](/docs/outpost/guides/send-webhooks-with-node-guide.md): Comprehensive overview of how to send webhooks with Node.js using Hookdeck's Outpost open-source event dispatcher. - [Send Webhooks with Python](/docs/outpost/guides/send-webhooks-with-python-guide.md): Comprehensive overview of how to send webhooks with Python using Hookdeck's Outpost open-source event dispatcher. ## Other pages - [Upgrade to v0.12](/docs/outpost/self-hosting/changelog/upgrade-v0.12.md): Breaking changes and migration steps for upgrading Outpost from v0.11 to v0.12. - [Upgrade to v0.13](/docs/outpost/self-hosting/changelog/upgrade-v0.13.md): Breaking changes and migration steps for upgrading Outpost from v0.12 to v0.13. - [Upgrade to v0.14](/docs/outpost/self-hosting/changelog/upgrade-v0.14.md): Breaking changes and migration steps for upgrading Outpost from v0.13 to v0.14. - [Upgrade to v0.16](/docs/outpost/self-hosting/changelog/upgrade-v0.16.md): Breaking changes and migration steps for upgrading Outpost from v0.15 to v0.16. - [Upgrade to v0.17](/docs/outpost/self-hosting/changelog/upgrade-v0.17.md): Breaking changes and migration steps for upgrading Outpost from v0.16 to v0.17. - [Upgrade to v1.0](/docs/outpost/self-hosting/changelog/upgrade-v1.0.md): What v1.0 means for self-hosted deployments when upgrading Outpost from v0.17. - [Upgrade to v1.1](/docs/outpost/self-hosting/changelog/upgrade-v1.1.md): New features, behavior changes, and deprecations when upgrading Outpost from v1.0 to v1.1. - [Upgrade to v1.2](/docs/outpost/self-hosting/changelog/upgrade-v1.2.md): New features, fixes, and behavior changes when upgrading Outpost from v1.1 to v1.2. - [Upgrade to v1.6](/docs/outpost/self-hosting/changelog/upgrade-v1.6.md): Breaking changes and behavior changes when upgrading Outpost from v1.5 to v1.6. - [Bring Your Own Message Queues](/docs/outpost/self-hosting/guides/byo-mqs.md): Disable auto-provisioning and manually configure Outpost internal message queues across supported providers. - [Event & Delivery Log](/docs/outpost/self-hosting/guides/event-delivery-log.md): Overview of event and delivery log storage, querying, and retention behavior for self-hosted Outpost. - [Logging](/docs/outpost/self-hosting/guides/logging.md): Configure application and audit logging for self-hosted Outpost deployments. - [Schema Migration Guide](/docs/outpost/self-hosting/guides/migration.md): Plan, apply, verify, and clean up Outpost schema migrations safely in self-hosted environments. - [Configure Azure Service Bus as the Outpost Internal Message Queue](/docs/outpost/self-hosting/guides/service-bus-internal-mq.md): Set up Azure Service Bus topics, subscriptions, and credentials for Outpost internal messaging. - [Redis Troubleshooting](/docs/outpost/self-hosting/guides/troubleshooting-redis.md): Diagnose and fix common Redis connectivity and configuration issues for self-hosted Outpost. - [Webhook Forward Proxy](/docs/outpost/self-hosting/guides/webhook-proxy.md): Route outgoing webhook deliveries through an HTTP forward proxy for static-IP egress or network isolation. - [Deploy with Docker](/docs/outpost/self-hosting/quickstarts/docker.md): Run Outpost locally using Docker Compose with RabbitMQ or AWS SQS via LocalStack. - [Deploy on Kubernetes](/docs/outpost/self-hosting/quickstarts/kubernetes.md): Run Outpost on Kubernetes using Minikube and Helm with RabbitMQ. - [Deploy on Railway](/docs/outpost/self-hosting/quickstarts/railway.md): Deploy Outpost to Railway with a one-click deployment template.