{
  "description": "Check relationships and validate authorization models. Server credentials come from ~/.fga.yaml or FGA_* environment variables and are not part of these forms.",
  "name": "fga",
  "subcommands": [
    {
      "name": "query",
      "subcommands": [
        {
          "name": "check",
          "description": "Ask whether a user has a relation to an object. Contextual tuples and condition context are left out.",
          "options": [
            {
              "names": [
                "--store-id"
              ],
              "description": "Store ID",
              "args": {
                "name": "store_id",
                "isOptional": false
              }
            },
            {
              "names": [
                "--model-id"
              ],
              "description": "Authorization model ID",
              "args": {
                "name": "model_id",
                "isOptional": false
              }
            }
          ],
          "args": [
            {
              "name": "user",
              "description": "For example user:anne.",
              "isOptional": true
            },
            {
              "name": "relation",
              "isOptional": true
            },
            {
              "name": "object",
              "description": "For example document:roadmap.",
              "isOptional": true
            }
          ]
        }
      ]
    },
    {
      "name": "model",
      "subcommands": [
        {
          "name": "validate",
          "description": "Validate an authorization model file without a server.",
          "options": [
            {
              "names": [
                "--file"
              ],
              "description": "Model file",
              "args": {
                "name": "file",
                "isOptional": false,
                "template": "filepaths"
              }
            },
            {
              "names": [
                "--format"
              ],
              "description": "Input format",
              "args": {
                "name": "format",
                "isOptional": false,
                "suggestions": [
                  {
                    "name": "fga",
                    "description": "fga"
                  },
                  {
                    "name": "json",
                    "description": "json"
                  },
                  {
                    "name": "modular",
                    "description": "modular"
                  }
                ]
              }
            }
          ]
        }
      ]
    }
  ]
}
