I just discovered HTTPie for myself - why did I use curl instead of this all these years? :Dhttps://t.co/b3feFCl6ku pic.twitter.com/DkM0vUVVks
— Stephan Dilly (@Extrawurst) January 1, 2021
HTTPie—aitch-tee-tee-pie—is a user-friendly command-line HTTP client for the API era. It comes with JSON support, syntax highlighting, persistent sessions, wget-like downloads, plugins, and more.

HTTPie is designed for painless debugging and interaction with APIs, HTTP servers, and web services, which it accomplishes by:
- Built-in JSON support
- Colorized and formatted terminal output
- Sensible defaults
- Persistent sessions
- Forms and file uploads
- HTTPS, proxies, and authentication support
- Support for arbitrary request data and headers
- Wget-like downloads
- Extensions API
- Expressive and intuitive syntax
- Linux, macOS, and Windows support
- All that & more in 2 simple commands:
http
+https
Getting started
Hello World:
$ https httpie.io/hello
Custom HTTP method, HTTP headers and JSON data:
$ http PUT pie.dev/put X-API-Token:123 name=John
Submitting forms:
$ http -f POST pie.dev/post hello=World
See the request that is being sent using one of the output options:
$ http -v pie.dev/get
Build and print a request without sending it using offline mode:
$ http --offline pie.dev/post hello=offline
Use Github API to post a comment on an issue with authentication:
$ http -a USERNAME POST https://api.github.com/repos/httpie/httpie/issues/83/comments body='HTTPie is awesome! :heart:'
Upload a file using redirected input:
$ http pie.dev/post < files/data.json
Download a file and save it via redirected output:
$ http pie.dev/image/png > image.png
Download a file wget
style:
$ http --download pie.dev/image/png
Use named sessions to make certain aspects of the communication persistent between requests to the same host:
$ http --session=logged-in -a username:password pie.dev/get API-Key:123
$ http --session=logged-in pie.dev/headers
Set a custom Host
header to work around missing DNS records:
$ http localhost:8000 Host:example.com
What people are saying
OMG httpie is love at first use. It'll be hard for me to give up curl (as I've been using it forever) but will happily ditch it for httpie.
— Cindy Sridharan (@copyconstruct) August 4, 2016
It's sad to know this good tool late. Anyway, it's really useful and cool! #httpiehttps://t.co/m6thzdfm8f
— HAHWUL (@hahwul) November 30, 2020
Httpie: A CLI http client that will make you smile https://t.co/fZojjvYnu2
— Hacker News (@newsycombinator) October 20, 2015
"apt install httpie" gives you a really fancy #cli tool to browse web #APIs. More details at https://t.co/VtzAVzl4d7 #FOSS rulez! pic.twitter.com/MSQBJO4qLI
— Markus (@therealztarbug) January 27, 2021
why did I not know about @httpie sooner?! @ksqlDB rest apis with curl:
— JT (@SmithJohntaylor) December 17, 2020
curl -X “POST” “http://ksqldb-server:8088/ksql” \
-H “Accept: application/vnd.ksql.v1+json” \
-d ‘{“ksql”:“LIST STREAMS;“}’
httpie:
http POST http://localhost:8088/ksql ksql=‘LIST STREAMS;’
Not kidding, but I think I literally saved 10 hours this week using #HTTPie instead of #curl. If you are still on curl, you gotta learn how to use httpie. Its intutitive AF and so damn easy to use and extend #winning
— Abhay Bhargav (@abhaybhargav) September 23, 2018
If you're in need of a great CLI tool to use with HTTP servers, RESTful APIs, and web services you're in luck. HTTPie from @jakubroztocil is the perfect solution 🤗 Part of December's #GHReleaseRadar https://httpie.org/ (@github) January 11, 2019
I don't know why I didn't use HTTPie till now. Such an elegant tool for anything Http. Kudos. https://t.co/USseWVzVQD#http #httpie
— Siddharth (@sid_thinketh) June 1, 2019
Holy crap, https://t.co/G3RO6QaS has changed my workflow almost as much as switching from notepad did.
— Luke (@girasquid) April 3, 2012
I can't believe I haven't used HTTPie https://httpie.org sooner. Especially given how many APIs I have created / worked on.
— @webology November 11, 2015
I think I'm in love.. httpie @ http://t.co/MKKT0wCa - "http GET http://t.co/fFPnSRY4" in your console + pygments, etc!
— Ilya Grigorik (@igrigorik) March 5, 2012
#httpie
— Jay Kadam (@KADAMJAYV) June 21, 2019
I have to talk to external #API a lot which is painful to use, #httpie is super human friendly and helps #bootstrapping or testing calls to unknown endpoints.
HTTPie (@clihttp) has more or less replaced curl for me. <3
— ian molee (@ianfoo) March 6, 2020
Never thought file upload would be as simple as this,
— Prasanna (@worldofprasanna) January 7, 2018
http POST :8080/events < events.json#httpie #awesommee
I’ve probably mentioned @clihttp before, but it’s built-in JSON support alone makes it worth using. https://t.co/wXQ2iGJFn3
— Roy Clarkson (@royclarkson) April 6, 2017
blown away by httpie, great CLI for consuming/testing REST apis https://t.co/viwRVRgK6w pic.twitter.com/Xcpw8STgl0
— n1k0 (@n1k0) February 4, 2015
httpie is a command-line curl-like utility which is just a joy to use. Syntax coloring and wonderful UX for APIs
— Patrick McKenzie (@patio11) November 11, 2015
Absolutely in love! #httpie https://t.co/aibV0ZRzTs via @clihttp
— Yash Arora 🏳️🌈 (@zwattic) March 7, 2017
huge thanks for #httpie - the best http client - end of :)
— lauren (@flatpooks) September 5, 2017
I love httpie. That's all.
— Jeff Boshers (@boundbystars) January 22, 2015
Who uses HTTPie
Developers all around the world rely on HTTPie for API testing. Here is a few of the companies where engineers use it, and/or that use HTTPie in their API docs.