loading
loading
Utilities
A command-line HTTP client that makes interacting with web services as human-friendly as possible.
overview
HTTPie is a command-line HTTP client designed around readability. Where raw curl strings get dense fast, HTTPie uses a clear syntax for headers, query parameters, and JSON or form fields, so a request reads like what it does. That clarity makes it the natural choice for testing, debugging, and poking at APIs and HTTP servers during recon or development.
It serializes data the way you expect: key=value becomes a JSON field, key==value becomes a query parameter, and Header:value sets a header, all from one flat command line. Built-in support for basic and digest auth, proxies, redirects, custom TLS certificates, and multipart uploads means most one-off HTTP tasks need no extra tooling. The check-status flag lets it signal HTTP errors through its exit code, which is handy in scripted workflows.
On Trickest, HTTPie is a Utilities node that takes a URL and request options and writes a file and a folder with the response. Use it to fetch an endpoint, exercise an API as part of a larger pipeline, or capture a response that a later node parses.
source github.com/httpie/httpie
use cases
Send GET or POST requests with JSON fields, headers, and auth in a readable one-liner to inspect how an endpoint responds.
Call a URL as a node and write the response to a file that a downstream step parses or routes.
Use basic or digest auth, custom headers, and client certificates to reach endpoints that require credentials or mTLS.
Serialize command-line fields as form data or force a multipart request to test uploads and form handlers.
reference
| Name | Type | Flag | Description |
|---|---|---|---|
| url | STRING | · | Request URL to call. |
| http-method | STRING | · | HTTP method for the request, e.g. GET or POST. |
| http-headers | STRING | · | Request headers using ':' as the key-value separator, e.g. Cookie:foo=bar. |
| url-parameters | STRING | · | Query parameters appended to the URL using '==' as the separator, e.g. search==httpie. |
| authentication | STRING | -a | Credentials in USER:PASS format. |
| auth-type | STRING | --auth-type | Authentication mechanism: basic (default) or digest. |
| follow-redirects | BOOLEAN | -F | Follow 30x Location redirects. |
| verify | STRING | --verify | Set to no or false to skip the host's SSL certificate check. |
Showing key inputs. HTTPie exposes 27 inputs in total.
| Name | Type | Flag | Description |
|---|---|---|---|
| url | STRING | · | Request URL |
| http | BOOLEAN | http | Httpie http method |
| https | BOOLEAN | https | Httpie https method |
| proxy | STRING | --proxy | Format: Protocol:PROXY_URL. String mapping protocol to the URL of the proxy. |
| verify | STRING | --verify | Set to "no" or "false" to skip checking the host's SSL certificate. Default: "yes" or "true". You can set REQUESTS_CA_BUNDLE environment variable. |
| timeout | STRING | -timeout | The connection timeout of the request in seconds. |
| boundary | STRING | --boundary | Specify a custom boundary string for multipart/form-data requests. Has effect only with --form. |
| compress | BOOLEAN | -x | Content compressed (encoded) with Deflate algorithm. The Content-Encoding header is set to deflate. |
| auth-type | STRING | --auth-type | The authentication mechanism to use. Default: basic. Options: basic - Basic HTTP auth; digest - Digest HTTP auth. |
| multipart | BOOLEAN | --multipart | Always sends a multipart/form-data request. |
| certificate | FILE | --cert | Specify a certificate to use as cliend side SSL certificate. |
| http-method | STRING | · | Http method |
| max-headers | STRING | --max-headers | The maximum number of response headers to be read before giving up. |
| private-key | STRING | --cert-key | The private key to use with SSL. Only needed if there is no key in provided certificate file. |
| check-status | BOOLEAN | --check-status | By default, HTTPie exits with 0 when no network or other fatal errors occur. |
| http-headers | STRING | · | Http Headers. Use ":" as a key-value separator. Example: Cookie:foo=bar. |
| max-redirects | STRING | --max-redirects | By default, requests have a limit of 30 redirects (works with -f). |
| authentication | STRING | -a | Format : USER:PASS |
| url-parameters | STRING | · | URL parameters to be appended to the request URI. Use "==" as a key-value separator. Example: search==httpie. |
| open-ssl-cipher | STRING | --ciphers | A string in the OpenSSL cipher list format. |
| data-fields-json | STRING | · | Data fields to be serialized into a JSON object (use with -j). or form data (use with -f). Example: name=HTTPie. |
| follow-redirects | BOOLEAN | -F | Follow 30x Location redirects. |
| protocol-version | STRING | --ssl | The desired protocol version to use. This will default to SSL v2.3. |
| bypass-dot-segment | BOOLEAN | --path-as-is | Bypass dot segment (/../ or /./) URL squashing. |
| serialize-as-form-fields | BOOLEAN | -f | Data items from the command line are serialized as form fields. The Content-Type ise set to application/x-www-form-urlencoded (if not specified). The presence of any file fields results in a multipart/form-data request. |
| serialize-as-json-object | BOOLEAN | -j | Data items from the command line are serialized as a Json Object. The Content-Type and Accept headers are set to application/json(if not specified). |
| non-string-json-data-fields | STRING | · | Non-string JSON data fields (only with -j). Use ":=" as a separator. Example: awesome:=true. |
example
# GET with auth, follow redirects, skip TLS verify on a lab hosthttpie https -a user:pass -F --verify=no GET https://api.example.com/v1/statusHTTP/1.1 200 OKContent-Type: application/jsonServer: example-api { "status": "ok", "host": "api.example.com", "upstream": "app.example.com", "ip": "198.51.100.40"}guidance
Reach for HTTPie when you want readable, scriptable HTTP requests for testing APIs and servers. For high-throughput probing of many hosts, httpx is built for scale. For raw control over every byte of a request, curl goes lower-level.
The ubiquitous low-level client. More control over raw requests, far less readable syntax.
Probes thousands of hosts for status, title, and tech. Built for scale, not single readable requests.
Minimal liveness checker. Answers 'is it up' rather than crafting a full request.
faq
related
Import, export, and link workflow data with Airtable.
Decode Android APK files into smali sources and resources.
Check a file's values against conditions and exit with a matching code.
Extract all hosted zones from AWS Route53.
Output file lines by batch size, given START_LINE and END_LINE.
Extract a batch range from a file's lines or a folder's files, with parallel processing.
A URL feeds HTTPie, which sends the request and writes the response as a queryable output a later node can parse.
Facts on this page come from the live Trickest tool library.