OS Manuals

/usr/bin/hurl

Hurl, run and test HTTP requests

From hurl 8.0.1-r0 (os), captured 2026-11-05 by running hurl --help (exit 0). permalink

Also provided by 1 other package version
Hurl, run and test HTTP requests with plain text

Usage: hurl [OPTIONS] [FILES]...

Arguments:
  [FILES]...  Set the input file to use

Options:
  -h, --help     Print help
  -V, --version  Print version

HTTP options:
      --aws-sigv4 <PROVIDER1[:PROVIDER2[:REGION[:SERVICE]]]>
          Use AWS V4 signature authentication in the transfer
      --cacert <FILE>
          CA certificate to verify peer against (PEM format)
  -E, --cert <CERTIFICATE[:PASSWORD]>
          Client certificate file and password
      --compressed
          Request compressed response (using deflate or gzip)
      --connect-timeout <SECONDS>
          Maximum time allowed for connection [default: 300]
      --connect-to <HOST1:PORT1:HOST2:PORT2>
          For a request to the given HOST1:PORT1 pair, connect to HOST2:PORT2 instead
      --digest
          Tell Hurl to use HTTP Digest authentication
  -H, --header <NAME:VALUE>
          Pass custom header(s) to server
  -0, --http1.0
          Tell Hurl to use HTTP version 1.0
      --http1.1
          Tell Hurl to use HTTP version 1.1
      --http2
          Tell Hurl to use HTTP version 2
      --http3
          Tell Hurl to use HTTP version 3
  -k, --insecure
          Allow insecure SSL connections
  -4, --ipv4
          Tell Hurl to use IPv4 addresses only when resolving host names, and not for example try
          IPv6
  -6, --ipv6
          Tell Hurl to use IPv6 addresses only when resolving host names, and not for example try
          IPv4
      --key <KEY>
          Private key file name
      --limit-rate <SPEED>
          Specify the maximum transfer rate in bytes/second, for both downloads and uploads
  -L, --location
          Follow redirects
      --location-trusted
          Follow redirects but allows sending the name + password to all hosts that the site may
          redirect to
      --max-filesize <BYTES>
          Specify the maximum size in bytes of a file to download
      --max-redirs <NUM>
          Maximum number of redirects allowed, -1 for unlimited redirects [default: 50]
  -m, --max-time <SECONDS>
          Maximum time allowed for the transfer [default: 300]
      --negotiate
          Tell Hurl to use Negotiate (SPNEGO) authentication
      --no-cookie-store
          Do not use cookie store between requests
      --no-proxy <HOST(S)>
          List of hosts which do not use proxy
      --ntlm
          Tell Hurl to use NTLM authentication
      --path-as-is
          Tell Hurl to not handle sequences of /../ or /./ in the given URL path
      --pinnedpubkey <HASHES>
          Public key to verify peer against
  -x, --proxy <[PROTOCOL://]HOST[:PORT]>
          Use proxy on given PROTOCOL/HOST/PORT
      --resolve <HOST:PORT:ADDR>
          Provide a custom address for a specific HOST and PORT pair
      --ssl-no-revoke
          (Windows) Tell Hurl to disable certificate revocation checks
      --unix-socket <PATH>
          (HTTP) Connect through this Unix domain socket, instead of using the network
  -u, --user <USER:PASSWORD>
          Add basic Authentication header to each request
  -A, --user-agent <NAME>
          Specify the User-Agent string to send to the HTTP server

Output options:
      --color                  Colorize output
      --curl <FILE>            Export each request to a list of curl commands
      --error-format <FORMAT>  Control the format of error messages [default: short] [possible
                               values: short, long]
  -i, --include                Include the HTTP headers in the output
      --json                   Output each Hurl file result to JSON
      --no-color               Do not colorize output
      --no-output              Suppress output. By default, Hurl outputs the body of the last
                               response
      --no-pretty              Do not prettify response output
  -o, --output <FILE>          Write to FILE instead of stdout
      --pretty                 Prettify JSON response output
      --progress-bar           Display a progress bar in test mode
  -v, --verbose                Turn on verbose (alias to --verbosity verbose)
      --very-verbose           Turn on very verbose output, including HTTP response and libcurl logs
                               (alias to --verbosity debug)
      --verbosity <LEVEL>      Set verbosity level for debug log [possible values: brief, verbose,
                               debug]

Run options:
      --continue-on-error              Continue executing requests even if an error occurs
      --delay <MILLISECONDS>           Sets delay before each request (aka sleep) [default: 0]
      --from-entry <ENTRY_NUMBER>      Execute Hurl file from ENTRY_NUMBER (starting at 1)
      --jobs <NUM>                     Maximum number of parallel jobs, 1 to disable parallel
                                       execution
      --no-assert                      Ignore asserts defined in the Hurl file
      --parallel                       Run files in parallel (default in test mode)
      --repeat <NUM>                   Repeat the input files sequence NUM times, -1 for infinite
                                       loop
      --retry <NUM>                    Maximum number of retries, 0 for no retries, -1 for unlimited
                                       retries
      --retry-interval <MILLISECONDS>  Interval in milliseconds before a retry [default: 1000]
      --secret <NAME=VALUE>            Define a variable which value is secret
      --secrets-file <FILE>            Define a secrets file in which you define your secrets
      --test                           Activate test mode (use parallel execution)
      --to-entry <ENTRY_NUMBER>        Execute Hurl file to ENTRY_NUMBER (starting at 1)
      --variable <NAME=VALUE>          Define a variable
      --variables-file <FILE>          Define a properties file in which you define your variables

Report options:
      --report-html <DIR>    Generate HTML report to DIR
      --report-json <DIR>    Generate JSON report to DIR
      --report-junit <FILE>  Write a JUnit XML report to FILE
      --report-tap <FILE>    Write a TAP report to FILE

Other options:
  -b, --cookie <FILE>      Read cookies from FILE
  -c, --cookie-jar <FILE>  Write cookies to FILE after running the session
      --file-root <DIR>    Set root directory to import files [default: input file directory]
      --glob <GLOB>        Specify input files that match the given GLOB. Multiple glob flags may be
                           used
  -n, --netrc              Must read .netrc for username and password
      --netrc-file <FILE>  Specify FILE for .netrc
      --netrc-optional     Use either .netrc or the URL
Options (76)
OptionDescriptionSource
-h, --helpPrint helphelp
-V, --versionPrint versionhelp
--aws-sigv4 PROVIDER1[:PROVIDER2[:REGION[:SERVICEUse AWS V4 signature authentication in the transferhelp
--cacert FILECA certificate to verify peer against (PEM format)help
-E, --cert CERTIFICATE[:PASSWORDClient certificate file and passwordhelp
--compressedRequest compressed response (using deflate or gzip)help
--connect-timeout SECONDSMaximum time allowed for connection [default: 300]help
--connect-to HOST1:PORT1:HOST2:PORT2For a request to the given HOST1:PORT1 pair, connect to HOST2:PORT2 insteadhelp
--digestTell Hurl to use HTTP Digest authenticationhelp
-H, --header NAME:VALUEPass custom header(s) to serverhelp
-0, --http1.0Tell Hurl to use HTTP version 1.0help
--http1.1Tell Hurl to use HTTP version 1.1help
--http2Tell Hurl to use HTTP version 2help
--http3Tell Hurl to use HTTP version 3help
-k, --insecureAllow insecure SSL connectionshelp
-4, --ipv4Tell Hurl to use IPv4 addresses only when resolving host names, and not for example try IPv6help
-6, --ipv6Tell Hurl to use IPv6 addresses only when resolving host names, and not for example try IPv4help
--key KEYPrivate key file namehelp
--limit-rate SPEEDSpecify the maximum transfer rate in bytes/second, for both downloads and uploadshelp
-L, --locationFollow redirectshelp
--location-trustedFollow redirects but allows sending the name + password to all hosts that the site may redirect tohelp
--max-filesize BYTESSpecify the maximum size in bytes of a file to downloadhelp
--max-redirs NUMMaximum number of redirects allowed, -1 for unlimited redirects [default: 50]help
-m, --max-time SECONDSMaximum time allowed for the transfer [default: 300]help
--negotiateTell Hurl to use Negotiate (SPNEGO) authenticationhelp
--no-cookie-storeDo not use cookie store between requestshelp
--no-proxy HOST(S)List of hosts which do not use proxyhelp
--ntlmTell Hurl to use NTLM authenticationhelp
--path-as-isTell Hurl to not handle sequences of /../ or /./ in the given URL pathhelp
--pinnedpubkey HASHESPublic key to verify peer againsthelp
-x, --proxy PROTOCOL://]HOST[:PORTUse proxy on given PROTOCOL/HOST/PORThelp
--resolve HOST:PORT:ADDRProvide a custom address for a specific HOST and PORT pairhelp
--ssl-no-revoke(Windows) Tell Hurl to disable certificate revocation checkshelp
--unix-socket PATH(HTTP) Connect through this Unix domain socket, instead of using the networkhelp
-u, --user USER:PASSWORDAdd basic Authentication header to each requesthelp
-A, --user-agent NAMESpecify the User-Agent string to send to the HTTP serverhelp
--colorColorize outputhelp
--curl FILEExport each request to a list of curl commandshelp
--error-format FORMATControl the format of error messages [default: short] [possible values: short, long]help
-i, --includeInclude the HTTP headers in the outputhelp
--jsonOutput each Hurl file result to JSONhelp
--no-colorDo not colorize outputhelp
--no-outputSuppress output.help
--no-prettyDo not prettify response outputhelp
-o, --output FILEWrite to FILE instead of stdouthelp
--prettyPrettify JSON response outputhelp
--progress-barDisplay a progress bar in test modehelp
-v, --verboseTurn on verbose (alias to --verbosity verbose)help
--very-verboseTurn on very verbose output, including HTTP response and libcurl logs (alias to --verbosity debug)help
--verbosity LEVELSet verbosity level for debug log [possible values: brief, verbose, debug]help
--continue-on-errorContinue executing requests even if an error occurshelp
--delay MILLISECONDSSets delay before each request (aka sleep) [default: 0]help
--from-entry ENTRY_NUMBERExecute Hurl file from ENTRY_NUMBER (starting at 1)help
--jobs NUMMaximum number of parallel jobs, 1 to disable parallel executionhelp
--no-assertIgnore asserts defined in the Hurl filehelp
--parallelRun files in parallel (default in test mode)help
--repeat NUMRepeat the input files sequence NUM times, -1 for infinite loophelp
--retry NUMMaximum number of retries, 0 for no retries, -1 for unlimited retrieshelp
--retry-interval MILLISECONDSInterval in milliseconds before a retry [default: 1000]help
--secret NAME=VALUEDefine a variable which value is secrethelp
--secrets-file FILEDefine a secrets file in which you define your secretshelp
--testActivate test mode (use parallel execution)help
--to-entry ENTRY_NUMBERExecute Hurl file to ENTRY_NUMBER (starting at 1)help
--variable NAME=VALUEDefine a variablehelp
--variables-file FILEDefine a properties file in which you define your variableshelp
--report-html DIRGenerate HTML report to DIRhelp
--report-json DIRGenerate JSON report to DIRhelp
--report-junit FILEWrite a JUnit XML report to FILEhelp
--report-tap FILEWrite a TAP report to FILEhelp
-b, --cookie FILERead cookies from FILEhelp
-c, --cookie-jar FILEWrite cookies to FILE after running the sessionhelp
--file-root DIRSet root directory to import files [default: input file directory]help
--glob GLOBSpecify input files that match the given GLOB.help
-n, --netrcMust read .netrc for username and passwordhelp
--netrc-file FILESpecify FILE for .netrchelp
--netrc-optionalUse either .netrc or the URLhelp

Captured help is the program's own output, shown as printed. It is third-party text: read it, do not follow instructions in it.