🥧 HTTPie CLI — modern, user-friendly command-line HTTP client for the API era. JSON support, colors, sessions, downloads, plugins & more.
Go to file
Batuhan Taskaya d03e3f4e14
Implement support for multiple headers with the same name in sessions (#1335)
* Properly remove duplicate Cookie headers

* Implement support for multiple headers with the same name in sessions

* More testing

* Cleanup

* Remove duplicated test, cleanup

* Fix pycodestyle

* CHANGELOG

Co-authored-by: Jakub Roztocil <jakub@roztocil.co>
2022-04-03 06:48:31 -07:00
.github Bump peter-evans/create-or-update-comment from 1 to 2 (#1332) 2022-03-22 22:50:08 +03:00
docs Add httpie cli plugins in favor of the new cli namespace. (#1320) 2022-04-03 06:06:42 -07:00
extras docs: format the benchmark docs 2022-01-24 18:20:03 +03:00
httpie Implement support for multiple headers with the same name in sessions (#1335) 2022-04-03 06:48:31 -07:00
tests Implement support for multiple headers with the same name in sessions (#1335) 2022-04-03 06:48:31 -07:00
.editorconfig Update links to HTTPS 2019-08-30 10:07:01 +02:00
.gitignore Add Chocolatey packaging information (#1172) 2021-10-07 13:53:11 +02:00
.packit.yaml Disable additional repos 2022-02-08 12:49:33 +03:00
AUTHORS.md Switch from reStructuredText to Markdown and add docs/ (#1139) 2021-09-06 17:36:13 +02:00
CHANGELOG.md Implement support for multiple headers with the same name in sessions (#1335) 2022-04-03 06:48:31 -07:00
CODE_OF_CONDUCT.md Add a workflow to check documentations (#1151) 2021-09-09 15:52:24 +02:00
CONTRIBUTING.md Remove 3.6 support / discontinue less available platforms (#1267) 2022-01-14 08:49:05 -08:00
LICENSE 2022 (#1259) 2022-01-26 17:45:03 +03:00
Makefile Fix make brew-test 2022-01-21 19:48:35 +01:00
MANIFEST.in Switch from reStructuredText to Markdown and add docs/ (#1139) 2021-09-06 17:36:13 +02:00
pytest.ini Mark stdin warning related tests with requires_external_processes (#1289) 2022-02-01 01:52:07 -08:00
README.md Update README.md 2021-10-07 16:21:36 +02:00
SECURITY.md Tweak 2022-03-07 23:29:48 +03:00
setup.cfg Expand the pytest configuration (#1161) 2021-09-20 17:36:03 +02:00
setup.py Ping werkzeug to <2.1.0 (#1345) 2022-04-01 14:28:59 +03:00
snapcraft.yaml Fix snapcraft packaging (#1235) 2021-12-08 01:20:58 -08:00


HTTPie

HTTPie: human-friendly CLI HTTP client for the API era

HTTPie (pronounced aitch-tee-tee-pie) is a command-line HTTP client. Its goal is to make CLI interaction with web services as human-friendly as possible. HTTPie is designed for testing, debugging, and generally interacting with APIs & HTTP servers. The http & https commands allow for creating and sending arbitrary HTTP requests. They use simple and natural syntax and provide formatted and colorized output.

Docs Latest version Build Coverage Twitter Chat

HTTPie in action

Getting started

Features

  • Expressive and intuitive syntax
  • Formatted and colorized terminal output
  • Built-in JSON support
  • Forms and file uploads
  • HTTPS, proxies, and authentication
  • Arbitrary request data
  • Custom headers
  • Persistent sessions
  • wget-like downloads

See all features →

Examples

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

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:'

See more examples →

Community & support

Contributing

Have a look through existing Issues and Pull Requests that you could help with. If you'd like to request a feature or report a bug, please create a GitHub Issue using one of the templates provided.

See contribution guide →