Scroll to navigation

CURLIE(1) User Commands CURLIE(1)

NAME

curlie - curl frontend with httpie-like interface and JSON formatting

SYNOPSIS

curlie [CURL_OPTIONS...] [METHOD] URL [ITEM [ITEM...]]

DESCRIPTION

curlie is a frontend to curl(1) that combines the power and ubiquity of curl with the ease of use and human-friendly interface of httpie(1). All curl options are exposed without compromise on features or performance, while adding syntax sugar and output formatting inspired by httpie.

When running interactively, curlie provides pretty-printed and colorized JSON output. Headers are written to stderr and the body to stdout, making it compatible with pipes and redirects. Output is not buffered — all formatting is done on the fly, allowing easy inspection of streamed data.

OPTIONS

Authentication

Pick any authentication method.
Use AWS V4 signature authentication.
Use HTTP Basic Authentication.
Use HTTP Digest Authentication.
Use HTTP Negotiate (SPNEGO) authentication.
Read username and password from .netrc.
Specify FILE for netrc.
Use either .netrc or URL.
Use HTTP NTLM authentication.
Specify OAuth 2 Bearer Token.
Set server user and password.

TLS / SSL

Load CA certs from the OS.
CA certificate to verify peer against.
CA directory to verify peer against.
Client certificate file and password.
Verify server certificate status via OCSP stapling.
Certificate type (DER/PEM/ENG/PROV/P12).
TLS 1.2 (and earlier) ciphers to use.
Allow insecure server connections.
Private key filename.
Private key file type (DER/PEM/ENG).
Try enabling TLS.
--ssl-reqd
Require SSL/TLS.
-1, --tlsv1
Use TLSv1.0 or greater.
Use TLSv1.0 or greater.
Use TLSv1.1 or greater.
Use TLSv1.2 or greater.
Use TLSv1.3 or greater.
Set the maximum allowed TLS version.
TLS 1.3 cipher suites to use.

HTTP Request

Send HTTP POST data.
Send HTTP POST ASCII data.
Send HTTP POST binary data.
Send HTTP POST data, '@' allowed.
Send HTTP POST data URL encoded.
Specify multipart MIME data.
Specify multipart MIME data as string.
Put post data in the URL and use GET.
Pass custom header(s) to server.
Show document info only (HEAD request).
Use HTTP/1.0.
Use HTTP/1.1.
Use HTTP/2.
Use HTTP/3.
Send HTTP POST JSON data.
Specify the request method to use.
Send User-Agent to server.

HTTP Response

Request a compressed response.
Write the received headers to a file.
Fail fast with no output on HTTP errors.
Fail on HTTP errors but save the body.
Follow redirects.
Set the maximum number of redirects allowed.
Show response headers in output.

Output

Print the underlying curl command being executed.
Write output to file instead of stdout.
Directory to save files in.
Force pretty-printed output.
-#, --progress-bar
Display transfer progress as a bar.
Silent mode.
Make the operation more talkative.
Output FORMAT after completion.

Connection

Maximum time allowed to connect.
Connect to host2 instead of host1.
DNS server addresses to use.
Resolve hostnames over DNS-over-HTTPS.
-4, --ipv4
Resolve names to IPv4 addresses only.
-6, --ipv6
Resolve names to IPv6 addresses only.
Maximum time allowed for the transfer.
Disable TCP keepalive on the connection.
Resolve host+port to a specific address.
Retry request if transient problems occur.
Use TCP Fast Open.
Connect through this Unix domain socket.

Proxy

Use this proxy.
Set proxy user and password.
Use HTTP proxy tunnel (via CONNECT).
Use SOCKS4 proxy on given host and port.
Use SOCKS5 proxy on given host and port.

Transfer

Resume transfer at given offset.
Limit transfer speed to RATE.
Write output to file named as remote file.
Transfer local FILE to destination.
Perform transfers in parallel.
Maximum concurrency for parallel transfers.

Cookies

Send cookies from string or load from file.
Save cookies to file after operation.
Ignore session cookies read from file.

Miscellaneous

Read configuration from a file.
Disable .curlrc.
Get help for commands.
Display the full manual.
Show version number and quit.

EXAMPLES

curlie POST https://httpbin.org/post name=debian version=1

curlie PUT https://httpbin.org/put X-Token:secret name=curlie

curlie POST https://httpbin.org/post --json '{"key":"value"}'

curlie --basic -u user:password https://httpbin.org/basic-auth/user/password

curlie --curl POST https://httpbin.org/post name=test

curlie --socks5 localhost:1080 https://httpbin.org/get

SEE ALSO

curl(1), httpie(1), wget(1)

AUTHOR

Olivier Poitrey <rs@dailymotion.com>

This manual page was written for the Debian project by Josenilson Ferreira da Silva <nilsonfsilva@hotmail.com>.

2025-12-07 curlie