{
  "openapi": "3.1.0",
  "info": {
    "title": "x-gql API",
    "version": "0.1.0",
    "description": "GraphQL-projected REST inventory from `examples/users.gg` via @a0n/x-gql. Topology is the authority."
  },
  "paths": {
    "/api/readUser": {
      "get": {
        "summary": "Query: root → read_user",
        "operationId": "readUser",
        "responses": {
          "200": {
            "description": "Returns User",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/User"
                }
              }
            }
          }
        },
        "tags": [
          "graphql",
          "x-gql"
        ],
        "x-gg-source": "examples/users.gg",
        "x-graphql-projection": true
      }
    },
    "/api/saveUser": {
      "post": {
        "summary": "Mutation fold: input_user → save_user",
        "operationId": "saveUser",
        "responses": {
          "200": {
            "description": "Returns User",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/User"
                }
              }
            }
          }
        },
        "tags": [
          "graphql",
          "x-gql"
        ],
        "x-gg-source": "examples/users.gg",
        "x-graphql-projection": true
      }
    },
    "/api/scanResult": {
      "get": {
        "summary": "Query: request → scan_result",
        "operationId": "scanResult",
        "responses": {
          "200": {
            "description": "Returns ScanResult",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ScanResult"
                }
              }
            }
          }
        },
        "tags": [
          "graphql",
          "x-gql"
        ],
        "x-gg-source": "examples/scan.gg",
        "x-graphql-projection": true
      }
    },
    "/api/federationChain": {
      "get": {
        "summary": "Resolve a knotchain federation record by chain id.",
        "operationId": "federationChain",
        "responses": {
          "200": {
            "description": "Returns FederationChain",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FederationChain"
                }
              }
            }
          }
        },
        "tags": [
          "graphql",
          "x-gql"
        ],
        "x-gg-source": "federation-projection",
        "x-graphql-projection": true
      }
    },
    "/api/federationLookup": {
      "get": {
        "summary": "N1 two-step lookup (route + witness + admissible path proof).",
        "operationId": "federationLookup",
        "responses": {
          "200": {
            "description": "Returns FederationLookup",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FederationLookup"
                }
              }
            }
          }
        },
        "tags": [
          "graphql",
          "x-gql"
        ],
        "x-gg-source": "federation-projection",
        "x-graphql-projection": true
      }
    },
    "/api/federationSnapshot": {
      "get": {
        "summary": "Fetch signed federation index snapshot metadata.",
        "operationId": "federationSnapshot",
        "responses": {
          "200": {
            "description": "Returns FederationSnapshot",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FederationSnapshot"
                }
              }
            }
          }
        },
        "tags": [
          "graphql",
          "x-gql"
        ],
        "x-gg-source": "federation-projection",
        "x-graphql-projection": true
      }
    }
  },
  "tags": [
    {
      "name": "graphql"
    },
    {
      "name": "x-gql"
    }
  ]
}
