Getting Started

This guide will help you get Webhooked up and running in minutes. We'll cover installation, basic configuration, and your first webhook.

This page evolves with each version based on modifications and community feedback. Having trouble following this guide?

Open an issue to get help, and contribute to improving this guide for future users. 💜

Prerequisites

  • For Docker: Docker and Docker Compose installed

  • For Binary: Linux/macOS/Windows system

  • For Source: Go 1.24+ installed

  • Optional: Redis, PostgreSQL, RabbitMQ, etc... for storage backends

Quick Start (5 minutes)

# Create a configuration file
cat > webhooked.yaml << 'EOF'
apiVersion: v1alpha2
kind: Configuration
metadata:
  name: my-webhooks
specs:
  - webhooks:
    - name: hello-webhook
      entrypointUrl: /webhook/hello
      security:
        type: noop  # No auth for testing
      response:
        statusCode: 200
        formatting:
          templateString: '{"message": "Hello from Webhooked!", "received": {{ .Payload }}}'
EOF

# Run Webhooked
docker run -d \
  -p 8080:8080 \
  -v $(pwd)/webhooked.yaml:/config/webhooked.yaml \
  atomys/webhooked:latest \
  --config /config/webhooked.yaml

# Test your webhook
curl -X POST http://localhost:8080/webhooks/v1alpha2/webhook/hello \
  -H "Content-Type: application/json" \
  -d '{"test": "data"}'

Option 2: Binary Installation

Option 3: Install from Source

Your First Real Webhook

Let's create a more realistic webhook that stores data in Redis:

1. Create Configuration

2. Start Services with Docker Compose

3. Test the Webhook

Essential Configuration Concepts

Webhook URL Structure

All webhook endpoints follow this pattern:

Example:

  • Configuration: entrypointUrl: /my/webhook

  • Actual URL: /webhooks/v1alpha2/my/webhook

Security Providers

Webhooked supports multiple security providers:

See the dedicated page Security Layer

Storage Backends

Configure one or more storage backends:

See the dedicated page Storage Layer

Environment Variables

Webhooked supports environment variable substitution:

Set environment variables:

Health Checks

Webhooked provides built-in health endpoints:

Monitoring

When metrics are enabled, Prometheus metrics are available:

Common Patterns

1. Multi-Environment Configuration

2. Data Transformation


Congratulations! You're now ready to process webhooks at scale with Webhooked.

Last updated