{ "openapi": "3.1.0", "info": { "title": "Proxmox AIS", "description": "Kontrollierte Proxmox-Installation und wiederaufnehmbare Nachkonfiguration.", "version": "0.9.3" }, "paths": { "/health/live": { "get": { "summary": "Health Live", "operationId": "health_live_health_live_get", "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } } } } }, "/health/ready": { "get": { "summary": "Health Ready", "operationId": "health_ready_health_ready_get", "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } } } } }, "/auth/logout": { "post": { "summary": "Logout", "operationId": "logout_auth_logout_post", "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } } } } }, "/api/v1/me": { "get": { "summary": "Me", "operationId": "me_api_v1_me_get", "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } } } } }, "/api/v1/dashboard": { "get": { "summary": "Dashboard", "operationId": "dashboard_api_v1_dashboard_get", "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } } } } }, "/api/v1/hosts": { "get": { "summary": "Hosts", "operationId": "hosts_api_v1_hosts_get", "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } } } }, "post": { "summary": "Create Host", "operationId": "create_host_api_v1_hosts_post", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HostCreate" } } }, "required": true }, "responses": { "201": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/api/v1/hosts/import": { "post": { "summary": "Import Hosts", "operationId": "import_hosts_api_v1_hosts_import_post", "requestBody": { "content": { "application/json": { "schema": { "items": { "$ref": "#/components/schemas/HostCreate" }, "type": "array", "title": "Payload" } } }, "required": true }, "responses": { "201": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/api/v1/discoveries": { "get": { "summary": "Discoveries", "operationId": "discoveries_api_v1_discoveries_get", "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } } } } }, "/api/v1/hosts/{host_id}": { "get": { "summary": "Host Detail", "operationId": "host_detail_api_v1_hosts__host_id__get", "parameters": [ { "name": "host_id", "in": "path", "required": true, "schema": { "type": "string", "title": "Host Id" } } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } }, "patch": { "summary": "Update Host", "operationId": "update_host_api_v1_hosts__host_id__patch", "parameters": [ { "name": "host_id", "in": "path", "required": true, "schema": { "type": "string", "title": "Host Id" } } ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HostUpdate" } } } }, "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/api/v1/hosts/{host_id}/preview": { "get": { "summary": "Preview", "operationId": "preview_api_v1_hosts__host_id__preview_get", "parameters": [ { "name": "host_id", "in": "path", "required": true, "schema": { "type": "string", "title": "Host Id" } } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/api/v1/hosts/{host_id}/approve-install": { "post": { "summary": "Approve", "operationId": "approve_api_v1_hosts__host_id__approve_install_post", "parameters": [ { "name": "host_id", "in": "path", "required": true, "schema": { "type": "string", "title": "Host Id" } } ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Approval" } } } }, "responses": { "201": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/api/v1/profiles": { "get": { "summary": "Profiles", "operationId": "profiles_api_v1_profiles_get", "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } } } }, "post": { "summary": "Create Profile", "operationId": "create_profile_api_v1_profiles_post", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ProfileCreate" } } }, "required": true }, "responses": { "201": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/api/v1/modules": { "get": { "summary": "Modules", "operationId": "modules_api_v1_modules_get", "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } } } }, "post": { "summary": "Create Module", "operationId": "create_module_api_v1_modules_post", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ModuleCreate" } } }, "required": true }, "responses": { "201": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/api/v1/modules/builtin": { "get": { "summary": "Builtin Modules", "operationId": "builtin_modules_api_v1_modules_builtin_get", "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } } } } }, "/api/v1/modules/{object_id}": { "get": { "summary": "Module Detail", "operationId": "module_detail_api_v1_modules__object_id__get", "parameters": [ { "name": "object_id", "in": "path", "required": true, "schema": { "type": "string", "title": "Object Id" } } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/api/v1/profiles/{object_id}": { "get": { "summary": "Profile Detail", "operationId": "profile_detail_api_v1_profiles__object_id__get", "parameters": [ { "name": "object_id", "in": "path", "required": true, "schema": { "type": "string", "title": "Object Id" } } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/api/v1/modules/{object_id}/publish": { "post": { "summary": "Publish Module", "operationId": "publish_module_api_v1_modules__object_id__publish_post", "parameters": [ { "name": "object_id", "in": "path", "required": true, "schema": { "type": "string", "title": "Object Id" } } ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Publish" } } } }, "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/api/v1/profiles/{object_id}/publish": { "post": { "summary": "Publish Profile", "operationId": "publish_profile_api_v1_profiles__object_id__publish_post", "parameters": [ { "name": "object_id", "in": "path", "required": true, "schema": { "type": "string", "title": "Object Id" } } ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Publish" } } } }, "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/api/v1/groups": { "get": { "summary": "Groups", "operationId": "groups_api_v1_groups_get", "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } } } }, "post": { "summary": "Create Group", "operationId": "create_group_api_v1_groups_post", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GroupCreate" } } }, "required": true }, "responses": { "201": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/api/v1/groups/{group_id}/revoke": { "post": { "summary": "Revoke Group", "operationId": "revoke_group_api_v1_groups__group_id__revoke_post", "parameters": [ { "name": "group_id", "in": "path", "required": true, "schema": { "type": "string", "title": "Group Id" } } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/api/v1/iso-records": { "get": { "summary": "Iso Records", "operationId": "iso_records_api_v1_iso_records_get", "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } } } }, "post": { "summary": "Create Iso", "operationId": "create_iso_api_v1_iso_records_post", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/IsoCreate" } } }, "required": true }, "responses": { "201": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/api/v1/secrets": { "get": { "summary": "Secrets List", "operationId": "secrets_list_api_v1_secrets_get", "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } } } }, "post": { "summary": "Create Secret", "operationId": "create_secret_api_v1_secrets_post", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SecretCreate" } } }, "required": true }, "responses": { "201": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/api/v1/users": { "get": { "summary": "Users", "operationId": "users_api_v1_users_get", "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } } } }, "post": { "summary": "Create User", "operationId": "create_user_api_v1_users_post", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UserCreate" } } }, "required": true }, "responses": { "201": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/api/v1/users/{user_id}/disable": { "post": { "summary": "Disable User", "operationId": "disable_user_api_v1_users__user_id__disable_post", "parameters": [ { "name": "user_id", "in": "path", "required": true, "schema": { "type": "string", "title": "User Id" } } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/api/v1/audit": { "get": { "summary": "Audit List", "operationId": "audit_list_api_v1_audit_get", "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } } } } }, "/api/v1/runs": { "get": { "summary": "Runs", "operationId": "runs_api_v1_runs_get", "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } } } } }, "/api/v1/runs/{run_id}": { "get": { "summary": "Run Detail", "operationId": "run_detail_api_v1_runs__run_id__get", "parameters": [ { "name": "run_id", "in": "path", "required": true, "schema": { "type": "string", "title": "Run Id" } } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/api/v1/runs/{run_id}/cancel": { "post": { "summary": "Cancel Run", "operationId": "cancel_run_api_v1_runs__run_id__cancel_post", "parameters": [ { "name": "run_id", "in": "path", "required": true, "schema": { "type": "string", "title": "Run Id" } } ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/RunAction" } } } }, "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/api/v1/runs/{run_id}/resume": { "post": { "summary": "Resume Run", "operationId": "resume_run_api_v1_runs__run_id__resume_post", "parameters": [ { "name": "run_id", "in": "path", "required": true, "schema": { "type": "string", "title": "Run Id" } } ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/RunAction" } } } }, "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/api/v1/runs/{run_id}/reconcile": { "post": { "summary": "Reconcile Run", "description": "Close an externally checked abandoned run; never grants installation.", "operationId": "reconcile_run_api_v1_runs__run_id__reconcile_post", "parameters": [ { "name": "run_id", "in": "path", "required": true, "schema": { "type": "string", "title": "Run Id" } } ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/RunReconcile" } } } }, "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/installer/v1/answer": { "post": { "summary": "Installer Answer", "operationId": "installer_answer_installer_v1_answer_post", "responses": { "200": { "description": "Successful Response" } } } }, "/bootstrap/v1/{download_token}": { "get": { "summary": "Bootstrap", "operationId": "bootstrap_bootstrap_v1__download_token__get", "parameters": [ { "name": "download_token", "in": "path", "required": true, "schema": { "type": "string", "title": "Download Token" } } ], "responses": { "200": { "description": "Successful Response" }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/installer/v1/report/{report_token}": { "post": { "summary": "Installer Report", "operationId": "installer_report_installer_v1_report__report_token__post", "parameters": [ { "name": "report_token", "in": "path", "required": true, "schema": { "type": "string", "title": "Report Token" } } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/agent/v1/enroll": { "post": { "summary": "Enroll", "operationId": "enroll_agent_v1_enroll_post", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Enroll" } } }, "required": true }, "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/agent/v1/lease": { "post": { "summary": "Lease", "operationId": "lease_agent_v1_lease_post", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/LeaseRequest" } } }, "required": true }, "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/agent/v1/runs/{run_id}/manifest": { "get": { "summary": "Manifest", "operationId": "manifest_agent_v1_runs__run_id__manifest_get", "parameters": [ { "name": "run_id", "in": "path", "required": true, "schema": { "type": "string", "title": "Run Id" } } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/agent/v1/artifacts/{checksum}": { "get": { "summary": "Artifact", "operationId": "artifact_agent_v1_artifacts__checksum__get", "parameters": [ { "name": "checksum", "in": "path", "required": true, "schema": { "type": "string", "title": "Checksum" } } ], "responses": { "200": { "description": "Successful Response" }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/agent/v1/runs/{run_id}/secrets/{step_id}": { "get": { "summary": "Step Secrets", "operationId": "step_secrets_agent_v1_runs__run_id__secrets__step_id__get", "parameters": [ { "name": "run_id", "in": "path", "required": true, "schema": { "type": "string", "title": "Run Id" } }, { "name": "step_id", "in": "path", "required": true, "schema": { "type": "string", "title": "Step Id" } } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/agent/v1/runs/{run_id}/events": { "post": { "summary": "Events", "operationId": "events_agent_v1_runs__run_id__events_post", "parameters": [ { "name": "run_id", "in": "path", "required": true, "schema": { "type": "string", "title": "Run Id" } } ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/EventBatch" } } } }, "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/agent/v1/runs/{run_id}/logs": { "post": { "summary": "Logs", "operationId": "logs_agent_v1_runs__run_id__logs_post", "parameters": [ { "name": "run_id", "in": "path", "required": true, "schema": { "type": "string", "title": "Run Id" } } ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/LogBatch" } } } }, "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/agent/v1/runs/{run_id}/complete": { "post": { "summary": "Complete", "operationId": "complete_agent_v1_runs__run_id__complete_post", "parameters": [ { "name": "run_id", "in": "path", "required": true, "schema": { "type": "string", "title": "Run Id" } } ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Completion" } } } }, "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } } }, "components": { "schemas": { "Approval": { "properties": { "expected_version": { "type": "integer", "minimum": 1.0, "title": "Expected Version" }, "valid_minutes": { "type": "integer", "maximum": 1440.0, "minimum": 1.0, "title": "Valid Minutes", "default": 30 }, "confirmation": { "type": "string", "title": "Confirmation" }, "disks_confirmed": { "type": "boolean", "title": "Disks Confirmed" }, "reason": { "type": "string", "maxLength": 1000, "minLength": 5, "title": "Reason" } }, "additionalProperties": false, "type": "object", "required": [ "expected_version", "confirmation", "disks_confirmed", "reason" ], "title": "Approval" }, "Completion": { "properties": { "verification": { "additionalProperties": true, "type": "object", "title": "Verification" } }, "additionalProperties": false, "type": "object", "required": [ "verification" ], "title": "Completion" }, "Enroll": { "properties": { "run_id": { "type": "string", "title": "Run Id" }, "enrollment_secret": { "type": "string", "maxLength": 200, "minLength": 20, "title": "Enrollment Secret" }, "public_key": { "type": "string", "maxLength": 100, "minLength": 40, "title": "Public Key" }, "identities": { "items": { "$ref": "#/components/schemas/Identity" }, "type": "array", "maxItems": 32, "minItems": 1, "title": "Identities" }, "boot_id": { "type": "string", "maxLength": 80, "minLength": 1, "title": "Boot Id" } }, "additionalProperties": false, "type": "object", "required": [ "run_id", "enrollment_secret", "public_key", "identities", "boot_id" ], "title": "Enroll" }, "Event": { "properties": { "sequence": { "type": "integer", "minimum": 1.0, "title": "Sequence" }, "boot_id": { "type": "string", "maxLength": 80, "minLength": 1, "title": "Boot Id" }, "step_id": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Step Id" }, "type": { "type": "string", "enum": [ "step.started", "step.succeeded", "step.failed", "run.needs_review", "run.reboot_pending", "run.resumed", "run.cancelled", "heartbeat" ], "title": "Type" }, "occurred_at": { "type": "string", "maxLength": 80, "title": "Occurred At" }, "exit_code": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Exit Code" }, "verification": { "additionalProperties": true, "type": "object", "title": "Verification" } }, "additionalProperties": false, "type": "object", "required": [ "sequence", "boot_id", "type", "occurred_at" ], "title": "Event" }, "EventBatch": { "properties": { "events": { "items": { "$ref": "#/components/schemas/Event" }, "type": "array", "maxItems": 100, "minItems": 1, "title": "Events" } }, "additionalProperties": false, "type": "object", "required": [ "events" ], "title": "EventBatch" }, "GroupCreate": { "properties": { "name": { "type": "string", "pattern": "^[a-zA-Z0-9][a-zA-Z0-9_-]{0,63}$", "title": "Name" }, "site": { "type": "string", "maxLength": 80, "minLength": 1, "title": "Site" }, "valid_hours": { "type": "integer", "maximum": 8760.0, "minimum": 1.0, "title": "Valid Hours", "default": 720 } }, "additionalProperties": false, "type": "object", "required": [ "name", "site" ], "title": "GroupCreate" }, "HTTPValidationError": { "properties": { "detail": { "items": { "$ref": "#/components/schemas/ValidationError" }, "type": "array", "title": "Detail" } }, "type": "object", "title": "HTTPValidationError" }, "HostCreate": { "properties": { "fqdn": { "type": "string", "maxLength": 253, "minLength": 3, "title": "Fqdn" }, "site": { "type": "string", "maxLength": 80, "minLength": 1, "title": "Site" }, "management_ip": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Management Ip" }, "tags": { "items": { "type": "string" }, "type": "array", "maxItems": 30, "title": "Tags" }, "identities": { "items": { "$ref": "#/components/schemas/Identity" }, "type": "array", "maxItems": 32, "minItems": 1, "title": "Identities" }, "installation_profile_id": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Installation Profile Id" }, "postinstall_profile_id": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Postinstall Profile Id" }, "iso_id": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Iso Id" }, "overrides": { "additionalProperties": true, "type": "object", "title": "Overrides" }, "blocked": { "type": "boolean", "title": "Blocked", "default": false } }, "additionalProperties": false, "type": "object", "required": [ "fqdn", "site", "identities" ], "title": "HostCreate" }, "HostUpdate": { "properties": { "expected_version": { "type": "integer", "minimum": 1.0, "title": "Expected Version" }, "fqdn": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Fqdn" }, "site": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Site" }, "management_ip": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Management Ip" }, "tags": { "anyOf": [ { "items": { "type": "string" }, "type": "array" }, { "type": "null" } ], "title": "Tags" }, "identities": { "anyOf": [ { "items": { "$ref": "#/components/schemas/Identity" }, "type": "array" }, { "type": "null" } ], "title": "Identities" }, "installation_profile_id": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Installation Profile Id" }, "postinstall_profile_id": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Postinstall Profile Id" }, "iso_id": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Iso Id" }, "overrides": { "anyOf": [ { "additionalProperties": true, "type": "object" }, { "type": "null" } ], "title": "Overrides" }, "blocked": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "title": "Blocked" } }, "additionalProperties": false, "type": "object", "required": [ "expected_version" ], "title": "HostUpdate" }, "Identity": { "properties": { "kind": { "type": "string", "enum": [ "uuid", "serial", "mac" ], "title": "Kind" }, "value": { "type": "string", "maxLength": 200, "minLength": 1, "title": "Value" } }, "additionalProperties": false, "type": "object", "required": [ "kind", "value" ], "title": "Identity" }, "IsoCreate": { "properties": { "name": { "type": "string", "maxLength": 120, "minLength": 1, "title": "Name" }, "build": { "type": "string", "pattern": "^[0-9]+\\.[0-9]+(?:\\.[0-9]+)?-[0-9]+$", "title": "Build" }, "sha256": { "type": "string", "pattern": "^[a-fA-F0-9]{64}$", "title": "Sha256" }, "assistant_version": { "type": "string", "maxLength": 80, "minLength": 1, "title": "Assistant Version" }, "fingerprint": { "type": "string", "pattern": "^(?:[a-fA-F0-9]{64}|(?:[a-fA-F0-9]{2}:){31}[a-fA-F0-9]{2})$", "title": "Fingerprint" }, "group_id": { "type": "string", "title": "Group Id" }, "test_status": { "type": "string", "enum": [ "draft", "passed" ], "title": "Test Status", "default": "draft" }, "test_evidence": { "type": "string", "maxLength": 3000, "title": "Test Evidence", "default": "" }, "native_token_support": { "type": "boolean", "title": "Native Token Support", "default": false } }, "additionalProperties": false, "type": "object", "required": [ "name", "build", "sha256", "assistant_version", "fingerprint", "group_id" ], "title": "IsoCreate" }, "LeaseRequest": { "properties": { "run_id": { "type": "string", "title": "Run Id" } }, "additionalProperties": false, "type": "object", "required": [ "run_id" ], "title": "LeaseRequest" }, "LogBatch": { "properties": { "chunks": { "items": { "$ref": "#/components/schemas/LogChunk" }, "type": "array", "maxItems": 32, "minItems": 1, "title": "Chunks" } }, "additionalProperties": false, "type": "object", "required": [ "chunks" ], "title": "LogBatch" }, "LogChunk": { "properties": { "sequence": { "type": "integer", "minimum": 1.0, "title": "Sequence" }, "step_id": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Step Id" }, "text": { "type": "string", "maxLength": 16384, "title": "Text" } }, "additionalProperties": false, "type": "object", "required": [ "sequence", "text" ], "title": "LogChunk" }, "ModuleCreate": { "properties": { "name": { "type": "string", "maxLength": 120, "minLength": 1, "title": "Name" }, "source": { "type": "string", "maxLength": 262144, "minLength": 10, "title": "Source" }, "parameters_schema": { "additionalProperties": true, "type": "object", "title": "Parameters Schema" }, "dependencies": { "items": { "type": "string" }, "type": "array", "maxItems": 20, "title": "Dependencies" }, "target_builds": { "items": { "type": "string" }, "type": "array", "maxItems": 30, "title": "Target Builds" }, "timeout_seconds": { "type": "integer", "maximum": 7200.0, "minimum": 1.0, "title": "Timeout Seconds", "default": 600 }, "retry_safe": { "type": "boolean", "title": "Retry Safe", "default": false }, "test_evidence": { "type": "string", "maxLength": 2000, "title": "Test Evidence", "default": "" }, "reason": { "type": "string", "maxLength": 1000, "title": "Reason", "default": "" } }, "additionalProperties": false, "type": "object", "required": [ "name", "source" ], "title": "ModuleCreate" }, "ProfileCreate": { "properties": { "name": { "type": "string", "maxLength": 120, "minLength": 1, "title": "Name" }, "kind": { "type": "string", "enum": [ "installation", "postinstall" ], "title": "Kind" }, "values": { "additionalProperties": true, "type": "object", "title": "Values" }, "steps": { "items": { "$ref": "#/components/schemas/StepSpec" }, "type": "array", "maxItems": 50, "title": "Steps" }, "target_builds": { "items": { "type": "string" }, "type": "array", "maxItems": 30, "title": "Target Builds" }, "locked_fields": { "items": { "type": "string" }, "type": "array", "title": "Locked Fields" }, "reboot_budget": { "type": "integer", "maximum": 5.0, "minimum": 0.0, "title": "Reboot Budget", "default": 1 }, "reason": { "type": "string", "maxLength": 1000, "title": "Reason", "default": "" } }, "additionalProperties": false, "type": "object", "required": [ "name", "kind" ], "title": "ProfileCreate" }, "Publish": { "properties": { "test_evidence": { "type": "string", "maxLength": 2000, "minLength": 5, "title": "Test Evidence" }, "reason": { "type": "string", "maxLength": 1000, "minLength": 3, "title": "Reason" } }, "additionalProperties": false, "type": "object", "required": [ "test_evidence", "reason" ], "title": "Publish" }, "RunAction": { "properties": { "expected_version": { "type": "integer", "minimum": 1.0, "title": "Expected Version" }, "reason": { "type": "string", "maxLength": 1000, "minLength": 5, "title": "Reason" } }, "additionalProperties": false, "type": "object", "required": [ "expected_version", "reason" ], "title": "RunAction" }, "RunReconcile": { "properties": { "expected_version": { "type": "integer", "minimum": 1.0, "title": "Expected Version" }, "reason": { "type": "string", "maxLength": 1000, "minLength": 5, "title": "Reason" }, "confirmation": { "type": "string", "title": "Confirmation" }, "execution_stopped": { "type": "boolean", "title": "Execution Stopped" } }, "additionalProperties": false, "type": "object", "required": [ "expected_version", "reason", "confirmation", "execution_stopped" ], "title": "RunReconcile" }, "SecretCreate": { "properties": { "name": { "type": "string", "maxLength": 120, "minLength": 1, "title": "Name" }, "kind": { "type": "string", "enum": [ "value", "root_password" ], "title": "Kind", "default": "value" }, "value": { "type": "string", "maxLength": 16384, "minLength": 1, "title": "Value" } }, "additionalProperties": false, "type": "object", "required": [ "name", "value" ], "title": "SecretCreate" }, "StepSpec": { "properties": { "id": { "type": "string", "pattern": "^[a-zA-Z0-9][a-zA-Z0-9_-]{0,79}$", "title": "Id" }, "module_id": { "type": "string", "title": "Module Id" }, "parameters": { "additionalProperties": true, "type": "object", "title": "Parameters" }, "secret_refs": { "additionalProperties": { "type": "string" }, "type": "object", "title": "Secret Refs" }, "required": { "type": "boolean", "title": "Required", "default": true } }, "additionalProperties": false, "type": "object", "required": [ "id", "module_id" ], "title": "StepSpec" }, "UserCreate": { "properties": { "username": { "type": "string", "pattern": "^[a-zA-Z0-9][a-zA-Z0-9_.-]{1,63}$", "title": "Username" }, "password": { "type": "string", "maxLength": 1024, "minLength": 12, "title": "Password" }, "role": { "type": "string", "enum": [ "reader", "operator", "author", "admin", "developer" ], "title": "Role" } }, "additionalProperties": false, "type": "object", "required": [ "username", "password", "role" ], "title": "UserCreate" }, "ValidationError": { "properties": { "loc": { "items": { "anyOf": [ { "type": "string" }, { "type": "integer" } ] }, "type": "array", "title": "Location" }, "msg": { "type": "string", "title": "Message" }, "type": { "type": "string", "title": "Error Type" }, "input": { "title": "Input" }, "ctx": { "type": "object", "title": "Context" } }, "type": "object", "required": [ "loc", "msg", "type" ], "title": "ValidationError" } } } }