{
  "name": "curl",
  "description": "Transfer a URL",
  "options": [
    {
      "names": [
        "-a",
        "--append"
      ],
      "description": "Append to target file when uploading"
    },
    {
      "names": [
        "-E",
        "--cert"
      ],
      "description": "Client certificate file and password",
      "takes_arg": true,
      "arg": {
        "name": "certificate[:password]"
      }
    },
    {
      "names": [
        "-K",
        "--config"
      ],
      "description": "Read config from a file",
      "takes_arg": true,
      "arg": {
        "name": "file",
        "template": "filepaths"
      }
    },
    {
      "names": [
        "-C",
        "--continue-at"
      ],
      "description": "Resumed transfer offset",
      "takes_arg": true,
      "arg": {
        "name": "offset"
      }
    },
    {
      "names": [
        "-b",
        "--cookie"
      ],
      "description": "Send cookies from string/file",
      "takes_arg": true,
      "arg": {
        "name": "data or filename",
        "template": "filepaths"
      }
    },
    {
      "names": [
        "-c",
        "--cookie-jar"
      ],
      "description": "Write cookies to <filename> after operation",
      "takes_arg": true,
      "arg": {
        "name": "filename",
        "template": "filepaths"
      }
    },
    {
      "names": [
        "-d",
        "--data"
      ],
      "description": "HTTP POST data",
      "takes_arg": true,
      "arg": {
        "name": "data"
      }
    },
    {
      "names": [
        "-q",
        "--disable"
      ],
      "description": "Disable .curlrc"
    },
    {
      "names": [
        "-D",
        "--dump-header"
      ],
      "description": "Write the received headers to <filename>",
      "takes_arg": true,
      "arg": {
        "name": "filename",
        "template": "filepaths"
      }
    },
    {
      "names": [
        "-f",
        "--fail"
      ],
      "description": "Fail silently (no output at all) on HTTP errors"
    },
    {
      "names": [
        "-F",
        "--form"
      ],
      "description": "Specify multipart MIME data",
      "takes_arg": true,
      "arg": {
        "name": "content"
      }
    },
    {
      "names": [
        "-P",
        "--ftp-port"
      ],
      "description": "Use PORT instead of PASV",
      "takes_arg": true,
      "arg": {
        "name": "address"
      }
    },
    {
      "names": [
        "-G",
        "--get"
      ],
      "description": "Put the post data in the URL and use GET"
    },
    {
      "names": [
        "-g",
        "--globoff"
      ],
      "description": "Disable URL sequences and ranges using {} and []"
    },
    {
      "names": [
        "-I",
        "--head"
      ],
      "description": "Show document info only"
    },
    {
      "names": [
        "-H",
        "--header"
      ],
      "description": "Pass custom header(s) to server",
      "takes_arg": true,
      "arg": {
        "name": "header/file",
        "suggestions": [
          "Content-Type: application/json",
          "Content-Type: application/x-www-form-urlencoded"
        ]
      }
    },
    {
      "names": [
        "-h",
        "--help"
      ],
      "description": "This help text"
    },
    {
      "names": [
        "-0",
        "--http1.0"
      ],
      "description": "Use HTTP 1.0"
    },
    {
      "names": [
        "-i",
        "--include"
      ],
      "description": "Include protocol response headers in the output"
    },
    {
      "names": [
        "-k",
        "--insecure"
      ],
      "description": "Allow insecure server connections when using SSL"
    },
    {
      "names": [
        "-4",
        "--ipv4"
      ],
      "description": "Resolve names to IPv4 addresses"
    },
    {
      "names": [
        "-6",
        "--ipv6"
      ],
      "description": "Resolve names to IPv6 addresses"
    },
    {
      "names": [
        "-j",
        "--junk-session-cookies"
      ],
      "description": "Ignore session cookies read from file"
    },
    {
      "names": [
        "-l",
        "--list-only"
      ],
      "description": "List only mode"
    },
    {
      "names": [
        "-L",
        "--location"
      ],
      "description": "Follow redirects"
    },
    {
      "names": [
        "-M",
        "--manual"
      ],
      "description": "Display the full manual"
    },
    {
      "names": [
        "-m",
        "--max-time"
      ],
      "description": "Maximum time allowed for the transfer",
      "takes_arg": true,
      "arg": {
        "name": "seconds"
      }
    },
    {
      "names": [
        "-n",
        "--netrc"
      ],
      "description": "Must read .netrc for user name and password"
    },
    {
      "names": [
        "-:",
        "--next"
      ],
      "description": "Make next URL use its separate set of options"
    },
    {
      "names": [
        "-N",
        "--no-buffer"
      ],
      "description": "Disable buffering of the output stream"
    },
    {
      "names": [
        "-o",
        "--output"
      ],
      "description": "Write to file instead of stdout",
      "takes_arg": true,
      "arg": {
        "name": "file",
        "template": "filepaths"
      }
    },
    {
      "names": [
        "-#",
        "--progress-bar"
      ],
      "description": "Display transfer progress as a bar"
    },
    {
      "names": [
        "-x",
        "--proxy"
      ],
      "description": "[protocol://]host[:port] Use this proxy"
    },
    {
      "names": [
        "-U",
        "--proxy-user"
      ],
      "description": "Proxy user and password",
      "takes_arg": true,
      "arg": {
        "name": "user:password"
      }
    },
    {
      "names": [
        "-p",
        "--proxytunnel"
      ],
      "description": "Operate through an HTTP proxy tunnel (using CONNECT)"
    },
    {
      "names": [
        "-Q",
        "--quote"
      ],
      "description": "Send command(s) to server before transfer"
    },
    {
      "names": [
        "-r",
        "--range"
      ],
      "description": "Retrieve only the bytes within RANGE",
      "takes_arg": true,
      "arg": {
        "name": "range"
      }
    },
    {
      "names": [
        "-e",
        "--referer"
      ],
      "description": "Referrer URL",
      "takes_arg": true,
      "arg": {
        "name": "URL"
      }
    },
    {
      "names": [
        "-J",
        "--remote-header-name"
      ],
      "description": "Use the header-provided filename"
    },
    {
      "names": [
        "-O",
        "--remote-name"
      ],
      "description": "Write output to a file named as the remote file"
    },
    {
      "names": [
        "-R",
        "--remote-time"
      ],
      "description": "Set the remote file's time on the local output"
    },
    {
      "names": [
        "-X",
        "--request"
      ],
      "description": "Specify request command to use",
      "takes_arg": true,
      "arg": {
        "name": "command",
        "suggestions": [
          "GET",
          "HEAD",
          "POST",
          "PUT",
          "DELETE",
          "CONNECT",
          "OPTIONS",
          "TRACE",
          "PATCH"
        ]
      }
    },
    {
      "names": [
        "-S",
        "--show-error"
      ],
      "description": "Show error even when -s is used"
    },
    {
      "names": [
        "-s",
        "--silent"
      ],
      "description": "Silent mode"
    },
    {
      "names": [
        "-Y",
        "--speed-limit"
      ],
      "description": "Stop transfers slower than this",
      "takes_arg": true,
      "arg": {
        "name": "speed"
      }
    },
    {
      "names": [
        "-y",
        "--speed-time"
      ],
      "description": "Trigger 'speed-limit' abort after this time",
      "takes_arg": true,
      "arg": {
        "name": "seconds"
      }
    },
    {
      "names": [
        "-2",
        "--sslv2"
      ],
      "description": "Use SSLv2"
    },
    {
      "names": [
        "-3",
        "--sslv3"
      ],
      "description": "Use SSLv3"
    },
    {
      "names": [
        "-t",
        "--telnet-option"
      ],
      "description": "Set telnet option",
      "takes_arg": true,
      "arg": {
        "name": "val"
      }
    },
    {
      "names": [
        "-z",
        "--time-cond"
      ],
      "description": "Transfer based on a time condition",
      "takes_arg": true,
      "arg": {
        "name": "time"
      }
    },
    {
      "names": [
        "-1",
        "--tlsv1"
      ],
      "description": "Use TLSv1.0 or greater"
    },
    {
      "names": [
        "-T",
        "--upload-file"
      ],
      "description": "Transfer local FILE to destination",
      "takes_arg": true,
      "arg": {
        "name": "file",
        "template": "filepaths"
      }
    },
    {
      "names": [
        "-B",
        "--use-ascii"
      ],
      "description": "Use ASCII/text transfer"
    },
    {
      "names": [
        "-u",
        "--user"
      ],
      "description": "Server user and password",
      "takes_arg": true,
      "arg": {
        "name": "user:password"
      }
    },
    {
      "names": [
        "-A",
        "--user-agent"
      ],
      "description": "Send User-Agent <name> to server",
      "takes_arg": true,
      "arg": {
        "name": "name"
      }
    },
    {
      "names": [
        "-v",
        "--verbose"
      ],
      "description": "Make the operation more talkative"
    },
    {
      "names": [
        "-V",
        "--version"
      ],
      "description": "Show version number and quit"
    },
    {
      "names": [
        "-w",
        "--write-out"
      ],
      "description": "Use output FORMAT after completion",
      "takes_arg": true,
      "arg": {
        "name": "format"
      }
    },
    {
      "names": [
        "--abstract-unix-socket"
      ],
      "description": "Connect via abstract Unix domain socket",
      "takes_arg": true,
      "arg": {
        "name": "path"
      }
    },
    {
      "names": [
        "--alt-svc"
      ],
      "description": "Name> Enable alt-svc with this cache file",
      "takes_arg": true,
      "arg": {
        "name": "file",
        "template": "filepaths"
      }
    },
    {
      "names": [
        "--anyauth"
      ],
      "description": "Pick any authentication method"
    },
    {
      "names": [
        "--basic"
      ],
      "description": "Use HTTP Basic Authentication"
    },
    {
      "names": [
        "--cacert"
      ],
      "description": "CA certificate to verify peer against",
      "takes_arg": true,
      "arg": {
        "name": "file",
        "template": "filepaths"
      }
    },
    {
      "names": [
        "--capath"
      ],
      "description": "CA directory to verify peer against",
      "takes_arg": true,
      "arg": {
        "name": "dir",
        "template": "folders"
      }
    },
    {
      "names": [
        "--cert-status"
      ],
      "description": "Verify the status of the server certificate"
    },
    {
      "names": [
        "--cert-type"
      ],
      "description": "Certificate file type",
      "takes_arg": true,
      "arg": {
        "name": "type",
        "suggestions": [
          "DER",
          "PEM",
          "ENG"
        ]
      }
    },
    {
      "names": [
        "--ciphers"
      ],
      "description": "Of ciphers> SSL ciphers to use",
      "takes_arg": true,
      "arg": {
        "name": "list"
      }
    },
    {
      "names": [
        "--compressed"
      ],
      "description": "Request compressed response"
    },
    {
      "names": [
        "--compressed-ssh"
      ],
      "description": "Enable SSH compression"
    },
    {
      "names": [
        "--connect-timeout"
      ],
      "description": "Maximum time allowed for connection",
      "takes_arg": true,
      "arg": {
        "name": "seconds"
      }
    },
    {
      "names": [
        "--connect-to"
      ],
      "description": "Connect to host",
      "takes_arg": true,
      "arg": {
        "name": "HOST1:PORT1:HOST2:PORT2"
      }
    },
    {
      "names": [
        "--create-dirs"
      ],
      "description": "Create necessary local directory hierarchy"
    },
    {
      "names": [
        "--crlf"
      ],
      "description": "Convert LF to CRLF in upload"
    },
    {
      "names": [
        "--crlfile"
      ],
      "description": "Get a CRL list in PEM format from the given file",
      "takes_arg": true,
      "arg": {
        "name": "file",
        "template": "filepaths"
      }
    },
    {
      "names": [
        "--data-ascii"
      ],
      "description": "HTTP POST ASCII data",
      "takes_arg": true,
      "arg": {
        "name": "data"
      }
    },
    {
      "names": [
        "--data-binary"
      ],
      "description": "HTTP POST binary data",
      "takes_arg": true,
      "arg": {
        "name": "data"
      }
    },
    {
      "names": [
        "--data-raw"
      ],
      "description": "HTTP POST data, '@' allowed",
      "takes_arg": true,
      "arg": {
        "name": "data"
      }
    },
    {
      "names": [
        "--data-urlencode"
      ],
      "description": "HTTP POST data url encoded",
      "takes_arg": true,
      "arg": {
        "name": "data"
      }
    },
    {
      "names": [
        "--delegation"
      ],
      "description": "GSS-API delegation permission",
      "takes_arg": true,
      "arg": {
        "name": "LEVEL"
      }
    },
    {
      "names": [
        "--digest"
      ],
      "description": "Use HTTP Digest Authentication"
    },
    {
      "names": [
        "--disable-eprt"
      ],
      "description": "Inhibit using EPRT or LPRT"
    },
    {
      "names": [
        "--disable-epsv"
      ],
      "description": "Inhibit using EPSV"
    },
    {
      "names": [
        "--disallow-username-in-url"
      ],
      "description": "Disallow username in url"
    },
    {
      "names": [
        "--dns-interface"
      ],
      "description": "Interface to use for DNS requests",
      "takes_arg": true,
      "arg": {
        "name": "interface"
      }
    },
    {
      "names": [
        "--dns-ipv4-addr"
      ],
      "description": "IPv4 address to use for DNS requests",
      "takes_arg": true,
      "arg": {
        "name": "address"
      }
    },
    {
      "names": [
        "--dns-ipv6-addr"
      ],
      "description": "IPv6 address to use for DNS requests",
      "takes_arg": true,
      "arg": {
        "name": "address"
      }
    },
    {
      "names": [
        "--dns-servers"
      ],
      "description": "DNS server addrs to use",
      "takes_arg": true,
      "arg": {
        "name": "addresses"
      }
    },
    {
      "names": [
        "--doh-url"
      ],
      "description": "Resolve host names over DOH",
      "takes_arg": true,
      "arg": {
        "name": "URL"
      }
    },
    {
      "names": [
        "--egd-file"
      ],
      "description": "EGD socket path for random data",
      "takes_arg": true,
      "arg": {
        "name": "file",
        "template": "filepaths"
      }
    },
    {
      "names": [
        "--engine"
      ],
      "description": "Crypto engine to use",
      "takes_arg": true,
      "arg": {
        "name": "name"
      }
    },
    {
      "names": [
        "--etag-compare"
      ],
      "description": "Make a conditional HTTP request for the ETag read from the given file",
      "takes_arg": true,
      "arg": {
        "name": "file"
      }
    },
    {
      "names": [
        "--etag-save"
      ],
      "description": "Save an HTTP ETag to the specified file",
      "takes_arg": true,
      "arg": {
        "name": "file"
      }
    },
    {
      "names": [
        "--expect100-timeout"
      ],
      "description": "How long to wait for 100-continue",
      "takes_arg": true,
      "arg": {
        "name": "seconds"
      }
    },
    {
      "names": [
        "--fail-early"
      ],
      "description": "Fail on first transfer error, do not continue"
    },
    {
      "names": [
        "--fail-with-body"
      ],
      "description": "On HTTP errors, return an error and also output any HTML response"
    },
    {
      "names": [
        "--false-start"
      ],
      "description": "Enable TLS False Start"
    },
    {
      "names": [
        "--form-string"
      ],
      "description": "Specify multipart MIME data",
      "takes_arg": true,
      "arg": {
        "name": "string"
      }
    },
    {
      "names": [
        "--ftp-account"
      ],
      "description": "Account data string",
      "takes_arg": true,
      "arg": {
        "name": "data"
      }
    },
    {
      "names": [
        "--ftp-alternative-to-user"
      ],
      "description": "String to replace USER [name]",
      "takes_arg": true,
      "arg": {
        "name": "command"
      }
    },
    {
      "names": [
        "--ftp-create-dirs"
      ],
      "description": "Create the remote dirs if not present"
    },
    {
      "names": [
        "--ftp-method"
      ],
      "description": "Control CWD usage",
      "takes_arg": true,
      "arg": {
        "name": "method"
      }
    },
    {
      "names": [
        "--ftp-pasv"
      ],
      "description": "Use PASV/EPSV instead of PORT"
    },
    {
      "names": [
        "--ftp-pret"
      ],
      "description": "Send PRET before PASV"
    },
    {
      "names": [
        "--ftp-skip-pasv-ip"
      ],
      "description": "Skip the IP address for PASV"
    },
    {
      "names": [
        "--ftp-ssl-ccc"
      ],
      "description": "Send CCC after authenticating"
    },
    {
      "names": [
        "--ftp-ssl-ccc-mode"
      ],
      "description": "Set CCC mode",
      "takes_arg": true,
      "arg": {
        "name": "mode",
        "suggestions": [
          "active",
          "passive"
        ]
      }
    },
    {
      "names": [
        "--ftp-ssl-control"
      ],
      "description": "Require SSL/TLS for FTP login, clear for transfer"
    },
    {
      "names": [
        "--happy-eyeballs-timeout-ms"
      ],
      "description": "How long to wait in milliseconds for IPv6 before trying IPv4",
      "takes_arg": true,
      "arg": {
        "name": "milliseconds"
      }
    },
    {
      "names": [
        "--haproxy-protocol"
      ],
      "description": "Send HAProxy PROXY protocol v1 header"
    },
    {
      "names": [
        "--hostpubmd5"
      ],
      "description": "Acceptable MD5 hash of the host public key",
      "takes_arg": true,
      "arg": {
        "name": "md5"
      }
    },
    {
      "names": [
        "--http0.9"
      ],
      "description": "Allow HTTP 0.9 responses"
    },
    {
      "names": [
        "--http1.1"
      ],
      "description": "Use HTTP 1.1"
    },
    {
      "names": [
        "--http2"
      ],
      "description": "Use HTTP 2"
    },
    {
      "names": [
        "--http2-prior-knowledge"
      ],
      "description": "Use HTTP 2 without HTTP/1.1 Upgrade"
    },
    {
      "names": [
        "--ignore-content-length"
      ],
      "description": "Ignore the size of the remote resource"
    },
    {
      "names": [
        "--interface"
      ],
      "description": "Use network INTERFACE (or address)",
      "takes_arg": true,
      "arg": {
        "name": "name"
      }
    },
    {
      "names": [
        "--keepalive-time"
      ],
      "description": "Interval time for keepalive probes",
      "takes_arg": true,
      "arg": {
        "name": "seconds"
      }
    },
    {
      "names": [
        "--key"
      ],
      "description": "Private key file name",
      "takes_arg": true,
      "arg": {
        "name": "key"
      }
    },
    {
      "names": [
        "--key-type"
      ],
      "description": "Private key file type",
      "takes_arg": true,
      "arg": {
        "name": "type",
        "suggestions": [
          "DER",
          "PEM",
          "ENG"
        ]
      }
    },
    {
      "names": [
        "--krb"
      ],
      "description": "Enable Kerberos with security <level>",
      "takes_arg": true,
      "arg": {
        "name": "level"
      }
    },
    {
      "names": [
        "--libcurl"
      ],
      "description": "Dump libcurl equivalent code of this command line",
      "takes_arg": true,
      "arg": {
        "name": "file",
        "template": "filepaths"
      }
    },
    {
      "names": [
        "--limit-rate"
      ],
      "description": "Limit transfer speed to RATE",
      "takes_arg": true,
      "arg": {
        "name": "speed"
      }
    },
    {
      "names": [
        "--local-port"
      ],
      "description": "Force use of RANGE for local port numbers",
      "takes_arg": true,
      "arg": {
        "name": "num/range"
      }
    },
    {
      "names": [
        "--location-trusted"
      ],
      "description": "Like --location, and send auth to other hosts"
    },
    {
      "names": [
        "--login-options"
      ],
      "description": "Server login options",
      "takes_arg": true,
      "arg": {
        "name": "options"
      }
    },
    {
      "names": [
        "--mail-auth"
      ],
      "description": "Originator address of the original email",
      "takes_arg": true,
      "arg": {
        "name": "address"
      }
    },
    {
      "names": [
        "--mail-from"
      ],
      "description": "Mail from this address",
      "takes_arg": true,
      "arg": {
        "name": "address"
      }
    },
    {
      "names": [
        "--mail-rcpt"
      ],
      "description": "Mail to this address",
      "takes_arg": true,
      "arg": {
        "name": "address"
      }
    },
    {
      "names": [
        "--max-filesize"
      ],
      "description": "Maximum file size to download",
      "takes_arg": true,
      "arg": {
        "name": "bytes"
      }
    },
    {
      "names": [
        "--max-redirs"
      ],
      "description": "Maximum number of redirects allowed",
      "takes_arg": true,
      "arg": {
        "name": "num"
      }
    },
    {
      "names": [
        "--metalink"
      ],
      "description": "Process given URLs as metalink XML file"
    },
    {
      "names": [
        "--negotiate"
      ],
      "description": "Use HTTP Negotiate (SPNEGO) authentication"
    },
    {
      "names": [
        "--netrc-file"
      ],
      "description": "Specify FILE for netrc",
      "takes_arg": true,
      "arg": {
        "name": "filename",
        "template": "filepaths"
      }
    },
    {
      "names": [
        "--netrc-optional"
      ],
      "description": "Use either .netrc or URL"
    },
    {
      "names": [
        "--no-alpn"
      ],
      "description": "Disable the ALPN TLS extension"
    },
    {
      "names": [
        "--no-keepalive"
      ],
      "description": "Disable TCP keepalive on the connection"
    },
    {
      "names": [
        "--no-npn"
      ],
      "description": "Disable the NPN TLS extension"
    },
    {
      "names": [
        "--no-sessionid"
      ],
      "description": "Disable SSL session-ID reusing"
    },
    {
      "names": [
        "--noproxy"
      ],
      "description": "List of hosts which do not use proxy",
      "takes_arg": true,
      "arg": {
        "name": "no-proxy-list"
      }
    },
    {
      "names": [
        "--ntlm"
      ],
      "description": "Use HTTP NTLM authentication"
    },
    {
      "names": [
        "--ntlm-wb"
      ],
      "description": "Use HTTP NTLM authentication with winbind"
    },
    {
      "names": [
        "--oauth2-bearer"
      ],
      "description": "OAuth 2 Bearer Token",
      "takes_arg": true,
      "arg": {
        "name": "token"
      }
    },
    {
      "names": [
        "--pass"
      ],
      "description": "Pass phrase for the private key",
      "takes_arg": true,
      "arg": {
        "name": "phrase"
      }
    },
    {
      "names": [
        "--path-as-is"
      ],
      "description": "Do not squash .. sequences in URL path"
    },
    {
      "names": [
        "--pinnedpubkey"
      ],
      "description": "FILE/HASHES Public key to verify peer against",
      "takes_arg": true,
      "arg": {
        "name": "hashes"
      }
    },
    {
      "names": [
        "--post301"
      ],
      "description": "Do not switch to GET after following a 301"
    },
    {
      "names": [
        "--post302"
      ],
      "description": "Do not switch to GET after following a 302"
    },
    {
      "names": [
        "--post303"
      ],
      "description": "Do not switch to GET after following a 303"
    },
    {
      "names": [
        "--preproxy"
      ],
      "description": "[protocol://]host[:port] Use this proxy first"
    },
    {
      "names": [
        "--proto"
      ],
      "description": "Enable/disable PROTOCOLS",
      "takes_arg": true,
      "arg": {
        "name": "protocols"
      }
    },
    {
      "names": [
        "--proto-default"
      ],
      "description": "Use PROTOCOL for any URL missing a scheme",
      "takes_arg": true,
      "arg": {
        "name": "protocol"
      }
    },
    {
      "names": [
        "--proto-redir"
      ],
      "description": "Enable/disable PROTOCOLS on redirect",
      "takes_arg": true,
      "arg": {
        "name": "protocols"
      }
    },
    {
      "names": [
        "--proxy-anyauth"
      ],
      "description": "Pick any proxy authentication method"
    },
    {
      "names": [
        "--proxy-basic"
      ],
      "description": "Use Basic authentication on the proxy"
    },
    {
      "names": [
        "--proxy-cacert"
      ],
      "description": "CA certificate to verify peer against for proxy",
      "takes_arg": true,
      "arg": {
        "name": "file",
        "template": "filepaths"
      }
    },
    {
      "names": [
        "--proxy-capath"
      ],
      "description": "CA directory to verify peer against for proxy",
      "takes_arg": true,
      "arg": {
        "name": "dir",
        "template": "folders"
      }
    },
    {
      "names": [
        "--proxy-cert"
      ],
      "description": "Set client certificate for proxy",
      "takes_arg": true,
      "arg": {
        "name": "cert[:passwd]"
      }
    },
    {
      "names": [
        "--proxy-cert-type"
      ],
      "description": "Client certificate type for HTTPS proxy",
      "takes_arg": true,
      "arg": {
        "name": "type"
      }
    },
    {
      "names": [
        "--proxy-ciphers"
      ],
      "description": "SSL ciphers to use for proxy",
      "takes_arg": true,
      "arg": {
        "name": "list"
      }
    },
    {
      "names": [
        "--proxy-crlfile"
      ],
      "description": "Set a CRL list for proxy",
      "takes_arg": true,
      "arg": {
        "name": "file",
        "template": "filepaths"
      }
    },
    {
      "names": [
        "--proxy-digest"
      ],
      "description": "Use Digest authentication on the proxy"
    },
    {
      "names": [
        "--proxy-header"
      ],
      "description": "Pass custom header(s) to proxy",
      "takes_arg": true,
      "arg": {
        "name": "header/file",
        "suggestions": [
          "Content-Type: application/json",
          "Content-Type: application/x-www-form-urlencoded"
        ]
      }
    },
    {
      "names": [
        "--proxy-insecure"
      ],
      "description": "Do HTTPS proxy connections without verifying the proxy"
    },
    {
      "names": [
        "--proxy-key"
      ],
      "description": "Private key for HTTPS proxy",
      "takes_arg": true,
      "arg": {
        "name": "key"
      }
    },
    {
      "names": [
        "--proxy-key-type"
      ],
      "description": "Private key file type for proxy",
      "takes_arg": true,
      "arg": {
        "name": "type"
      }
    },
    {
      "names": [
        "--proxy-negotiate"
      ],
      "description": "Use HTTP Negotiate (SPNEGO) authentication on the proxy"
    },
    {
      "names": [
        "--proxy-ntlm"
      ],
      "description": "Use NTLM authentication on the proxy"
    },
    {
      "names": [
        "--proxy-pass"
      ],
      "description": "Pass phrase for the private key for HTTPS proxy",
      "takes_arg": true,
      "arg": {
        "name": "phrase"
      }
    },
    {
      "names": [
        "--proxy-pinnedpubkey"
      ],
      "description": "FILE/HASHES public key to verify proxy with",
      "takes_arg": true,
      "arg": {
        "name": "hashes"
      }
    },
    {
      "names": [
        "--proxy-service-name"
      ],
      "description": "SPNEGO proxy service name",
      "takes_arg": true,
      "arg": {
        "name": "name"
      }
    },
    {
      "names": [
        "--proxy-ssl-allow-beast"
      ],
      "description": "Allow security flaw for interop for HTTPS proxy"
    },
    {
      "names": [
        "--proxy-tls13-ciphers"
      ],
      "description": "List> TLS 1.3 proxy cipher suites",
      "takes_arg": true,
      "arg": {
        "name": "ciphersuite"
      }
    },
    {
      "names": [
        "--proxy-tlsauthtype"
      ],
      "description": "TLS authentication type for HTTPS proxy",
      "takes_arg": true,
      "arg": {
        "name": "type"
      }
    },
    {
      "names": [
        "--proxy-tlspassword"
      ],
      "description": "TLS password for HTTPS proxy",
      "takes_arg": true,
      "arg": {
        "name": "string"
      }
    },
    {
      "names": [
        "--proxy-tlsuser"
      ],
      "description": "TLS username for HTTPS proxy",
      "takes_arg": true,
      "arg": {
        "name": "name"
      }
    },
    {
      "names": [
        "--proxy-tlsv1"
      ],
      "description": "Use TLSv1 for HTTPS proxy"
    },
    {
      "names": [
        "--proxy1.0"
      ],
      "description": "Use HTTP/1.0 proxy on given port",
      "takes_arg": true,
      "arg": {
        "name": "host[:port]"
      }
    },
    {
      "names": [
        "--pubkey"
      ],
      "description": "SSH Public key file name",
      "takes_arg": true,
      "arg": {
        "name": "key",
        "template": "filepaths"
      }
    },
    {
      "names": [
        "--random-file"
      ],
      "description": "File for reading random data from",
      "takes_arg": true,
      "arg": {
        "name": "file",
        "template": "filepaths"
      }
    },
    {
      "names": [
        "--raw"
      ],
      "description": "Do HTTP \"raw\"; no transfer decoding"
    },
    {
      "names": [
        "--remote-name-all"
      ],
      "description": "Use the remote file name for all URLs"
    },
    {
      "names": [
        "--request-target"
      ],
      "description": "Specify the target for this request"
    },
    {
      "names": [
        "--resolve"
      ],
      "description": "Resolve the host+port to this address",
      "takes_arg": true,
      "arg": {
        "name": "host:port:address[,address]..."
      }
    },
    {
      "names": [
        "--retry"
      ],
      "description": "Retry request if transient problems occur",
      "takes_arg": true,
      "arg": {
        "name": "num"
      }
    },
    {
      "names": [
        "--retry-connrefused"
      ],
      "description": "Retry on connection refused (use with --retry)"
    },
    {
      "names": [
        "--retry-delay"
      ],
      "description": "Wait time between retries",
      "takes_arg": true,
      "arg": {
        "name": "seconds"
      }
    },
    {
      "names": [
        "--retry-max-time"
      ],
      "description": "Retry only within this period",
      "takes_arg": true,
      "arg": {
        "name": "seconds"
      }
    },
    {
      "names": [
        "--sasl-ir"
      ],
      "description": "Enable initial response in SASL authentication"
    },
    {
      "names": [
        "--service-name"
      ],
      "description": "SPNEGO service name",
      "takes_arg": true,
      "arg": {
        "name": "name"
      }
    },
    {
      "names": [
        "--socks4"
      ],
      "description": "SOCKS4 proxy on given host + port",
      "takes_arg": true,
      "arg": {
        "name": "host[:port]"
      }
    },
    {
      "names": [
        "--socks4a"
      ],
      "description": "SOCKS4a proxy on given host + port",
      "takes_arg": true,
      "arg": {
        "name": "host[:port]"
      }
    },
    {
      "names": [
        "--socks5"
      ],
      "description": "SOCKS5 proxy on given host + port",
      "takes_arg": true,
      "arg": {
        "name": "host[:port]"
      }
    },
    {
      "names": [
        "--socks5-basic"
      ],
      "description": "Enable username/password auth for SOCKS5 proxies"
    },
    {
      "names": [
        "--socks5-gssapi"
      ],
      "description": "Enable GSS-API auth for SOCKS5 proxies"
    },
    {
      "names": [
        "--socks5-gssapi-nec"
      ],
      "description": "Compatibility with NEC SOCKS5 server"
    },
    {
      "names": [
        "--socks5-gssapi-service"
      ],
      "description": "SOCKS5 proxy service name for GSS-API",
      "takes_arg": true,
      "arg": {
        "name": "name"
      }
    },
    {
      "names": [
        "--socks5-hostname"
      ],
      "description": "SOCKS5 proxy, pass host name to proxy",
      "takes_arg": true,
      "arg": {
        "name": "host[:port]"
      }
    },
    {
      "names": [
        "--ssl"
      ],
      "description": "Try SSL/TLS"
    },
    {
      "names": [
        "--ssl-auto-client-cert"
      ],
      "description": "Obtain and use a client certificate automatically"
    },
    {
      "names": [
        "--ssl-allow-beast"
      ],
      "description": "Allow security flaw to improve interop"
    },
    {
      "names": [
        "--ssl-no-revoke"
      ],
      "description": "Disable cert revocation checks (Schannel)"
    },
    {
      "names": [
        "--ssl-reqd"
      ],
      "description": "Require SSL/TLS"
    },
    {
      "names": [
        "--stderr"
      ],
      "description": "Where to redirect stderr"
    },
    {
      "names": [
        "--styled-output"
      ],
      "description": "Enable styled output for HTTP headers"
    },
    {
      "names": [
        "--suppress-connect-headers"
      ],
      "description": "Suppress proxy CONNECT response headers"
    },
    {
      "names": [
        "--tcp-fastopen"
      ],
      "description": "Use TCP Fast Open"
    },
    {
      "names": [
        "--tcp-nodelay"
      ],
      "description": "Use the TCP_NODELAY option"
    },
    {
      "names": [
        "--tftp-blksize"
      ],
      "description": "Set TFTP BLKSIZE option",
      "takes_arg": true,
      "arg": {
        "name": "value"
      }
    },
    {
      "names": [
        "--tftp-no-options"
      ],
      "description": "Do not send any TFTP options"
    },
    {
      "names": [
        "--tls-max"
      ],
      "description": "Set maximum allowed TLS version",
      "takes_arg": true,
      "arg": {
        "name": "VERSION"
      }
    },
    {
      "names": [
        "--tls13-ciphers"
      ],
      "description": "Of TLS 1.3 ciphersuites> TLS 1.3 cipher suites to use",
      "takes_arg": true,
      "arg": {
        "name": "list"
      }
    },
    {
      "names": [
        "--tlsauthtype"
      ],
      "description": "TLS authentication type",
      "takes_arg": true,
      "arg": {
        "name": "type"
      }
    },
    {
      "names": [
        "--tlspassword"
      ],
      "description": "TLS password"
    },
    {
      "names": [
        "--tlsuser"
      ],
      "description": "TLS user name",
      "takes_arg": true,
      "arg": {
        "name": "name"
      }
    },
    {
      "names": [
        "--tlsv1.0"
      ],
      "description": "Use TLSv1.0 or greater"
    },
    {
      "names": [
        "--tlsv1.1"
      ],
      "description": "Use TLSv1.1 or greater"
    },
    {
      "names": [
        "--tlsv1.2"
      ],
      "description": "Use TLSv1.2 or greater"
    },
    {
      "names": [
        "--tlsv1.3"
      ],
      "description": "Use TLSv1.3 or greater"
    },
    {
      "names": [
        "--tr-encoding"
      ],
      "description": "Request compressed transfer encoding"
    },
    {
      "names": [
        "--trace"
      ],
      "description": "Write a debug trace to FILE",
      "takes_arg": true,
      "arg": {
        "name": "file",
        "template": "filepaths"
      }
    },
    {
      "names": [
        "--trace-ascii"
      ],
      "description": "Like --trace, but without hex output",
      "takes_arg": true,
      "arg": {
        "name": "file",
        "template": "filepaths"
      }
    },
    {
      "names": [
        "--trace-time"
      ],
      "description": "Add time stamps to trace/verbose output"
    },
    {
      "names": [
        "--unix-socket"
      ],
      "description": "Connect through this Unix domain socket",
      "takes_arg": true,
      "arg": {
        "name": "path"
      }
    },
    {
      "names": [
        "--url"
      ],
      "description": "URL to work with",
      "takes_arg": true,
      "arg": {
        "name": "url"
      }
    },
    {
      "names": [
        "--xattr"
      ],
      "description": "Store metadata in extended file attributes"
    }
  ],
  "args": [
    {
      "name": "URL"
    }
  ]
}
