🥧 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 ff6f1887b0
[Major] UI Enhancements (#1321)
* Refactor tests to use a text-based standard output. (#1318)

* Implement new style `--help` (#1316)

* Implement man page generation (#1317)

* Implement rich progress bars. (#1324)

* Man page deployment & isolation. (#1325)

* Remove all unsorted usages in the CLI docs

* Implement isolated mode for man page generation

* Add a CI job for autogenerated files

* Distribute man pages through PyPI

* Pin the date for man pages. (#1326)

* Hide suppressed arguments from --help/man pages (#1329)

* Change download spinner to line (#1328)

* Regenerate autogenerated files when pushed against to master. (#1339)

* Highlight options (#1340)

* Additional man page enhancements (#1341)

* Group options by the parent category & highlight -o/--o

* Display (and underline) the METAVAR on man pages.

* Make help message processing more robust (#1342)

* Inherit `help` from `short_help`

* Don't mirror short_help directly.

* Fixup the serialization

* Use `pager` and `man` on `--manual` when applicable (#1343)

* Run `man $program` on --manual

* Page the output of `--manual` for systems that lack man pages

* Improvements over progress bars (separate bar, status line, etc.) (#1346)

* Redesign the --help layout.

* Make our usage of rich compatible with 9.10.0

* Add `HTTPIE_NO_MAN_PAGES`

* Make tests also patch os.get_terminal_size

* Generate CLI spec from HTTPie & Man Page Hook (#1354)

* Generate CLI spec from HTTPie & add man page hook

* Use the full command space for the option headers
2022-04-14 07:43:10 -07:00
.github [Major] UI Enhancements (#1321) 2022-04-14 07:43:10 -07:00
docs Add httpie cli plugins in favor of the new cli namespace. (#1320) 2022-04-03 06:06:42 -07:00
extras [Major] UI Enhancements (#1321) 2022-04-14 07:43:10 -07:00
httpie [Major] UI Enhancements (#1321) 2022-04-14 07:43:10 -07:00
tests [Major] UI Enhancements (#1321) 2022-04-14 07:43:10 -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 Add support for sending secure cookies over localhost (#1327) 2022-04-14 07:42:05 -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 [Major] UI Enhancements (#1321) 2022-04-14 07:43:10 -07: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 [Major] UI Enhancements (#1321) 2022-04-14 07:43:10 -07: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 →