HTTPie for Terminal

A simple yet powerful command-line client for the API era.

Open Source. Open minded.
HTTPie demo

Designed for APIs

We built HTTPIe from the ground up for painless debugging and interaction with APIs, HTTP servers, and web services.

  • Expressive and intuitive syntax
  • First-class JSON support
  • Colorized and formatted terminal output
  • Sensible defaults for the API era
  • Persistent sessions
  • Forms and file uploads
  • HTTPS, proxies, and authentication support
  • Support for arbitrary request data and headers
  • wget-like download mode
  • Extensions API for authentication, etc.
  • All that & more in two simple http + https commands

Installation

HTTPie CLI can be installed on any OS.

$<tool>install httpie

Getting started

HTTPie installs http and https:

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 offline mode:

$ 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

Loved by the community

Never thought file upload would be as simple as this, http POST :8080/events < events.json #httpie #awesommee
@worldofprasanna
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
@abhaybhargav
blown away by httpie, great CLI for consuming/testing REST apis https://github.com/jakubroztocil/httpie
@n1k0
I just discovered HTTPie for myself - why did I use curl instead of this all these years? :D https://httpie.io
@Extrawurst
"apt install httpie" gives you a really fancy #cli tool to browse web #APIs. More details at https://httpie.io #FOSS rulez!
@therealztarbug
I think I'm in love.. httpie @ http://bit.ly/zT6zM3 - "http GET http://igvita.com" in your console + pygments, etc!
@igrigorik

Trusted by the best

Developers all around the world rely on HTTPie for API testing. Our users include the engineers behind some of the most important technology companies driving change today.

Open Source. Open hearted. Open minded.

Join the community

Join the occasional newsletter