{
  "components": {
    "schemas": {
      "AccessPoint": {
        "properties": {
          "active": {
            "anyOf": [
              {
                "type": "boolean"
              },
              {
                "type": "null"
              }
            ],
            "title": "Active"
          },
          "client_count": {
            "title": "Client Count",
            "type": "integer"
          },
          "clients": {
            "items": {
              "additionalProperties": true,
              "type": "object"
            },
            "title": "Clients",
            "type": "array"
          },
          "enabled": {
            "anyOf": [
              {
                "type": "boolean"
              },
              {
                "type": "null"
              }
            ],
            "title": "Enabled"
          },
          "interface": {
            "default": "wlan0",
            "title": "Interface",
            "type": "string"
          },
          "ip": {
            "default": "",
            "title": "Ip",
            "type": "string"
          },
          "ssid": {
            "title": "Ssid",
            "type": "string"
          },
          "state": {
            "default": "unknown",
            "title": "State",
            "type": "string"
          }
        },
        "required": [
          "ssid",
          "client_count",
          "clients"
        ],
        "title": "AccessPoint",
        "type": "object"
      },
      "CPU": {
        "properties": {
          "load": {
            "items": {
              "type": "number"
            },
            "title": "Load",
            "type": "array"
          },
          "temperature_c": {
            "anyOf": [
              {
                "type": "number"
              },
              {
                "type": "null"
              }
            ],
            "title": "Temperature C"
          }
        },
        "required": [
          "temperature_c",
          "load"
        ],
        "title": "CPU",
        "type": "object"
      },
      "Disk": {
        "properties": {
          "free": {
            "title": "Free",
            "type": "string"
          },
          "percent": {
            "anyOf": [
              {
                "type": "integer"
              },
              {
                "type": "null"
              }
            ],
            "title": "Percent"
          },
          "used": {
            "title": "Used",
            "type": "string"
          }
        },
        "required": [
          "used",
          "free",
          "percent"
        ],
        "title": "Disk",
        "type": "object"
      },
      "Ethernet": {
        "properties": {
          "addresses": {
            "items": {
              "type": "string"
            },
            "title": "Addresses",
            "type": "array"
          },
          "carrier": {
            "anyOf": [
              {
                "type": "boolean"
              },
              {
                "type": "null"
              }
            ],
            "title": "Carrier"
          },
          "connected": {
            "anyOf": [
              {
                "type": "boolean"
              },
              {
                "type": "null"
              }
            ],
            "title": "Connected"
          },
          "default_route": {
            "default": false,
            "title": "Default Route",
            "type": "boolean"
          },
          "enabled": {
            "anyOf": [
              {
                "type": "boolean"
              },
              {
                "type": "null"
              }
            ],
            "title": "Enabled"
          },
          "gateway": {
            "title": "Gateway",
            "type": "string"
          },
          "interface": {
            "default": "eth0",
            "title": "Interface",
            "type": "string"
          },
          "ip": {
            "title": "Ip",
            "type": "string"
          },
          "managed": {
            "default": true,
            "title": "Managed",
            "type": "boolean"
          },
          "permanent_mac": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Permanent Mac"
          },
          "route_metric": {
            "anyOf": [
              {
                "type": "integer"
              },
              {
                "type": "null"
              }
            ],
            "title": "Route Metric"
          },
          "state": {
            "title": "State",
            "type": "string"
          }
        },
        "required": [
          "state",
          "connected",
          "ip",
          "gateway"
        ],
        "title": "Ethernet",
        "type": "object"
      },
      "HTTPValidationError": {
        "properties": {
          "detail": {
            "items": {
              "$ref": "#/components/schemas/ValidationError"
            },
            "title": "Detail",
            "type": "array"
          }
        },
        "title": "HTTPValidationError",
        "type": "object"
      },
      "Memory": {
        "properties": {
          "available": {
            "title": "Available",
            "type": "string"
          },
          "swap_used": {
            "title": "Swap Used",
            "type": "string"
          },
          "used": {
            "title": "Used",
            "type": "string"
          }
        },
        "required": [
          "used",
          "available",
          "swap_used"
        ],
        "title": "Memory",
        "type": "object"
      },
      "Network": {
        "properties": {
          "access_point": {
            "$ref": "#/components/schemas/AccessPoint"
          },
          "ethernet": {
            "$ref": "#/components/schemas/Ethernet"
          },
          "ethernet_interfaces": {
            "items": {
              "$ref": "#/components/schemas/Ethernet"
            },
            "title": "Ethernet Interfaces",
            "type": "array"
          },
          "wifi": {
            "$ref": "#/components/schemas/Wifi"
          }
        },
        "required": [
          "ethernet",
          "wifi",
          "access_point"
        ],
        "title": "Network",
        "type": "object"
      },
      "Resources": {
        "properties": {
          "cpu": {
            "$ref": "#/components/schemas/CPU"
          },
          "memory": {
            "$ref": "#/components/schemas/Memory"
          },
          "storage": {
            "$ref": "#/components/schemas/Storage"
          }
        },
        "required": [
          "cpu",
          "memory",
          "storage"
        ],
        "title": "Resources",
        "type": "object"
      },
      "Services": {
        "properties": {
          "apache": {
            "default": "unknown",
            "title": "Apache",
            "type": "string"
          },
          "fastapi": {
            "default": "running",
            "title": "Fastapi",
            "type": "string"
          },
          "kiwix": {
            "default": "unknown",
            "title": "Kiwix",
            "type": "string"
          },
          "network_manager": {
            "default": "unknown",
            "title": "Network Manager",
            "type": "string"
          },
          "samba": {
            "default": "unknown",
            "title": "Samba",
            "type": "string"
          }
        },
        "title": "Services",
        "type": "object"
      },
      "Signal": {
        "properties": {
          "dbm": {
            "anyOf": [
              {
                "type": "integer"
              },
              {
                "type": "null"
              }
            ],
            "description": "Received signal strength (dBm)",
            "title": "Dbm"
          },
          "percent": {
            "anyOf": [
              {
                "maximum": 100.0,
                "minimum": 0.0,
                "type": "integer"
              },
              {
                "type": "null"
              }
            ],
            "title": "Percent"
          }
        },
        "title": "Signal",
        "type": "object"
      },
      "Status": {
        "properties": {
          "debug": {
            "title": "Debug",
            "type": "boolean"
          },
          "issues": {
            "items": {
              "type": "string"
            },
            "title": "Issues",
            "type": "array"
          },
          "state": {
            "title": "State",
            "type": "string"
          },
          "sync": {
            "default": "Unavailable",
            "title": "Sync",
            "type": "string"
          },
          "update": {
            "anyOf": [
              {
                "additionalProperties": true,
                "type": "object"
              },
              {
                "type": "null"
              }
            ],
            "title": "Update"
          },
          "updated": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Updated"
          }
        },
        "required": [
          "state",
          "debug"
        ],
        "title": "Status",
        "type": "object"
      },
      "StatusResponse": {
        "properties": {
          "network": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/Network"
              },
              {
                "type": "null"
              }
            ]
          },
          "resources": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/Resources"
              },
              {
                "type": "null"
              }
            ]
          },
          "services": {
            "$ref": "#/components/schemas/Services"
          },
          "status": {
            "$ref": "#/components/schemas/Status"
          },
          "system": {
            "anyOf": [
              {
                "$ref": "#/components/schemas/System"
              },
              {
                "type": "null"
              }
            ]
          }
        },
        "required": [
          "network",
          "system",
          "resources",
          "services",
          "status"
        ],
        "title": "StatusResponse",
        "type": "object"
      },
      "Storage": {
        "properties": {
          "sd": {
            "$ref": "#/components/schemas/Disk"
          },
          "ssd": {
            "$ref": "#/components/schemas/Disk"
          }
        },
        "required": [
          "sd",
          "ssd"
        ],
        "title": "Storage",
        "type": "object"
      },
      "System": {
        "properties": {
          "hostname": {
            "title": "Hostname",
            "type": "string"
          },
          "platform": {
            "title": "Platform",
            "type": "string"
          },
          "uptime": {
            "title": "Uptime",
            "type": "string"
          }
        },
        "required": [
          "hostname",
          "platform",
          "uptime"
        ],
        "title": "System",
        "type": "object"
      },
      "ValidationError": {
        "properties": {
          "ctx": {
            "title": "Context",
            "type": "object"
          },
          "input": {
            "title": "Input"
          },
          "loc": {
            "items": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "integer"
                }
              ]
            },
            "title": "Location",
            "type": "array"
          },
          "msg": {
            "title": "Message",
            "type": "string"
          },
          "type": {
            "title": "Error Type",
            "type": "string"
          }
        },
        "required": [
          "loc",
          "msg",
          "type"
        ],
        "title": "ValidationError",
        "type": "object"
      },
      "Wifi": {
        "properties": {
          "connected": {
            "anyOf": [
              {
                "type": "boolean"
              },
              {
                "type": "null"
              }
            ],
            "title": "Connected"
          },
          "enabled": {
            "anyOf": [
              {
                "type": "boolean"
              },
              {
                "type": "null"
              }
            ],
            "title": "Enabled"
          },
          "gateway": {
            "title": "Gateway",
            "type": "string"
          },
          "interface": {
            "default": "wlan1",
            "title": "Interface",
            "type": "string"
          },
          "ip": {
            "title": "Ip",
            "type": "string"
          },
          "rate": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Rate"
          },
          "signal": {
            "$ref": "#/components/schemas/Signal"
          },
          "ssid": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Ssid"
          },
          "state": {
            "title": "State",
            "type": "string"
          }
        },
        "required": [
          "state",
          "connected",
          "ssid",
          "signal",
          "rate",
          "ip",
          "gateway"
        ],
        "title": "Wifi",
        "type": "object"
      }
    }
  },
  "info": {
    "description": "REST API for the Data Ark appliance",
    "title": "Data Ark API",
    "version": "1.0.0"
  },
  "openapi": "3.1.0",
  "paths": {
    "/": {
      "get": {
        "operationId": "root__get",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {}
              }
            },
            "description": "Successful Response"
          }
        },
        "summary": "Root"
      }
    },
    "/about": {
      "get": {
        "operationId": "about_about_get",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {}
              }
            },
            "description": "Successful Response"
          }
        },
        "summary": "About",
        "tags": [
          "About"
        ]
      }
    },
    "/bugout/cancel": {
      "post": {
        "operationId": "cancel_bugout_cancel_post",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {}
              }
            },
            "description": "Successful Response"
          }
        },
        "summary": "Cancel",
        "tags": [
          "Bugout"
        ]
      }
    },
    "/bugout/credentials/{task_id}": {
      "post": {
        "operationId": "credentials_bugout_credentials__task_id__post",
        "parameters": [
          {
            "in": "path",
            "name": "task_id",
            "required": true,
            "schema": {
              "title": "Task Id",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {}
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            },
            "description": "Validation Error"
          }
        },
        "summary": "Credentials",
        "tags": [
          "Bugout"
        ]
      }
    },
    "/bugout/credentials/{task_id}/test": {
      "post": {
        "operationId": "test_credentials_bugout_credentials__task_id__test_post",
        "parameters": [
          {
            "in": "path",
            "name": "task_id",
            "required": true,
            "schema": {
              "title": "Task Id",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {}
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            },
            "description": "Validation Error"
          }
        },
        "summary": "Test Credentials",
        "tags": [
          "Bugout"
        ]
      }
    },
    "/bugout/state": {
      "get": {
        "operationId": "state_bugout_state_get",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {}
              }
            },
            "description": "Successful Response"
          }
        },
        "summary": "State",
        "tags": [
          "Bugout"
        ]
      }
    },
    "/bugout/sync": {
      "post": {
        "operationId": "sync_bugout_sync_post",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {}
              }
            },
            "description": "Successful Response"
          }
        },
        "summary": "Sync",
        "tags": [
          "Bugout"
        ]
      }
    },
    "/bugout/trigger": {
      "post": {
        "operationId": "trigger_bugout_trigger_post",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {}
              }
            },
            "description": "Successful Response"
          }
        },
        "summary": "Trigger",
        "tags": [
          "Bugout"
        ]
      }
    },
    "/callsigns/metadata": {
      "get": {
        "operationId": "metadata_callsigns_metadata_get",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {}
              }
            },
            "description": "Successful Response"
          }
        },
        "summary": "Metadata",
        "tags": [
          "Callsigns"
        ]
      }
    },
    "/callsigns/search": {
      "get": {
        "operationId": "search_callsigns_search_get",
        "parameters": [
          {
            "in": "query",
            "name": "q",
            "required": false,
            "schema": {
              "default": "",
              "maxLength": 80,
              "title": "Q",
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "mode",
            "required": false,
            "schema": {
              "default": "callsign",
              "pattern": "^(callsign|name)$",
              "title": "Mode",
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "state",
            "required": false,
            "schema": {
              "default": "",
              "maxLength": 2,
              "title": "State",
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "city",
            "required": false,
            "schema": {
              "default": "",
              "maxLength": 60,
              "title": "City",
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "grid",
            "required": false,
            "schema": {
              "default": "",
              "maxLength": 8,
              "title": "Grid",
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "radius_km",
            "required": false,
            "schema": {
              "default": 50,
              "maximum": 1000,
              "minimum": 1,
              "title": "Radius Km",
              "type": "number"
            }
          },
          {
            "in": "query",
            "name": "active",
            "required": false,
            "schema": {
              "default": true,
              "title": "Active",
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {}
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            },
            "description": "Validation Error"
          }
        },
        "summary": "Search",
        "tags": [
          "Callsigns"
        ]
      }
    },
    "/clone/drives": {
      "get": {
        "operationId": "drives_clone_drives_get",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {}
              }
            },
            "description": "Successful Response"
          }
        },
        "summary": "Drives",
        "tags": [
          "Drive cloning"
        ]
      }
    },
    "/clone/plan": {
      "get": {
        "operationId": "plan_clone_plan_get",
        "parameters": [
          {
            "in": "query",
            "name": "drive",
            "required": true,
            "schema": {
              "title": "Drive",
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "mode",
            "required": false,
            "schema": {
              "default": "config",
              "pattern": "^(config|fit|populated)$",
              "title": "Mode",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {}
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            },
            "description": "Validation Error"
          }
        },
        "summary": "Plan",
        "tags": [
          "Drive cloning"
        ]
      }
    },
    "/clone/status": {
      "get": {
        "operationId": "status_clone_status_get",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {}
              }
            },
            "description": "Successful Response"
          }
        },
        "summary": "Status",
        "tags": [
          "Drive cloning"
        ]
      }
    },
    "/community/backup": {
      "post": {
        "operationId": "backup_community_backup_post",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {}
              }
            },
            "description": "Successful Response"
          }
        },
        "summary": "Backup",
        "tags": [
          "Community board"
        ]
      }
    },
    "/community/messages/{identifier}/edit": {
      "post": {
        "operationId": "edit_community_messages__identifier__edit_post",
        "parameters": [
          {
            "in": "path",
            "name": "identifier",
            "required": true,
            "schema": {
              "title": "Identifier",
              "type": "integer"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {}
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            },
            "description": "Validation Error"
          }
        },
        "summary": "Edit",
        "tags": [
          "Community board"
        ]
      }
    },
    "/community/messages/{identifier}/remove": {
      "post": {
        "operationId": "remove_community_messages__identifier__remove_post",
        "parameters": [
          {
            "in": "path",
            "name": "identifier",
            "required": true,
            "schema": {
              "title": "Identifier",
              "type": "integer"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {}
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            },
            "description": "Validation Error"
          }
        },
        "summary": "Remove",
        "tags": [
          "Community board"
        ]
      }
    },
    "/community/messages/{identifier}/replies": {
      "post": {
        "operationId": "nested_reply_community_messages__identifier__replies_post",
        "parameters": [
          {
            "in": "path",
            "name": "identifier",
            "required": true,
            "schema": {
              "title": "Identifier",
              "type": "integer"
            }
          }
        ],
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {}
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            },
            "description": "Validation Error"
          }
        },
        "summary": "Nested Reply",
        "tags": [
          "Community board"
        ]
      }
    },
    "/community/notice": {
      "get": {
        "operationId": "notice_community_notice_get",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {}
              }
            },
            "description": "Successful Response"
          }
        },
        "summary": "Notice",
        "tags": [
          "Community board"
        ]
      },
      "post": {
        "operationId": "set_notice_community_notice_post",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {}
              }
            },
            "description": "Successful Response"
          }
        },
        "summary": "Set Notice",
        "tags": [
          "Community board"
        ]
      }
    },
    "/community/restore/apply": {
      "post": {
        "operationId": "restore_apply_community_restore_apply_post",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {}
              }
            },
            "description": "Successful Response"
          }
        },
        "summary": "Restore Apply",
        "tags": [
          "Community board"
        ]
      }
    },
    "/community/restore/preview": {
      "post": {
        "operationId": "restore_preview_community_restore_preview_post",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {}
              }
            },
            "description": "Successful Response"
          }
        },
        "summary": "Restore Preview",
        "tags": [
          "Community board"
        ]
      }
    },
    "/community/threads": {
      "get": {
        "operationId": "listing_community_threads_get",
        "parameters": [
          {
            "in": "query",
            "name": "category",
            "required": false,
            "schema": {
              "default": "",
              "title": "Category",
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "offset",
            "required": false,
            "schema": {
              "default": 0,
              "title": "Offset",
              "type": "integer"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {}
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            },
            "description": "Validation Error"
          }
        },
        "summary": "Listing",
        "tags": [
          "Community board"
        ]
      },
      "post": {
        "operationId": "create_community_threads_post",
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {}
              }
            },
            "description": "Successful Response"
          }
        },
        "summary": "Create",
        "tags": [
          "Community board"
        ]
      }
    },
    "/community/threads/{identifier}": {
      "get": {
        "operationId": "thread_community_threads__identifier__get",
        "parameters": [
          {
            "in": "path",
            "name": "identifier",
            "required": true,
            "schema": {
              "title": "Identifier",
              "type": "integer"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {}
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            },
            "description": "Validation Error"
          }
        },
        "summary": "Thread",
        "tags": [
          "Community board"
        ]
      }
    },
    "/community/threads/{identifier}/replies": {
      "post": {
        "operationId": "reply_community_threads__identifier__replies_post",
        "parameters": [
          {
            "in": "path",
            "name": "identifier",
            "required": true,
            "schema": {
              "title": "Identifier",
              "type": "integer"
            }
          }
        ],
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "schema": {}
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            },
            "description": "Validation Error"
          }
        },
        "summary": "Reply",
        "tags": [
          "Community board"
        ]
      }
    },
    "/configuration": {
      "get": {
        "operationId": "read_configuration_get",
        "parameters": [
          {
            "in": "query",
            "name": "file",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "title": "File"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {}
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            },
            "description": "Validation Error"
          }
        },
        "summary": "Read",
        "tags": [
          "Configuration"
        ]
      }
    },
    "/configuration/history/{identifier}": {
      "get": {
        "operationId": "history_configuration_history__identifier__get",
        "parameters": [
          {
            "in": "path",
            "name": "identifier",
            "required": true,
            "schema": {
              "title": "Identifier",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {}
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            },
            "description": "Validation Error"
          }
        },
        "summary": "History",
        "tags": [
          "Configuration"
        ]
      }
    },
    "/configuration/status": {
      "get": {
        "operationId": "status_configuration_status_get",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {}
              }
            },
            "description": "Successful Response"
          }
        },
        "summary": "Status",
        "tags": [
          "Configuration"
        ]
      }
    },
    "/configuration/{action}": {
      "post": {
        "operationId": "change_configuration__action__post",
        "parameters": [
          {
            "in": "path",
            "name": "action",
            "required": true,
            "schema": {
              "title": "Action",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {}
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            },
            "description": "Validation Error"
          }
        },
        "summary": "Change",
        "tags": [
          "Configuration"
        ]
      }
    },
    "/debug": {
      "get": {
        "operationId": "get_debug_debug_get",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {}
              }
            },
            "description": "Successful Response"
          }
        },
        "summary": "Get Debug",
        "tags": [
          "Debug"
        ]
      }
    },
    "/debug/off": {
      "post": {
        "operationId": "debug_off_debug_off_post",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {}
              }
            },
            "description": "Successful Response"
          }
        },
        "summary": "Debug Off",
        "tags": [
          "Debug"
        ]
      }
    },
    "/debug/on": {
      "post": {
        "operationId": "debug_on_debug_on_post",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {}
              }
            },
            "description": "Successful Response"
          }
        },
        "summary": "Debug On",
        "tags": [
          "Debug"
        ]
      }
    },
    "/events": {
      "get": {
        "operationId": "events_events_get",
        "parameters": [
          {
            "in": "query",
            "name": "limit",
            "required": false,
            "schema": {
              "default": 100,
              "maximum": 1000,
              "minimum": 1,
              "title": "Limit",
              "type": "integer"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {}
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            },
            "description": "Validation Error"
          }
        },
        "summary": "Events",
        "tags": [
          "Events"
        ]
      }
    },
    "/health": {
      "get": {
        "operationId": "health_health_get",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {}
              }
            },
            "description": "Successful Response"
          }
        },
        "summary": "Health",
        "tags": [
          "Health"
        ]
      }
    },
    "/https/setup": {
      "get": {
        "operationId": "details_https_setup_get",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {}
              }
            },
            "description": "Successful Response"
          }
        },
        "summary": "Details",
        "tags": [
          "HTTPS setup"
        ]
      },
      "post": {
        "operationId": "setup_https_setup_post",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {}
              }
            },
            "description": "Successful Response"
          }
        },
        "summary": "Setup",
        "tags": [
          "HTTPS setup"
        ]
      }
    },
    "/https/status": {
      "get": {
        "operationId": "status_https_status_get",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {}
              }
            },
            "description": "Successful Response"
          }
        },
        "summary": "Status",
        "tags": [
          "HTTPS setup"
        ]
      }
    },
    "/library": {
      "get": {
        "operationId": "inventory_library_get",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {}
              }
            },
            "description": "Successful Response"
          }
        },
        "summary": "Inventory",
        "tags": [
          "Library"
        ]
      }
    },
    "/library/catalogue": {
      "get": {
        "operationId": "catalogue_library_catalogue_get",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {}
              }
            },
            "description": "Successful Response"
          }
        },
        "summary": "Catalogue",
        "tags": [
          "Library"
        ]
      }
    },
    "/library/changes": {
      "get": {
        "operationId": "changes_library_changes_get",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {}
              }
            },
            "description": "Successful Response"
          }
        },
        "summary": "Changes",
        "tags": [
          "Library"
        ]
      }
    },
    "/library/install": {
      "post": {
        "operationId": "install_library_install_post",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {}
              }
            },
            "description": "Successful Response"
          }
        },
        "summary": "Install",
        "tags": [
          "Library"
        ]
      }
    },
    "/library/remove": {
      "post": {
        "operationId": "remove_library_remove_post",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {}
              }
            },
            "description": "Successful Response"
          }
        },
        "summary": "Remove",
        "tags": [
          "Library"
        ]
      }
    },
    "/library/restore": {
      "post": {
        "operationId": "restore_library_restore_post",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {}
              }
            },
            "description": "Successful Response"
          }
        },
        "summary": "Restore",
        "tags": [
          "Library"
        ]
      }
    },
    "/library/unlock": {
      "post": {
        "operationId": "unlock_library_unlock_post",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {}
              }
            },
            "description": "Successful Response"
          }
        },
        "summary": "Unlock",
        "tags": [
          "Library"
        ]
      }
    },
    "/network": {
      "get": {
        "operationId": "network_network_get",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {}
              }
            },
            "description": "Successful Response"
          }
        },
        "summary": "Network",
        "tags": [
          "Network"
        ]
      }
    },
    "/network/admin/access": {
      "get": {
        "operationId": "current_access_network_admin_access_get",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {}
              }
            },
            "description": "Successful Response"
          }
        },
        "summary": "Current Access",
        "tags": [
          "Network administration"
        ]
      }
    },
    "/network/admin/{action}": {
      "post": {
        "operationId": "network_action_network_admin__action__post",
        "parameters": [
          {
            "in": "path",
            "name": "action",
            "required": true,
            "schema": {
              "title": "Action",
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {}
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            },
            "description": "Validation Error"
          }
        },
        "summary": "Network Action",
        "tags": [
          "Network administration"
        ]
      }
    },
    "/recovery/presets": {
      "get": {
        "operationId": "presets_recovery_presets_get",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {}
              }
            },
            "description": "Successful Response"
          }
        },
        "summary": "Presets",
        "tags": [
          "Recovery"
        ]
      }
    },
    "/recovery/status": {
      "get": {
        "operationId": "status_recovery_status_get",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {}
              }
            },
            "description": "Successful Response"
          }
        },
        "summary": "Status",
        "tags": [
          "Recovery"
        ]
      }
    },
    "/software-updates": {
      "get": {
        "description": "Read the published build identity without contacting the internet.",
        "operationId": "current_build_software_updates_get",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {}
              }
            },
            "description": "Successful Response"
          }
        },
        "summary": "Current Build",
        "tags": [
          "Software updates"
        ]
      }
    },
    "/software-updates/check": {
      "post": {
        "description": "Check official software releases; no installation or configuration changes.",
        "operationId": "check_software_updates_check_post",
        "parameters": [
          {
            "in": "query",
            "name": "preview",
            "required": false,
            "schema": {
              "default": false,
              "title": "Preview",
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {}
              }
            },
            "description": "Successful Response"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            },
            "description": "Validation Error"
          }
        },
        "summary": "Check",
        "tags": [
          "Software updates"
        ]
      }
    },
    "/software-updates/install": {
      "post": {
        "operationId": "install_software_updates_install_post",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {}
              }
            },
            "description": "Successful Response"
          }
        },
        "summary": "Install",
        "tags": [
          "Software updates"
        ]
      }
    },
    "/software-updates/installation": {
      "get": {
        "operationId": "installation_status_software_updates_installation_get",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {}
              }
            },
            "description": "Successful Response"
          }
        },
        "summary": "Installation Status",
        "tags": [
          "Software updates"
        ]
      }
    },
    "/software-updates/stage": {
      "post": {
        "description": "Verify an explicitly submitted signed package; does not install it.",
        "operationId": "stage_software_updates_stage_post",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {}
              }
            },
            "description": "Successful Response"
          }
        },
        "summary": "Stage",
        "tags": [
          "Software updates"
        ]
      }
    },
    "/sources/check": {
      "get": {
        "operationId": "status_sources_check_get",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {}
              }
            },
            "description": "Successful Response"
          }
        },
        "summary": "Status",
        "tags": [
          "Source availability"
        ]
      },
      "post": {
        "operationId": "start_sources_check_post",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {}
              }
            },
            "description": "Successful Response"
          }
        },
        "summary": "Start",
        "tags": [
          "Source availability"
        ]
      }
    },
    "/status": {
      "get": {
        "operationId": "status_status_get",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StatusResponse"
                }
              }
            },
            "description": "Successful Response"
          }
        },
        "summary": "Current appliance status",
        "tags": [
          "Status"
        ]
      }
    }
  },
  "servers": [
    {
      "url": "/api"
    }
  ]
}
