{"openapi": "3.1.0", "info": {"title": "Baklaweb API", "version": "1.0", "description": "Manage your local Linaro Automation Appliance", "contact": {"email": "support@lavacloud.io"}}, "paths": {"/api/v1/laacli/button": {"post": {"operationId": "baklaweb_api_v1_laacli_button", "summary": "Run laacli button", "parameters": [], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/CommandResponse"}}}}}, "tags": ["laacli"], "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/ButtonRequest"}}}, "required": true}, "security": [{"AuthBearer": []}, {"BasicAuth": []}, {"SessionAuth": []}]}}, "/api/v1/laacli/led": {"post": {"operationId": "baklaweb_api_v1_laacli_led", "summary": "Run laacli led", "parameters": [], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/CommandResponse"}}}}}, "tags": ["laacli"], "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/LedRequest"}}}, "required": true}, "security": [{"AuthBearer": []}, {"BasicAuth": []}, {"SessionAuth": []}]}}, "/api/v1/laacli/power": {"post": {"operationId": "baklaweb_api_v1_laacli_power", "summary": "Run laacli power", "parameters": [], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/CommandResponse"}}}}}, "tags": ["laacli"], "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/PowerRequest"}}}, "required": true}, "security": [{"AuthBearer": []}, {"BasicAuth": []}, {"SessionAuth": []}]}}, "/api/v1/laacli/rev": {"post": {"operationId": "baklaweb_api_v1_laacli_rev", "summary": "Run laacli rev", "parameters": [], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Rev"}}}}}, "tags": ["laacli"], "security": [{"AuthBearer": []}, {"BasicAuth": []}, {"SessionAuth": []}]}}, "/api/v1/laacli/screenshot": {"post": {"operationId": "baklaweb_api_v1_laacli_screenshot", "summary": "Run laacli screenshot", "parameters": [], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Screenshot"}}}}}, "tags": ["laacli"], "security": [{"AuthBearer": []}, {"BasicAuth": []}, {"SessionAuth": []}]}}, "/api/v1/laacli/temp": {"post": {"operationId": "baklaweb_api_v1_laacli_temp", "summary": "Run laacli temp", "parameters": [], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Temp"}}}}}, "tags": ["laacli"], "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/TempRequest"}}}, "required": true}, "security": [{"AuthBearer": []}, {"BasicAuth": []}, {"SessionAuth": []}]}}, "/api/v1/laacli/temp/all": {"post": {"operationId": "baklaweb_api_v1_laacli_temp_all", "summary": "Run laacli temp for all probes", "parameters": [], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/TempAll"}}}}}, "tags": ["laacli"], "security": [{"AuthBearer": []}, {"BasicAuth": []}, {"SessionAuth": []}]}}, "/api/v1/laacli/usb": {"post": {"operationId": "baklaweb_api_v1_laacli_usb", "summary": "Run laacli usb", "parameters": [], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/CommandResponse"}}}}}, "tags": ["laacli"], "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/USBRequest"}}}, "required": true}, "security": [{"AuthBearer": []}, {"BasicAuth": []}, {"SessionAuth": []}]}}, "/api/v1/laacli/usbg-ms": {"post": {"operationId": "baklaweb_api_v1_laacli_usbg_ms", "summary": "Run laacli usbg-ms", "parameters": [], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/CommandResponse"}}}}}, "tags": ["laacli"], "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/USBGRequest"}}}, "required": true}, "security": [{"AuthBearer": []}, {"BasicAuth": []}, {"SessionAuth": []}]}}, "/api/v1/laacli/watt": {"post": {"operationId": "baklaweb_api_v1_laacli_watt", "summary": "Run laacli watt", "parameters": [], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Watt"}}}}}, "tags": ["laacli"], "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/WattRequest"}}}, "required": true}, "security": [{"AuthBearer": []}, {"BasicAuth": []}, {"SessionAuth": []}]}}, "/api/v1/laacli/watt/all": {"post": {"operationId": "baklaweb_api_v1_laacli_watt_all", "summary": "Run laacli watt for all rails", "parameters": [], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"additionalProperties": {"anyOf": [{"$ref": "#/components/schemas/Watt"}, {"type": "null"}]}, "title": "Response", "type": "object"}}}}}, "tags": ["laacli"], "security": [{"AuthBearer": []}, {"BasicAuth": []}, {"SessionAuth": []}]}}, "/api/v1/devices/disks": {"get": {"operationId": "baklaweb_api_v1_devices_disks", "summary": "List disks", "parameters": [{"in": "query", "name": "limit", "schema": {"default": 100, "minimum": 1, "title": "Limit", "type": "integer"}, "required": false}, {"in": "query", "name": "offset", "schema": {"default": 0, "minimum": 0, "title": "Offset", "type": "integer"}, "required": false}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/PagedDisk"}}}}}, "tags": ["Devices"], "security": [{"AuthBearer": []}, {"BasicAuth": []}, {"SessionAuth": []}]}}, "/api/v1/devices/serials": {"get": {"operationId": "baklaweb_api_v1_devices_serials", "summary": "List serial devices", "parameters": [{"in": "query", "name": "limit", "schema": {"default": 100, "minimum": 1, "title": "Limit", "type": "integer"}, "required": false}, {"in": "query", "name": "offset", "schema": {"default": 0, "minimum": 0, "title": "Offset", "type": "integer"}, "required": false}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/PagedSerial"}}}}}, "tags": ["Devices"], "security": [{"AuthBearer": []}, {"BasicAuth": []}, {"SessionAuth": []}]}}, "/api/v1/devices/serials/{name}": {"get": {"operationId": "baklaweb_api_v1_devices_serials_details", "summary": "Serial details", "parameters": [{"in": "path", "name": "name", "schema": {"title": "Name", "type": "string"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Serial"}}}}}, "tags": ["Devices"], "security": [{"AuthBearer": []}, {"BasicAuth": []}, {"SessionAuth": []}]}}, "/api/v1/devices/usbs": {"get": {"operationId": "baklaweb_api_v1_devices_usbs", "summary": "List USB devices", "parameters": [{"in": "query", "name": "limit", "schema": {"default": 100, "minimum": 1, "title": "Limit", "type": "integer"}, "required": false}, {"in": "query", "name": "offset", "schema": {"default": 0, "minimum": 0, "title": "Offset", "type": "integer"}, "required": false}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/PagedUSB"}}}}}, "tags": ["Devices"], "security": [{"AuthBearer": []}, {"BasicAuth": []}, {"SessionAuth": []}]}}, "/api/v1/devices/usbs/{bus}/{device}": {"get": {"operationId": "baklaweb_api_v1_devices_usbs_details", "summary": "USB device details", "parameters": [{"in": "path", "name": "bus", "schema": {"title": "Bus", "type": "string"}, "required": true}, {"in": "path", "name": "device", "schema": {"title": "Device", "type": "string"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"title": "Response", "type": "string"}}, "text/plain": {"schema": {"type": "string", "examples": ["string"]}}}}}, "tags": ["Devices"], "security": [{"AuthBearer": []}, {"BasicAuth": []}, {"SessionAuth": []}]}}, "/api/v1/dmesg": {"get": {"operationId": "baklaweb_api_v1_dmesg_", "summary": "dmesg logs", "parameters": [{"in": "query", "name": "limit", "schema": {"default": 100, "minimum": 1, "title": "Limit", "type": "integer"}, "required": false}, {"in": "query", "name": "offset", "schema": {"default": 0, "minimum": 0, "title": "Offset", "type": "integer"}, "required": false}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Pagedlist"}}}}}, "tags": ["Services"], "security": [{"AuthBearer": []}, {"BasicAuth": []}, {"SessionAuth": []}]}}, "/api/v1/files{local_path}": {"get": {"operationId": "baklaweb_api_v1_files_get", "summary": "Download file or list elements in directories", "parameters": [{"in": "path", "name": "local_path", "schema": {"title": "Local Path", "type": "string"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"anyOf": [{"format": "binary", "type": "string"}, {"additionalProperties": true, "type": "object"}], "title": "Response"}}, "application/octet-stream": {"schema": {"type": "string", "format": "binary"}}}}}, "tags": ["Files"], "security": [{"AuthBearer": []}, {"BasicAuth": []}, {"SessionAuth": []}]}, "delete": {"operationId": "baklaweb_api_v1_files_delete", "summary": "Delete the file or directory", "parameters": [{"in": "path", "name": "local_path", "schema": {"title": "Local Path", "type": "string"}, "required": true}, {"in": "query", "name": "is_dir", "schema": {"default": false, "title": "Is Dir", "type": "boolean"}, "required": false}, {"in": "query", "name": "recursive", "schema": {"default": false, "title": "Recursive", "type": "boolean"}, "required": false}], "responses": {"204": {"description": "No Content"}, "400": {"description": "Bad Request", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "401": {"description": "Unauthorized", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "403": {"description": "Forbidden", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "404": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}}, "tags": ["Files"], "security": [{"AuthBearer": []}, {"BasicAuth": []}, {"SessionAuth": []}]}, "post": {"operationId": "baklaweb_api_v1_files_create", "summary": "Upload file or create directory", "parameters": [{"in": "path", "name": "local_path", "schema": {"title": "Local Path", "type": "string"}, "required": true}, {"in": "query", "name": "is_dir", "schema": {"default": false, "title": "Is Dir", "type": "boolean"}, "required": false}, {"in": "query", "name": "parents", "schema": {"default": false, "title": "Parents", "type": "boolean"}, "required": false}, {"in": "query", "name": "exist_ok", "schema": {"default": false, "title": "Exist Ok", "type": "boolean"}, "required": false}], "responses": {"201": {"description": "Created"}}, "tags": ["Files"], "requestBody": {"content": {"multipart/form-data": {"schema": {"properties": {"file": {"format": "binary", "title": "File", "type": "string"}}, "title": "FileParams", "type": "object"}}}, "required": true}, "security": [{"AuthBearer": []}, {"BasicAuth": []}, {"SessionAuth": []}]}, "patch": {"operationId": "baklaweb_api_v1_files_decompress", "summary": "Decompress a file", "parameters": [{"in": "path", "name": "local_path", "schema": {"title": "Local Path", "type": "string"}, "required": true}, {"in": "query", "name": "compression", "schema": {"title": "Compression", "type": "string"}, "required": true}, {"in": "query", "name": "tar", "schema": {"default": false, "title": "Tar", "type": "boolean"}, "required": false}], "responses": {"201": {"description": "Created"}}, "tags": ["Files"], "security": [{"AuthBearer": []}, {"BasicAuth": []}, {"SessionAuth": []}]}}, "/api/v1/network/addresses": {"get": {"operationId": "baklaweb_api_v1_network_addresses", "summary": "Network addresses", "parameters": [], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"additionalProperties": {"items": {"$ref": "#/components/schemas/NetworkAddress"}, "type": "array"}, "title": "Response", "type": "object"}}}}}, "tags": ["Network"], "security": [{"AuthBearer": []}, {"BasicAuth": []}, {"SessionAuth": []}]}}, "/api/v1/network/hostname": {"get": {"operationId": "baklaweb_api_v1_network_hostname", "summary": "Hostname", "parameters": [], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/NetworkHostname"}}}}}, "tags": ["Network"], "security": [{"AuthBearer": []}, {"BasicAuth": []}, {"SessionAuth": []}]}}, "/api/v1/network/interfaces": {"get": {"operationId": "baklaweb_api_v1_network_interfaces", "summary": "Network interfaces", "parameters": [{"in": "query", "name": "limit", "schema": {"default": 100, "minimum": 1, "title": "Limit", "type": "integer"}, "required": false}, {"in": "query", "name": "offset", "schema": {"default": 0, "minimum": 0, "title": "Offset", "type": "integer"}, "required": false}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/PagedNetworkInterface"}}}}}, "tags": ["Network"], "security": [{"AuthBearer": []}, {"BasicAuth": []}, {"SessionAuth": []}]}}, "/api/v1/network/routes": {"get": {"operationId": "baklaweb_api_v1_network_routes", "summary": "Network routes", "parameters": [], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"additionalProperties": {"items": {"$ref": "#/components/schemas/NetworkRoute"}, "type": "array"}, "title": "Response", "type": "object"}}}}}, "tags": ["Network"], "security": [{"AuthBearer": []}, {"BasicAuth": []}, {"SessionAuth": []}]}}, "/api/v1/network/settings": {"get": {"operationId": "baklaweb_api_v1_network_settings", "summary": "Network settings", "parameters": [], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"title": "Response", "type": "string"}}, "text/plain": {"schema": {"type": "string", "examples": ["string"]}}}}}, "tags": ["Network"], "security": [{"AuthBearer": []}, {"BasicAuth": []}, {"SessionAuth": []}]}}, "/api/v1/services": {"get": {"operationId": "baklaweb_api_v1_services", "summary": "List services", "parameters": [{"in": "query", "name": "limit", "schema": {"default": 100, "minimum": 1, "title": "Limit", "type": "integer"}, "required": false}, {"in": "query", "name": "offset", "schema": {"default": 0, "minimum": 0, "title": "Offset", "type": "integer"}, "required": false}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/PagedService"}}}}}, "tags": ["Services"], "security": [{"AuthBearer": []}, {"BasicAuth": []}, {"SessionAuth": []}]}}, "/api/v1/services/{name}/logs": {"get": {"operationId": "baklaweb_api_v1_services_details_logs", "summary": "Service logs", "parameters": [{"in": "path", "name": "name", "schema": {"title": "Name", "type": "string"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"items": {"additionalProperties": true, "type": "object"}, "title": "Response", "type": "array"}}}}, "404": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}}, "tags": ["Services"], "security": [{"AuthBearer": []}, {"BasicAuth": []}, {"SessionAuth": []}]}}, "/api/v1/system/fleet": {"get": {"operationId": "baklaweb_api_v1_system_fleet", "summary": "Bakfleet Info", "parameters": [], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/SystemFleet"}}}}}, "tags": ["System"], "security": [{"AuthBearer": []}, {"BasicAuth": []}, {"SessionAuth": []}]}}, "/api/v1/system/metrics": {"get": {"operationId": "baklaweb_api_v1_system_metrics", "summary": "System metrics", "parameters": [], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"additionalProperties": true, "title": "Response", "type": "object"}}}}}, "tags": ["System"], "security": [{"AuthBearer": []}, {"BasicAuth": []}, {"SessionAuth": []}]}}, "/api/v1/system/version": {"get": {"operationId": "baklaweb_api_v1_system_version", "summary": "Appliance Version", "parameters": [], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/SystemVersion"}}}}}, "tags": ["System"], "security": [{"AuthBearer": []}, {"BasicAuth": []}, {"SessionAuth": []}]}}, "/api/v1/users": {"get": {"operationId": "baklaweb_api_v1_users", "summary": "List users", "parameters": [{"in": "query", "name": "limit", "schema": {"default": 100, "minimum": 1, "title": "Limit", "type": "integer"}, "required": false}, {"in": "query", "name": "offset", "schema": {"default": 0, "minimum": 0, "title": "Offset", "type": "integer"}, "required": false}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/PagedUser"}}}}}, "tags": ["Users"], "security": [{"AuthBearer": []}, {"BasicAuth": []}, {"SessionAuth": []}]}}, "/api/v1/users/me": {"get": {"operationId": "baklaweb_api_v1_users_me", "summary": "Get details about self", "parameters": [], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/UserDetails"}}}}}, "tags": ["Users"], "security": [{"AuthBearer": []}, {"BasicAuth": []}, {"SessionAuth": []}]}}, "/api/v1/workers": {"get": {"operationId": "baklaweb_api_v1_workers", "summary": "List workers", "parameters": [{"in": "query", "name": "limit", "schema": {"default": 100, "minimum": 1, "title": "Limit", "type": "integer"}, "required": false}, {"in": "query", "name": "offset", "schema": {"default": 0, "minimum": 0, "title": "Offset", "type": "integer"}, "required": false}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/PagedWorker"}}}}}, "tags": ["Workers"], "security": [{"AuthBearer": []}, {"BasicAuth": []}, {"SessionAuth": []}]}}, "/api/v1/workers/{id}": {"get": {"operationId": "baklaweb_api_v1_workers_details", "summary": "Worker details", "parameters": [{"in": "path", "name": "id", "schema": {"title": "Id", "type": "integer"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/WorkerDetails"}}}}}, "tags": ["Workers"], "security": [{"AuthBearer": []}, {"BasicAuth": []}, {"SessionAuth": []}]}}, "/api/v1/workers/{id}/dockerfile": {"get": {"operationId": "baklaweb_api_v1_workers_details_dockerfile", "summary": "Worker Dockerfile", "parameters": [{"in": "path", "name": "id", "schema": {"title": "Id", "type": "integer"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"title": "Response", "type": "string"}}, "text/plain": {"schema": {"type": "string", "examples": ["string"]}}}}}, "tags": ["Workers"], "security": [{"AuthBearer": []}, {"BasicAuth": []}, {"SessionAuth": []}]}}, "/api/v1/workers/{id}/logs": {"get": {"operationId": "baklaweb_api_v1_workers_details_logs", "summary": "Worker logs", "parameters": [{"in": "path", "name": "id", "schema": {"title": "Id", "type": "integer"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"items": {"additionalProperties": true, "type": "object"}, "title": "Response", "type": "array"}}}}, "404": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}}, "tags": ["Workers"], "security": [{"AuthBearer": []}, {"BasicAuth": []}, {"SessionAuth": []}]}}, "/api/v1/workers/{id}/test": {"get": {"operationId": "baklaweb_api_v1_workers_details_test", "summary": "Test connection to LAVA server", "parameters": [{"in": "path", "name": "id", "schema": {"title": "Id", "type": "integer"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/WorkerConnection"}}}}}, "tags": ["Workers"], "security": [{"AuthBearer": []}, {"BasicAuth": []}, {"SessionAuth": []}]}}}, "components": {"schemas": {"CommandResponse": {"properties": {"cmd": {"items": {"type": "string"}, "title": "Cmd", "type": "array"}, "code": {"title": "Code", "type": "integer"}, "stderr": {"title": "Stderr", "type": "string"}, "stdout": {"title": "Stdout", "type": "string"}}, "required": ["cmd", "code", "stderr", "stdout"], "title": "CommandResponse", "type": "object"}, "Button": {"enum": ["1", "2", "power", "reset"], "title": "Button", "type": "string"}, "ButtonRequest": {"properties": {"button": {"$ref": "#/components/schemas/Button"}, "state": {"$ref": "#/components/schemas/State"}}, "required": ["button", "state"], "title": "ButtonRequest", "type": "object"}, "State": {"enum": ["on", "off", "status"], "title": "State", "type": "string"}, "LedRequest": {"properties": {"state": {"$ref": "#/components/schemas/LedState"}}, "required": ["state"], "title": "LedRequest", "type": "object"}, "LedState": {"enum": ["on", "off"], "title": "LedState", "type": "string"}, "PowerRequest": {"properties": {"vbus": {"$ref": "#/components/schemas/VBus"}, "state": {"$ref": "#/components/schemas/PowerState"}}, "required": ["vbus", "state"], "title": "PowerRequest", "type": "object"}, "PowerState": {"enum": ["on", "off", "reset", "status"], "title": "PowerState", "type": "string"}, "VBus": {"enum": ["1v8", "3v3", "5v", "12v"], "title": "VBus", "type": "string"}, "Rev": {"properties": {"cmd": {"items": {"type": "string"}, "title": "Cmd", "type": "array"}, "code": {"title": "Code", "type": "integer"}, "stderr": {"title": "Stderr", "type": "string"}, "stdout": {"title": "Stdout", "type": "string"}, "revision": {"anyOf": [{"type": "number"}, {"type": "null"}], "title": "Revision"}}, "required": ["cmd", "code", "stderr", "stdout", "revision"], "title": "Rev", "type": "object"}, "Screenshot": {"properties": {"cmd": {"items": {"type": "string"}, "title": "Cmd", "type": "array"}, "code": {"title": "Code", "type": "integer"}, "stderr": {"title": "Stderr", "type": "string"}, "stdout": {"title": "Stdout", "type": "string"}, "screenshot": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Screenshot"}}, "required": ["cmd", "code", "stderr", "stdout", "screenshot"], "title": "Screenshot", "type": "object"}, "Temp": {"properties": {"cmd": {"items": {"type": "string"}, "title": "Cmd", "type": "array"}, "code": {"title": "Code", "type": "integer"}, "stderr": {"title": "Stderr", "type": "string"}, "stdout": {"title": "Stdout", "type": "string"}, "temperature": {"anyOf": [{"type": "number"}, {"type": "null"}], "title": "Temperature"}}, "required": ["cmd", "code", "stderr", "stdout", "temperature"], "title": "Temp", "type": "object"}, "Probe": {"enum": ["amb", "dut", "sys"], "title": "Probe", "type": "string"}, "TempRequest": {"properties": {"probe": {"$ref": "#/components/schemas/Probe"}}, "required": ["probe"], "title": "TempRequest", "type": "object"}, "TempAll": {"properties": {"amb": {"$ref": "#/components/schemas/Temp"}, "dut": {"$ref": "#/components/schemas/Temp"}, "sys": {"$ref": "#/components/schemas/Temp"}}, "required": ["amb", "dut", "sys"], "title": "TempAll", "type": "object"}, "USBPort": {"enum": [0, 1, 2, 3, 4], "title": "USBPort", "type": "integer"}, "USBRequest": {"properties": {"port": {"$ref": "#/components/schemas/USBPort"}, "state": {"$ref": "#/components/schemas/USBState"}}, "required": ["port", "state"], "title": "USBRequest", "type": "object"}, "USBState": {"enum": ["on", "off", "reset", "start", "status", "vbus"], "title": "USBState", "type": "string"}, "USBGRequest": {"properties": {"filename": {"title": "Filename", "type": "string"}, "state": {"$ref": "#/components/schemas/USBGState"}}, "required": ["filename", "state"], "title": "USBGRequest", "type": "object"}, "USBGState": {"enum": ["on", "off", "status"], "title": "USBGState", "type": "string"}, "Watt": {"properties": {"cmd": {"items": {"type": "string"}, "title": "Cmd", "type": "array"}, "code": {"title": "Code", "type": "integer"}, "stderr": {"title": "Stderr", "type": "string"}, "stdout": {"title": "Stdout", "type": "string"}, "V": {"anyOf": [{"type": "number"}, {"type": "null"}], "title": "V"}, "A": {"anyOf": [{"type": "number"}, {"type": "null"}], "title": "A"}, "W": {"anyOf": [{"type": "number"}, {"type": "null"}], "title": "W"}}, "required": ["cmd", "code", "stderr", "stdout", "V", "A", "W"], "title": "Watt", "type": "object"}, "WattRequest": {"properties": {"vbus": {"$ref": "#/components/schemas/VBus"}}, "required": ["vbus"], "title": "WattRequest", "type": "object"}, "Input": {"properties": {"limit": {"default": 100, "minimum": 1, "title": "Limit", "type": "integer"}, "offset": {"default": 0, "minimum": 0, "title": "Offset", "type": "integer"}}, "title": "Input", "type": "object"}, "Disk": {"properties": {"label": {"title": "Label", "type": "string"}, "path": {"title": "Path", "type": "string"}}, "required": ["label", "path"], "title": "Disk", "type": "object"}, "PagedDisk": {"properties": {"items": {"items": {"$ref": "#/components/schemas/Disk"}, "title": "Items", "type": "array"}, "count": {"title": "Count", "type": "integer"}}, "required": ["items", "count"], "title": "PagedDisk", "type": "object"}, "PagedSerial": {"properties": {"items": {"items": {"$ref": "#/components/schemas/Serial"}, "title": "Items", "type": "array"}, "count": {"title": "Count", "type": "integer"}}, "required": ["items", "count"], "title": "PagedSerial", "type": "object"}, "Serial": {"properties": {"name": {"title": "Name", "type": "string"}, "port": {"title": "Port", "type": "integer"}, "path": {"title": "Path", "type": "string"}, "speed": {"title": "Speed", "type": "string"}}, "required": ["name", "port", "path", "speed"], "title": "Serial", "type": "object"}, "PagedUSB": {"properties": {"items": {"items": {"$ref": "#/components/schemas/USB"}, "title": "Items", "type": "array"}, "count": {"title": "Count", "type": "integer"}}, "required": ["items", "count"], "title": "PagedUSB", "type": "object"}, "USB": {"properties": {"bus": {"title": "Bus", "type": "string"}, "device": {"title": "Device", "type": "string"}, "id": {"title": "Id", "type": "string"}, "tag": {"title": "Tag", "type": "string"}}, "required": ["bus", "device", "id", "tag"], "title": "USB", "type": "object"}, "Pagedlist": {"properties": {"items": {"items": {"items": {}, "type": "array"}, "title": "Items", "type": "array"}, "count": {"title": "Count", "type": "integer"}}, "required": ["items", "count"], "title": "Pagedlist", "type": "object"}, "Error": {"properties": {"detail": {"title": "Detail", "type": "string"}}, "required": ["detail"], "title": "Error", "type": "object"}, "NetworkAddress": {"properties": {"ip": {"title": "Ip", "type": "string"}, "prefix": {"title": "Prefix", "type": "integer"}, "flags": {"title": "Flags", "type": "string"}}, "required": ["ip", "prefix", "flags"], "title": "NetworkAddress", "type": "object"}, "NetworkHostname": {"properties": {"hostname": {"title": "Hostname", "type": "string"}}, "required": ["hostname"], "title": "NetworkHostname", "type": "object"}, "NetworkInterface": {"properties": {"name": {"title": "Name", "type": "string"}, "type": {"title": "Type", "type": "string"}, "status": {"title": "Status", "type": "string"}, "mac": {"title": "Mac", "type": "string"}}, "required": ["name", "type", "status", "mac"], "title": "NetworkInterface", "type": "object"}, "PagedNetworkInterface": {"properties": {"items": {"items": {"$ref": "#/components/schemas/NetworkInterface"}, "title": "Items", "type": "array"}, "count": {"title": "Count", "type": "integer"}}, "required": ["items", "count"], "title": "PagedNetworkInterface", "type": "object"}, "NetworkRoute": {"properties": {"src": {"title": "Src", "type": "string"}, "dst": {"title": "Dst", "type": "string"}, "via": {"title": "Via", "type": "string"}, "type": {"title": "Type", "type": "string"}, "protocol": {"title": "Protocol", "type": "string"}, "dst_prefix": {"title": "Dst Prefix", "type": "integer"}}, "required": ["src", "dst", "via", "type", "protocol", "dst_prefix"], "title": "NetworkRoute", "type": "object"}, "PagedService": {"properties": {"items": {"items": {"$ref": "#/components/schemas/Service"}, "title": "Items", "type": "array"}, "count": {"title": "Count", "type": "integer"}}, "required": ["items", "count"], "title": "PagedService", "type": "object"}, "Service": {"properties": {"name": {"title": "Name", "type": "string"}, "status": {"title": "Status", "type": "string"}}, "required": ["name", "status"], "title": "Service", "type": "object"}, "SystemFleet": {"properties": {"token": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Token"}, "online": {"anyOf": [{"type": "boolean"}, {"type": "null"}], "title": "Online"}, "serial": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Serial"}, "organization": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Organization"}}, "required": ["token", "online", "serial", "organization"], "title": "SystemFleet", "type": "object"}, "SystemVersion": {"properties": {"version": {"title": "Version", "type": "string"}}, "required": ["version"], "title": "SystemVersion", "type": "object"}, "PagedUser": {"properties": {"items": {"items": {"$ref": "#/components/schemas/User"}, "title": "Items", "type": "array"}, "count": {"title": "Count", "type": "integer"}}, "required": ["items", "count"], "title": "PagedUser", "type": "object"}, "User": {"properties": {"id": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "ID"}, "username": {"description": "Required. 150 characters or fewer. Letters, digits and @/./+/-/_ only.", "maxLength": 150, "title": "Username", "type": "string"}}, "required": ["username"], "title": "User", "type": "object"}, "UserDetails": {"properties": {"token": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Token"}, "id": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "ID"}, "username": {"description": "Required. 150 characters or fewer. Letters, digits and @/./+/-/_ only.", "maxLength": 150, "title": "Username", "type": "string"}, "is_superuser": {"default": false, "description": "Designates that this user has all permissions without explicitly assigning them.", "title": "Superuser Status", "type": "boolean"}, "is_staff": {"default": false, "description": "Designates whether the user can log into this admin site.", "title": "Staff Status", "type": "boolean"}, "groups": {"description": "The groups this user belongs to. A user will get all permissions granted to each of their groups.", "items": {"type": "integer"}, "title": "Groups", "type": "array"}}, "required": ["token", "username", "groups"], "title": "UserDetails", "type": "object"}, "PagedWorker": {"properties": {"items": {"items": {"$ref": "#/components/schemas/Worker"}, "title": "Items", "type": "array"}, "count": {"title": "Count", "type": "integer"}}, "required": ["items", "count"], "title": "PagedWorker", "type": "object"}, "Worker": {"properties": {"id": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "ID"}, "name": {"maxLength": 50, "title": "Name", "type": "string"}, "server_url": {"maxLength": 50, "title": "Server Url", "type": "string"}}, "required": ["name", "server_url"], "title": "Worker", "type": "object"}, "WorkerDetails": {"properties": {"running": {"title": "Running", "type": "boolean"}, "id": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "ID"}, "name": {"maxLength": 50, "title": "Name", "type": "string"}, "server_url": {"maxLength": 50, "title": "Server Url", "type": "string"}, "token": {"maxLength": 100, "title": "Token", "type": "string"}}, "required": ["running", "name", "server_url", "token"], "title": "WorkerDetails", "type": "object"}, "WorkerConnection": {"properties": {"connected": {"title": "Connected", "type": "boolean"}, "error": {"title": "Error", "type": "string"}, "status_code": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Status Code"}}, "required": ["connected", "error"], "title": "WorkerConnection", "type": "object"}}, "securitySchemes": {"AuthBearer": {"type": "http", "scheme": "bearer"}, "BasicAuth": {"type": "http", "scheme": "basic"}, "SessionAuth": {"type": "apiKey", "in": "cookie", "name": "sessionid"}}}, "servers": [{"url": "http://laa.local", "description": "Default LAA"}], "tags": [{"name": "laacli", "description": "Run laacli commands"}, {"name": "Devices", "description": "Manage devices"}, {"name": "Files", "description": "Manage files and directories in /var/lib/lava/dispatcher/tmp"}, {"name": "Network", "description": "Manage network configuration"}, {"name": "Services", "description": "Manage system services"}, {"name": "Users", "description": "Manage LAA users"}, {"name": "Workers", "description": "Manage LAVA workers"}, {"name": "System", "description": "Manage Appliance system info"}]}