New year, new features! Over the past week, we’ve been primarily focusing on our overall architecture and under the hood improvements that will unlock work throughout the year. In addition to that, we’ve got a couple of user-visible goodies ready for you as well.
Check out what's new 👇
HTTPie for Web & Desktop
📦 cURL command generation, and more
Open the preview and select the export format you like. Make some changes to your request and see them instantly reflected in the code preview — it’s like a WYSIWYG editor for API calls code. Hit the three dots at the right, copy the generated code to export and share. Easy!
- Small improvements and optimizations.
HTTPie for Terminal
🌲 More robust and user-friendly nested JSON syntax
The nested JSON syntax extends the HTTPie request language and through its compactness and expressiveness offers a productivity boost when talking to JSON APIs. It allows you to craft complex JSON structures without worrying about curly braces, quotes, or backlashes.
This syntax, together with the rest of the HTTPie language, will eventually find its way to HTTPie for Web & Desktop as well, so we wanted to make extra sure it’s up to HTTPie’s standards before we release it to the wild.
With the help of our users, we identified various edge cases and ended up re-writing the underlying implementation to be much more robust. On the more user-visible side, we now offer guiding syntax and type errors instead of silently accepting the broken input, for example:
$ http --offline --print=B pie.dev/post "foo[bar]=baz" "foo[quux:=1"
HTTPie Syntax Error: Expecting ']' foo[quux ^
$ http --offline --print=B pie.dev/post "foo[bar]baz[quux]:=2"
HTTPie Syntax Error: Expecting '[' foo[bar]baz[quux] ^^^
$ http --offline --print=B pie.dev/post "foo[bar]=baz" "foo:=2"
HTTPie Type Error: Can't perform 'index' based access on 'foo' which has a type of 'object' but this operation requires a type of 'array'. foo ^^^