Skip to content
Latchkey

curlie: curl Power with HTTPie Output

curlie wraps curl so you get curl's features and flags with HTTPie's readable, colorized output.

curlie is a thin frontend: it accepts curl-style arguments and the HTTPie-style field=value grammar, runs curl underneath, and formats the result the way HTTPie does. It is handy when you want curl's reach with nicer output.

What it does

curlie passes your arguments through to curl while formatting the request and response like HTTPie (colorized headers and JSON). It understands both curl flags (-X, -H, -d) and HTTPie-style items (field=value, name==value), and any unrecognized flag is forwarded to curl unchanged.

Common usage

Terminal
curlie example.com/api/users
curlie POST example.com/api name=Ada active:=true
curlie -H "Authorization: Bearer $TOKEN" example.com/api/private
curlie GET example.com/search q==latchkey

Options

Flag / itemWhat it does
field=valueHTTPie-style JSON body field
name==valueHTTPie-style query parameter
-X, -H, -dStandard curl flags, forwarded to curl
-vVerbose, forwarded to curl
--pretty=all|noneControl colorization and formatting

In CI

Because curlie runs curl underneath, it inherits curl's exit codes and TLS behavior, so --fail style gating works as it does with curl. For pure machine consumption in a pipeline, --pretty=none disables colorization so downstream parsing is not tripped up by ANSI codes.

Common errors in CI

Errors surface as curl errors, for example curl: (7) Failed to connect to example.com port 443: Connection refused when nothing is listening, or curl: (6) Could not resolve host on a DNS failure. Since curlie forwards to curl, consult curl's exit-code table when a step fails.

Related guides

Run this faster and cheaper on Latchkey managed runners. Start free →