How to Use the curlie Command in Linux for Friendly and Powerful HTTP Requests

Developers and system administrators routinely interact with REST APIs and web services using the terminal. While curl is exceptionally fast, universally installed, and supports complex proxy environments, its default raw output can be cumbersome to read. Conversely, tools like HTTPie offer beautiful, coloured output but lack curl’s native performance and edge-case handling. The curlie command Linux utility bridges this gap by functioning as a wrapper that combines the human-friendly formatting of HTTPie with the full power and reliability of curl.

What Is the curlie Command in Linux?

Written in Go, curlie acts as a frontend CLI parser. When you enter a command, curlie parses the request flags using HTTPie’s intuitive syntax, translates them into standard curl arguments under the hood, and executes the transfer. Upon receiving the server response, it automatically colour-codes HTTP response headers and pretty-prints JSON payloads with syntax highlighting.

How to Install curlie on Linux

Because curlie relies on curl to execute network transport, ensure curl is installed on your distribution before setting up curlie.

Installing on Debian, Ubuntu, and Linux Mint

On modern Debian and Ubuntu systems, you can install curlie via pre-built binaries or package archives:

# Install prerequisites
sudo apt update
sudo apt install curl

# Download and install the latest curlie binary release
sudo curl -sS https://webi.sh/curlie | sh

Alternatively, if you use Homebrew on Linux:

brew install curlie

Installing on Arch Linux and Fedora

On Arch Linux, install curlie directly from the Arch User Repository (AUR) or community packages:

yay -S curlie-bin

On Fedora, download the official RPM release from GitHub or compile it using Go:

go install github.com/rs/curlie@latest

Making Simple GET and POST Requests

Interacting with endpoints using curlie requires minimal boilerplate flags.

Fetching Data with GET

To perform an HTTP GET request, provide the URL directly:

curlie api.github.com/users/octocat

Unlike standard curl, you do not need to prepend https:// if the domain is standard, and curlie immediately displays coloured HTTP status codes (such as HTTP/2 200 OK), response headers, and formatted JSON indentation.

Sending JSON Payloads with POST

Creating POST requests with JSON data in raw curl requires tedious escaping and explicit header declarations like -H "Content-Type: application/json". With curlie, you simply pass key-value pairs separated by an equals sign:

curlie POST httpbin.org/post name="Alex" role="Engineer" active:=true

Notice the syntax distinction:

  • key="value" passes a standard string field.
  • key:=value passes raw non-string types, such as booleans, integers, or nested objects.

Passing Custom Headers and Authentication

Adding custom HTTP request headers uses a colon syntax without complex quote wrapping:

curlie api.example.com/data "Authorization: Bearer my_jwt_token" "X-Client-ID: digitash"

For basic HTTP authentication, utilise the -a or --auth flag:

curlie -a admin:password123 httpbin.org/basic-auth/admin/password123

Leveraging Native curl Flags with curlie

Because curlie is a frontend to curl, you can pass any native curl option directly. If you need to follow redirects, inspect connection latency, or configure a SOCKS5 proxy, append standard curl arguments:

# Follow HTTP redirects automatically (-L)
curlie -L example.com

# Route through a local proxy (--proxy)
curlie --proxy socks5://127.0.0.1:9050 https://api.ipify.org?format=json

# Silence output or output response headers only (-I)
curlie -I https://digitash.com

Redirecting and Piping curlie Outputs

When running in an interactive terminal, curlie enables rich ANSI colourisation. However, when piping output into another shell command or saving to a file, curlie automatically detects the stream redirect and disables terminal formatting codes, outputting clean, uncoloured data suitable for jq or file storage:

curlie api.github.com/repos/torvalds/linux | jq '.stargazers_count'

Get the best tech tips delivered straight to your inbox.

Join thousands of readers mastering Apple, Google, Microsoft, and Linux.