Install the complete package with local command reference and every published mode.
install curlcurlUse
curl <url|host|me> [options]curl meuse the current host
curl example.comsend a GET request and show status and body
curl example.com -Ishow the final response headers only
curl example.com -s [file]save the response; use the URL filename when omitted
curl example.com -X POST -d "a=1"send a request body
-X <method>set the HTTP method
-d <data>set the request body; defaults to POST
-H "Name: value"add a request header; may be repeated
-u <user>use HTTP Basic authentication through a hidden password prompt
-c '{"name":"value"}'send cookies from a JSON object
-s [file] | -o <file>save the response on the host
-aappend instead of replacing; requires -s or -o
-iinclude final response headers
-Ishow final response headers only
-jshow status, URL, headers and body as structured JSON
-edit @editopen the response body in the text editor through .lil.tmp
-code @codeopen the response body in the code editor through .lil.tmp
-t [seconds]use 5 seconds or a custom timeout from 1 to 300
-Tuse a 300-second timeout
-4 | -6use IPv4 or IPv6 when
-kallow an insecure TLS certificate
-rdo not follow redirects
Start with
Keep passwords out of command history: -u <user> prompts for a secret, while cookies and -d bodies typed into commands can remain visible. By default TLS certificates are checked and redirects are followed (up to five); -k removes TLS verification, while -r prevents redirects. Without the PHP -4/-6 explicitly require
-j always returns one predictable JSON object. If the body itself is valid JSON, the body field contains the parsed value; otherwise it contains text. -edit and -code write the response body to the protected core-root buffer .lil.tmp and immediately open it in the selected installed editor. The buffer is cleared by exit, kill and kill -cache.
TLS certificates and redirects are handled safely by default. Use -k or -r only deliberately. Editor modes are for textual responses only and cannot be combined with -s or -o.
Run the prepared examples directly on the page. Their results are prebuilt and shown in the browser; no terminal command is executed on the server.
Install the current compatible version. Choose Base for the complete feature set or Minimum for the reduced package; use upgrade to update a module that is already installed.
Base and Minimum are two packages of the same current module release, not separate command versions.
Install the complete package with local command reference and every published mode.
install curlInstall the reduced package. Local reference is omitted;
install curl -mInstall exactly this published version.
install curl -v 1.2.5Ask upgrade to check compatibility and replace the installed block only when needed.
upgrade curlRemove the extension block while leaving the core and unrelated modules intact.
install curl -uExamples are copyable command lines, not actions executed by this website. Review paths, permissions and destructive flags before running them on a real project.
curl https://example.comIllustrative network snapshot — not a live request
HTTP: 200
URL: https://example.com/
<!doctype html>
<html>…</html>curl meIllustrative network snapshot — not a live request
HTTP: 200
URL: https://example.com/
<!doctype html>
<html>…</html>curl https://example.com -IIllustrative network snapshot — not a live request
HTTP/2 200
content-type: text/html; charset=UTF-8
cache-control: max-age=86000curl https://example.com -iIllustrative network snapshot — not a live request
HTTP/2 200
content-type: text/html; charset=UTF-8
<!doctype html>
<html>…</html>curl https://example.com -jIllustrative network snapshot — not a live request
{
"status": 200,
"url": "https://example.com/",
"headers": [
"HTTP/2 200",
"content-type: text/html; charset=UTF-8"
],
"body": "<html>…</html>"
}curl https://example.com -X POST -d "name=lil"Illustrative network snapshot — not a live request
HTTP: 200
URL: https://example.com/
Example response to a POST request; the server may reject POST or return another status.curl https://example.com -d "name=lil"Illustrative network snapshot — not a live request
HTTP: 200
URL: https://example.com/
Example response to a POST request; the server may reject POST or return another status.curl https://example.com -H "Accept: application/json"Illustrative network snapshot — not a live request
HTTP: 200
URL: https://example.com/
Request contains custom headers; the remote reply depends on the endpoint.curl https://example.com -H "Accept: application/json" -H "X-Demo: 1"Illustrative network snapshot — not a live request
HTTP: 200
URL: https://example.com/
Request contains custom headers; the remote reply depends on the endpoint.curl https://example.com -c '{"theme":"dark"}'Illustrative network snapshot — not a live request
HTTP: 200
URL: https://example.com/
Request includes Cookie: theme=dark; the server decides how to respond.curl https://example.com -u demoIllustrative network snapshot — not a live request
A separate secret-password prompt appears before the request is sent.curl https://example.com -sIllustrative network snapshot — not a live request
sandbox/
index.html
The response body is saved on the hosting account.curl https://example.com -s tmp/example.htmlIllustrative network snapshot — not a live request
sandbox/tmp/
example.html
The response body is saved on the hosting account.curl https://example.com -o tmp/example.htmlIllustrative network snapshot — not a live request
sandbox/tmp/
example.html
The response body is saved on the hosting account.curl https://example.com -o tmp/example.html -aIllustrative network snapshot — not a live request
sandbox/tmp/
example.html
The body is appended to the existing file.curl https://example.com -tIllustrative network snapshot — not a live request
HTTP: 200
URL: https://example.com/
Timeout option changes the maximum wait, not the response format.curl https://example.com -t 2Illustrative network snapshot — not a live request
HTTP: 200
URL: https://example.com/
Timeout option changes the maximum wait, not the response format.curl https://example.com -TIllustrative network snapshot — not a live request
HTTP: 200
URL: https://example.com/
Timeout option changes the maximum wait, not the response format.curl https://example.com -4Illustrative network snapshot — not a live request
HTTP: 200
URL: https://example.com/
Requested IP family IPv4 (requires PHP cURL).curl https://example.com -6Illustrative network snapshot — not a live request
HTTP: 200
URL: https://example.com/
Requested IP family IPv6 (requires PHP cURL).curl https://example.com -rIllustrative network snapshot — not a live request
HTTP: 200
URL: https://example.com/
Redirect following disabled; response status depends on endpoint.curl https://example.com -kIllustrative network snapshot — not a live request
HTTP: 200
URL: https://example.com/
Certificate verification disabled for this diagnostic request.curl https://example.com -editIllustrative network snapshot — not a live request
The installed text editor opens the response in a protected temporary file.curl https://example.com -codeIllustrative network snapshot — not a live request
The installed code editor opens the response in a protected temporary file.curl https://example.com -j -codeIllustrative network snapshot — not a live request
The installed code editor opens the response in a protected temporary file as formatted JSON.curl https://example.com -edit -s tmp/example.htmlIllustrative network snapshot — not a live request
Editor mode cannot be combined with -s or -ocurl https://example.com -aIllustrative network snapshot — not a live request
Append requires an output filecurl ftp://example.comIllustrative network snapshot — not a live request
Invalid URLcurl https://example.com -4 -6Illustrative network snapshot — not a live request
Choose either IPv4 or IPv6curl https://example.com -X 9badIllustrative network snapshot — not a live request
Invalid HTTP methodcurl https://example.com -H "broken"Illustrative network snapshot — not a live request
Invalid headercurl https://example.com -c not-jsonIllustrative network snapshot — not a live request
Invalid cookie JSONcurl https://example.com -t 301Illustrative network snapshot — not a live request
Invalid timeoutcurl https://example.com -oIllustrative network snapshot — not a live request
Output file requiredcurl https://example.com -edit -codeIllustrative network snapshot — not a live request
Choose one editor