{
  "description": "Fetch an OIDC token for kubectl with get-token. Password, client secret, TLS and logging options are left out.",
  "name": "kubelogin",
  "subcommands": [
    {
      "name": "get-token",
      "description": "Run the credential plugin for one OIDC provider. Normally kubectl invokes this from kubeconfig; use it to test a provider.",
      "options": [
        {
          "names": [
            "--oidc-issuer-url"
          ],
          "description": "Issuer URL",
          "args": {
            "name": "issuer_url",
            "isOptional": false
          }
        },
        {
          "names": [
            "--oidc-client-id"
          ],
          "description": "Client ID",
          "args": {
            "name": "client_id",
            "isOptional": false
          }
        },
        {
          "names": [
            "--oidc-extra-scope"
          ],
          "description": "Extra scope",
          "args": {
            "name": "extra_scope",
            "isOptional": false,
            "isVariadic": true
          },
          "isRepeatable": true
        },
        {
          "names": [
            "--grant-type"
          ],
          "description": "Grant type",
          "args": {
            "name": "grant_type",
            "isOptional": false,
            "suggestions": [
              {
                "name": "auto",
                "description": "Auto"
              },
              {
                "name": "authcode",
                "description": "Authorization code"
              },
              {
                "name": "authcode-keyboard",
                "description": "Authorization code (keyboard)"
              },
              {
                "name": "password",
                "description": "Password"
              },
              {
                "name": "device-code",
                "description": "Device code"
              },
              {
                "name": "client-credentials",
                "description": "Client credentials"
              }
            ]
          }
        },
        {
          "names": [
            "--token-cache-storage"
          ],
          "description": "Token cache storage",
          "args": {
            "name": "token_cache_storage",
            "isOptional": false,
            "suggestions": [
              {
                "name": "disk",
                "description": "Disk"
              },
              {
                "name": "keyring",
                "description": "Keyring"
              },
              {
                "name": "none",
                "description": "None"
              }
            ]
          }
        },
        {
          "names": [
            "--skip-open-browser"
          ],
          "description": "Do not open the browser"
        },
        {
          "names": [
            "--force-refresh"
          ],
          "description": "Force token refresh"
        }
      ]
    }
  ]
}
