A simple HTTP Request capture web application written in Rust, largely inspired by request-baskets. Useful for testing HTTP requests and responses such as webhooks, security testing for SSRF, and more.
You can interact with a demo instance of this application at:
- Complete HTTP request capture including methods, headers, parameters, and body
- User controlled, password protected buckets for capturing requests privately
- Ability to view all existing buckets making it easy to return to your space
- Ability to delete a bucket and/or clear all requests from a bucket
- Quick share your bucket link for collaboration
Download the latest release for your platform from the releases page:
Pull and run the pre-built multi-architecture image from GitHub Container Registry:
# Pull the latest version
docker pull ghcr.io/seanmarpo/request-catcher:latest
# Run the container
docker run -d -p 9090:9090 ghcr.io/seanmarpo/request-catcher:latest
# Or run a specific version
docker run -d -p 9090:9090 ghcr.io/seanmarpo/request-catcher:v0.4.0The Dockerfile automatically detects your architecture (AMD64 or ARM64) and builds accordingly:
# Build for your native architecture (auto-detected)
docker build -t request-catcher .
# Run the container
docker run -d -p 9090:9090 request-catcherEnvironment variables:
HOST- Bind address (default:0.0.0.0in Docker,127.0.0.1otherwise)PORT- Port to listen on (default:9090)RUST_LOG- Log level (default:info, options:error,warn,info,debug,trace)
Example with custom configuration:
docker run -d \
-p 8080:8080 \
-e PORT=8080 \
-e RUST_LOG=debug \
ghcr.io/seanmarpo/request-catcher:latest# Clone the repository
git clone https://github.com/seanmarpo/request-catcher.git
cd request-catcher
# Run in development mode
cargo run
# Build for production
cargo build --release
./target/release/request_catcherThis project includes comprehensive test coverage:
# Run all integration tests
cargo test
# Run specific test
cargo test test_create_bucket
# Run with output
cargo test -- --nocapture# Start the server
cargo run
# In another terminal, generate test data
cd tests/ui
./generate_test_data.sh
# Open the provided URL in your browser to verifyMost of this application was "vibe-coded" as a personal exploration project. I do not personally know Rust, but I wanted to see what I could develop with the assistance of AI.