HTTPCan - Best HTTPBin Alternative | Fully Compatible
A simple, high-performance HTTP request & response service built with Rust and Actix Web.
Fully compatible with httpbin.org, with modern streaming and AI-friendly enhancements.
✨ Key Features
- HTTPBin Compatible - Use as a drop-in replacement for testing/migration
- Modern Streaming - Native SSE and NDJSON, AI-compatible formats (OpenAI/Ollama)
- Tiny Docker Image - Less than 10MB, fast to pull and start
- Minimal Memory Footprint - Efficient async Rust I/O
- High Throughput - Powered by Actix Web + Tokio
📋 API Capabilities
HTTPBin Compatible Endpoints
- HTTP Methods: GET, POST, PUT, PATCH, DELETE
- Authentication: Basic, Hidden Basic, Digest, Bearer (JWT)
- Response Formats: JSON, XML, HTML, robots.txt
- Compression: gzip, deflate, brotli
- Dynamic Data: UUID generation, bytes, stream, range, delay, drip
- Redirects: Relative, absolute, redirect-to with custom URLs
- Inspection: Headers, IP, user-agent analysis
- Cookies: Full CRUD operations
- Images: PNG, JPEG, WebP, SVG support
- Status Codes: Test any HTTP status code
HTTPCan Enhancements
- Echo Endpoint: Reflects request body and headers
- Enhanced Auth: Basic auth with username only, JWT Bearer decode/inspect
- Advanced Status: Custom bodies via query/body parameters
- Streaming+: SSE/NDJSON with configurable count, delay, and AI formats
- File Uploads: Multiple file support across multipart endpoints
🚀 Quick Start
Docker (Recommended):
docker run -p 8080:8080 ghcr.io/seedvector/httpcan:latest
curl http://localhost:8080/get
Cargo:
cargo install httpcan
httpcan
curl http://localhost:8080/get
📚 Documentation
OpenAPI Specification: Available at /openapi.json
GitHub Repository: github.com/seedvector/httpcan
Crates.io: crates.io/crates/httpcan
⚠️ Note: This interactive API documentation requires JavaScript to be enabled. Please enable JavaScript in your browser to view the full API reference with live examples and testing capabilities.
🦀 Library Usage
HTTPCan can also be used as a Rust library. Embed the server in your own applications:
[dependencies]
httpcan = "0.5"
📄 License
MIT License - Open source and free to use
HTTPCan © 2025 | High-performance HTTP testing built with Rust | Fully compatible with httpbin.org