wuzz
Interact with HTTP servers via command line
TLDR
Start wuzz
Send an HTTP request
Switch to the next view
Switch to the previous view
Display help
SYNOPSIS
wuzz [options] [URL]
PARAMETERS
-H HEADER, --header HEADER
Adds a custom HTTP header to the request (e.g., Authorization: Bearer token).
-u USER:PASS, --auth USER:PASS
Specifies username and password for basic or digest authentication.
-b KEY=VALUE, --cookie KEY=VALUE
Adds a cookie to the request.
-X METHOD, --request METHOD
Specifies the HTTP method (e.g., GET, POST, PUT, DELETE).
-d DATA, --data DATA
Sends data with the request. Use with POST, PUT, etc. (e.g., name=value or JSON string).
-j, --json
Assumes request body is JSON and sets appropriate Content-Type header. Automatically prettifies JSON response.
-f, --form
Sends data as application/x-www-form-urlencoded.
-F NAME=FILE, --file NAME=FILE
Uploads a file as part of a multipart/form-data request.
-t TIMEOUT, --timeout TIMEOUT
Sets the request timeout in seconds.
-v, --verbose
Enables verbose output, showing the underlying curl command being executed.
--verify BOOL
Enables or disables SSL certificate verification (e.g., --verify false).
--help
Displays the help message and exits.
--version
Displays the version information and exits.
DESCRIPTION
Wuzz is a powerful and interactive command-line HTTP inspector. It's built on top of curl and httpie, providing a rich terminal UI for constructing, sending, and inspecting HTTP requests and responses.
Wuzz allows users to easily navigate through headers, body, and status lines, apply syntax highlighting, and prettify JSON/XML content. It supports various authentication methods, custom headers, and query parameters, making it an invaluable tool for developers debugging APIs or anyone needing to quickly examine web traffic directly from their terminal. Its interactive nature distinguishes it from simpler tools, offering an experience akin to a browser's network developer tools but within the command line environment.
CAVEATS
Wuzz is not a standard Linux command; it requires Python and pip for installation. It relies on curl for its core functionality, which must be installed on the system. While it can send single requests, its primary design and strength lie in its interactive, full-screen terminal interface for debugging and exploring APIs. Optimal experience requires a terminal that supports its interactive features and color output.
INSTALLATION
Wuzz is installed via Python's package manager, pip. The recommended installation command is:
pip install wuzz
It requires Python 3 to run.
INTERACTIVE MODE
When wuzz is invoked without any URL or arguments (e.g., just wuzz), it enters its interactive mode. In this full-screen interface, users can dynamically build and modify requests, navigate through response details, view request history, and fine-tune various parameters before sending requests. This interactive environment is where the command's primary utility shines.
HISTORY
Wuzz was created by Huzaifa Sidat and first publicly released around 2017. It was developed to address a need for a more interactive and visually rich command-line HTTP client, combining the power and versatility of curl with the user-friendliness of httpie. Its unique contribution is the interactive TUI (Text User Interface) layer, which provides a debugging experience akin to browser developer tools, but entirely within the terminal environment. It is actively maintained as an open-source project.