A modern, high-level HTTP(S) client for the command line.
- Response formatting - Automatic formatting and syntax highlighting for JSON, XML, HTML, CSS, CSV, MessagePack, Protocol Buffers, and more
- Image rendering - Display images directly in your terminal
- gRPC support - Make gRPC calls with automatic JSON-to-protobuf conversion
- Authentication - Built-in support for Basic Auth, Bearer Token, AWS Signature V4, and mTLS
- Compression - Automatic gzip and zstd response body decompression
- Configuration - Global and per-host configuration file support
# Install fetch from shell script
curl -fsSL https://raw.githubusercontent.com/ryanfowler/fetch/main/install.sh | bash
# Or install fetch with Go
go install github.com/ryanfowler/fetch@latest
# Make a request
fetch httpbin.org/json- Getting Started - Installation, first steps, and basic concepts
- CLI Reference - Complete reference for all command-line options
- Configuration - Configuration file format and options
- Authentication - Basic, Bearer, AWS SigV4, and mTLS
- Request Bodies - JSON, XML, forms, multipart, and file uploads
- Output Formatting - Supported content types and formatting options
- Image Rendering - Terminal image protocols and formats
- gRPC - Making gRPC requests with Protocol Buffers
- Advanced Features - DNS, proxies, TLS, HTTP versions, and more
- Troubleshooting - Common issues, debugging, and exit codes
fetch is released under the MIT License.
