| 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¶
- --anyauth
- Pick any authentication method.
- --aws-sigv4 provider1[:prvdr2[:reg[:srv]]]
- Use AWS V4 signature authentication.
- --basic
- Use HTTP Basic Authentication.
- --digest
- Use HTTP Digest Authentication.
- --negotiate
- Use HTTP Negotiate (SPNEGO) authentication.
- -n, --netrc
- Read username and password from .netrc.
- --netrc-file filename
- Specify FILE for netrc.
- --netrc-optional
- Use either .netrc or URL.
- --ntlm
- Use HTTP NTLM authentication.
- --oauth2-bearer token
- Specify OAuth 2 Bearer Token.
- -u, --user user:password
- Set server user and password.
TLS / SSL¶
- --ca-native
- Load CA certs from the OS.
- --cacert file
- CA certificate to verify peer against.
- --capath dir
- CA directory to verify peer against.
- -E, --cert certificate[:password]
- Client certificate file and password.
- --cert-status
- Verify server certificate status via OCSP stapling.
- --cert-type type
- Certificate type (DER/PEM/ENG/PROV/P12).
- --ciphers list
- TLS 1.2 (and earlier) ciphers to use.
- -k, --insecure
- Allow insecure server connections.
- --key key
- Private key filename.
- --key-type type
- Private key file type (DER/PEM/ENG).
- --ssl
- Try enabling TLS.
- --ssl-reqd
- Require SSL/TLS.
- -1, --tlsv1
- Use TLSv1.0 or greater.
- --tlsv1.0
- Use TLSv1.0 or greater.
- --tlsv1.1
- Use TLSv1.1 or greater.
- --tlsv1.2
- Use TLSv1.2 or greater.
- --tlsv1.3
- Use TLSv1.3 or greater.
- --tls-max VERSION
- Set the maximum allowed TLS version.
- --tls13-ciphers list
- TLS 1.3 cipher suites to use.
HTTP Request¶
- -d, --data data
- Send HTTP POST data.
- --data-ascii data
- Send HTTP POST ASCII data.
- --data-binary data
- Send HTTP POST binary data.
- --data-raw data
- Send HTTP POST data, '@' allowed.
- --data-urlencode data
- Send HTTP POST data URL encoded.
- -F, --form name=content
- Specify multipart MIME data.
- --form-string name=string
- Specify multipart MIME data as string.
- -G, --get
- Put post data in the URL and use GET.
- -H, --header header/@file
- Pass custom header(s) to server.
- -I, --head
- Show document info only (HEAD request).
- --http1.0
- Use HTTP/1.0.
- --http1.1
- Use HTTP/1.1.
- --http2
- Use HTTP/2.
- --http3
- Use HTTP/3.
- --json data
- Send HTTP POST JSON data.
- -X, --request method
- Specify the request method to use.
- -A, --user-agent name
- Send User-Agent to server.
HTTP Response¶
- --compressed
- Request a compressed response.
- -D, --dump-header filename
- Write the received headers to a file.
- -f, --fail
- Fail fast with no output on HTTP errors.
- --fail-with-body
- Fail on HTTP errors but save the body.
- -L, --location
- Follow redirects.
- --max-redirs num
- Set the maximum number of redirects allowed.
- -i, --show-headers
- Show response headers in output.
Output¶
- --curl
- Print the underlying curl command being executed.
- -o, --output file
- Write output to file instead of stdout.
- --output-dir dir
- Directory to save files in.
- --pretty
- Force pretty-printed output.
- -#, --progress-bar
- Display transfer progress as a bar.
- -s, --silent
- Silent mode.
- -v, --verbose
- Make the operation more talkative.
- -w, --write-out format
- Output FORMAT after completion.
Connection¶
- --connect-timeout seconds
- Maximum time allowed to connect.
- --connect-to HOST1:PORT1:HOST2:PORT2
- Connect to host2 instead of host1.
- --dns-servers addresses
- DNS server addresses to use.
- --doh-url URL
- Resolve hostnames over DNS-over-HTTPS.
- -4, --ipv4
- Resolve names to IPv4 addresses only.
- -6, --ipv6
- Resolve names to IPv6 addresses only.
- -m, --max-time seconds
- Maximum time allowed for the transfer.
- --no-keepalive
- Disable TCP keepalive on the connection.
- --resolve [+]host:port:addr[,addr]...
- Resolve host+port to a specific address.
- --retry num
- Retry request if transient problems occur.
- --tcp-fastopen
- Use TCP Fast Open.
- --unix-socket path
- Connect through this Unix domain socket.
Proxy¶
- -x, --proxy [protocol://]host[:port]
- Use this proxy.
- -U, --proxy-user user:password
- Set proxy user and password.
- -p, --proxytunnel
- Use HTTP proxy tunnel (via CONNECT).
- --socks4 host[:port]
- Use SOCKS4 proxy on given host and port.
- --socks5 host[:port]
- Use SOCKS5 proxy on given host and port.
Transfer¶
- -C, --continue-at offset
- Resume transfer at given offset.
- --limit-rate speed
- Limit transfer speed to RATE.
- -O, --remote-name
- Write output to file named as remote file.
- -T, --upload-file file
- Transfer local FILE to destination.
- -Z, --parallel
- Perform transfers in parallel.
- --parallel-max num
- Maximum concurrency for parallel transfers.
Cookies¶
- -b, --cookie data|filename
- Send cookies from string or load from file.
- -c, --cookie-jar filename
- Save cookies to file after operation.
- -j, --junk-session-cookies
- Ignore session cookies read from file.
Miscellaneous¶
- -K, --config file
- Read configuration from a file.
- -q, --disable
- Disable .curlrc.
- -h, --help subject
- Get help for commands.
- -M, --manual
- Display the full manual.
- -V, --version
- Show version number and quit.
EXAMPLES¶
curlie https://httpbin.org/get
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 -I https://httpbin.org/get
curlie -L -i https://httpbin.org/redirect/1
curlie --basic -u user:password https://httpbin.org/basic-auth/user/password
curlie --curl POST https://httpbin.org/post name=test
curlie -O https://example.com/file.tar.gz
curlie --socks5 localhost:1080 https://httpbin.org/get
SEE ALSO¶
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 |