---
title: "Deploy webhook-catcher"
description: "🔍 Developer-friendly webhook debugging tool with real-time capture"
category: "Observability"
url: https://railway.com/deploy/webhook-catcher
---

# Deploy webhook-catcher

🔍 Developer-friendly webhook debugging tool with real-time capture

**[Deploy webhook-catcher on Railway](https://railway.com/template/webhook-catcher)**

- **Creator:** Artour
- **Category:** Observability
- **Total deploys:** 7

## Template content

### webhook-catcher https://devicons.railway.app/webhook

- **Source:** https://github.com/BigDaddyAman/webhook-catcher
- **Public domain:** Yes

## Documentation

# Deploy and Host webhook-catcher on Railway

**webhook-catcher** is a lightweight FastAPI-based tool to receive, view, debug, and replay webhooks with a clean HTML UI. It includes features like search, filtering, dark mode, and replay support — perfect for testing integrations and inspecting webhook payloads in real-time.

## ⚠️ Railway Volume Setup (Important)

`webhook-catcher` uses **SQLite** to store received webhook payloads.

On **Railway**, filesystem storage is **ephemeral by default**.  
This means **all webhook data will be lost on every redeploy** unless a persistent volume is attached.

To persist webhook data across redeploys, you **must** add a Railway Volume.

### Required Steps on Railway

1. Deploy the project (template or repository)
2. Go to **Your Service → Volumes**
3. Click **Add Volume**
4. Mount the volume to: /app/data
5. Redeploy the service

Once the volume is mounted, SQLite data will persist normally across redeploys.

> ❗ **Without a mounted volume, webhook logs will be wiped every time the service restarts or redeploys.**

## About Hosting webhook-catcher

Hosting `webhook-catcher` on Railway is fast and simple. Once deployed, you'll receive a public HTTPS URL where any service can send webhooks for testing or debugging. All received payloads are stored in SQLite and displayed in a minimal dashboard. You can replay requests, forward them to another service, or export logs. No extra configuration is required — just deploy and start catching webhooks!

## Common Use Cases

- Debugging webhooks from Stripe, Telegram, GitHub, etc.
- Building and testing integrations with third-party services
- Logging and replaying webhook events during development

## Dependencies for webhook-catcher Hosting

- Python 3.11+
- SQLite (included by default)

### Deployment Dependencies

- [FastAPI Documentation](https://fastapi.tiangolo.com/)
- [HTMX](https://htmx.org/)
- [Railway](https://railway.app)

### Implementation Details

This app runs a FastAPI backend and serves HTML with TailwindCSS + HTMX for a responsive UI. Data is stored in a lightweight SQLite database and replayed via Python's `httpx`. Replay and export buttons are built-in.

## Why Deploy webhook-catcher on Railway?


Railway is a singular platform to deploy your infrastructure stack. Railway will host your infrastructure so you don't have to deal with configuration, while allowing you to vertically and horizontally scale it.

By deploying webhook-catcher on Railway, you are one step closer to supporting a complete full-stack application with minimal burden. Host your servers, databases, AI agents, and more on Railway.


## Similar templates

- [Pyroscope profiling](https://railway.com/deploy/pyroscope-profiling) — Protected continuous profiling with durable Pyroscope storage.
- [SigOnly](https://railway.com/deploy/sigonly) — Deploy SigNoz with a working demo app & config in one click
- [Unwrapped Spotify Music Stats](https://railway.com/deploy/wide-bold) — Unwrapped Spotify Music Stats, Estatísticas de músicas disponíveis

Open this page in a browser: https://railway.com/deploy/webhook-catcher
