{
  "description": "Make a one-off HTTP GET or POST request with headers, query parameters, filtering and output format. Registered-API commands, auth setup, pagination and plugins are not covered.",
  "name": "restish",
  "subcommands": [
    {
      "name": "get",
      "description": "Perform an HTTP GET request against a full URL or registered API short-name URL.",
      "options": [
        {
          "names": [
            "--rsh-header",
            "-H"
          ],
          "description": "One 'Name: Value' per entry.",
          "args": {
            "name": "header",
            "description": "One 'Name: Value' per entry.",
            "isOptional": false,
            "isVariadic": true
          },
          "isRepeatable": true
        },
        {
          "names": [
            "--rsh-query",
            "-q"
          ],
          "description": "One key=value per entry.",
          "args": {
            "name": "query",
            "description": "One key=value per entry.",
            "isOptional": false,
            "isVariadic": true
          },
          "isRepeatable": true
        },
        {
          "names": [
            "--rsh-filter",
            "-f"
          ],
          "description": "Shorthand or jq expression, for example body.items.",
          "args": {
            "name": "filter",
            "description": "Shorthand or jq expression, for example body.items.",
            "isOptional": false
          }
        },
        {
          "names": [
            "--rsh-output-format",
            "-o"
          ],
          "description": "Output format",
          "args": {
            "name": "output_format",
            "isOptional": false,
            "suggestions": [
              {
                "name": "auto",
                "description": "Auto"
              },
              {
                "name": "json",
                "description": "JSON"
              },
              {
                "name": "yaml",
                "description": "YAML"
              },
              {
                "name": "table",
                "description": "Table"
              },
              {
                "name": "ndjson",
                "description": "NDJSON"
              },
              {
                "name": "lines",
                "description": "Lines"
              },
              {
                "name": "gron",
                "description": "Gron"
              }
            ]
          }
        },
        {
          "names": [
            "--rsh-profile",
            "-p"
          ],
          "description": "Profile",
          "args": {
            "name": "profile",
            "isOptional": false
          }
        },
        {
          "names": [
            "--rsh-no-cache"
          ],
          "description": "Bypass cache"
        },
        {
          "names": [
            "--rsh-retry"
          ],
          "description": "Retry attempts",
          "args": {
            "name": "retry",
            "isOptional": false
          }
        },
        {
          "names": [
            "--rsh-insecure"
          ],
          "description": "Skip TLS verification"
        },
        {
          "names": [
            "--rsh-verbose",
            "-v"
          ],
          "description": "Verbose",
          "isRepeatable": true
        }
      ],
      "args": [
        {
          "name": "url",
          "isOptional": true
        }
      ]
    },
    {
      "name": "post",
      "description": "Perform an HTTP POST with an optional shorthand body, @file or stdin. Body arguments use Restish shorthand.",
      "options": [
        {
          "names": [
            "--rsh-header",
            "-H"
          ],
          "description": "Request headers",
          "args": {
            "name": "header",
            "isOptional": false,
            "isVariadic": true
          },
          "isRepeatable": true
        },
        {
          "names": [
            "--rsh-query",
            "-q"
          ],
          "description": "Query parameters",
          "args": {
            "name": "query",
            "isOptional": false,
            "isVariadic": true
          },
          "isRepeatable": true
        },
        {
          "names": [
            "--rsh-filter",
            "-f"
          ],
          "description": "Filter",
          "args": {
            "name": "filter",
            "isOptional": false
          }
        },
        {
          "names": [
            "--rsh-retry-unsafe"
          ],
          "description": "Allow retries for POST"
        }
      ],
      "args": [
        {
          "name": "url",
          "isOptional": true
        },
        {
          "name": "body",
          "description": "Shorthand such as 'name: Ada, active: true', or @file.json. Leave empty to read stdin.",
          "isOptional": true,
          "isVariadic": true
        }
      ]
    }
  ]
}
