{
  "name": "ddosify",
  "description": "High-performance load testing tool, written in Golang",
  "options": [
    {
      "names": [
        "-t"
      ],
      "description": "Target website URL. Example: https://ddosify.com",
      "isRequired": true,
      "priority": 90,
      "args": [
        {
          "name": "URL"
        }
      ]
    },
    {
      "names": [
        "-n"
      ],
      "description": "Total request count. Default: 100",
      "priority": 80,
      "args": [
        {
          "name": "RequestCount"
        }
      ]
    },
    {
      "names": [
        "-d"
      ],
      "description": "Test duration in seconds. Default: 10",
      "priority": 80,
      "args": [
        {
          "name": "Duration"
        }
      ]
    },
    {
      "names": [
        "-l"
      ],
      "description": "Type of the request. Default: linear",
      "priority": 70,
      "args": [
        {
          "name": "RequestType",
          "suggestions": [
            "linear",
            "incremental",
            "waved"
          ]
        }
      ]
    },
    {
      "names": [
        "-m"
      ],
      "description": "HTTP Methods. Default: GET",
      "args": [
        {
          "name": "HTTPMethod",
          "suggestions": [
            "GET",
            "POST",
            "PUT",
            "DELETE",
            "HEAD",
            "PATCH",
            "OPTIONS"
          ]
        }
      ]
    },
    {
      "names": [
        "-b"
      ],
      "description": "Body for the request",
      "args": [
        {
          "name": "Body"
        }
      ]
    },
    {
      "names": [
        "-a"
      ],
      "description": "Basic authentication",
      "args": [
        {
          "name": "BasicAuth",
          "suggestions": [
            "username:password"
          ]
        }
      ]
    },
    {
      "names": [
        "-h"
      ],
      "description": "Headers of the request. You can provide multiple headers",
      "isRepeatable": -1,
      "args": [
        {
          "name": "header",
          "suggestions": [
            "Content-Type: application/json",
            "User-Agent: DdosifyLoadGenerator/0.8.1"
          ]
        }
      ]
    },
    {
      "names": [
        "-T"
      ],
      "description": "Timeout in seconds. Default: 5",
      "args": [
        {
          "name": "Timeout"
        }
      ]
    },
    {
      "names": [
        "-P"
      ],
      "description": "Proxy address",
      "args": [
        {
          "name": "Proxy",
          "suggestions": [
            "http://user:pass@proxy_host.com:port"
          ]
        }
      ]
    },
    {
      "names": [
        "-o"
      ],
      "description": "Test result output format. Default: stdout",
      "args": [
        {
          "name": "OutputFormat",
          "suggestions": [
            "stdout",
            "stdout-json"
          ]
        }
      ]
    },
    {
      "names": [
        "--config"
      ],
      "description": "Config file of the load test i.e example_ddosify_config.json",
      "args": [
        {
          "name": "ConfigFile"
        }
      ]
    },
    {
      "names": [
        "--version"
      ],
      "description": "Prints version, git commit, built date (utc)"
    },
    {
      "names": [
        "--debug"
      ],
      "description": "Iterates the scenario once and prints curl-like verbose result"
    },
    {
      "names": [
        "--help"
      ],
      "description": "Prints CLI flags"
    }
  ]
}
