{ "swagger": "2.0", "info": { "description": "BoxLite Runner API", "title": "BoxLite Runner API", "contact": {}, "version": "v0.0.0-dev" }, "paths": { "/": { "get": { "description": "Health check", "produces": ["application/json"], "summary": "Health check", "operationId": "HealthCheck", "responses": { "200": { "description": "OK", "schema": { "type": "object", "additionalProperties": { "type": "string" } } } } } }, "/boxes": { "post": { "description": "Create a box", "produces": ["application/json"], "tags": ["box"], "summary": "Create a box", "operationId": "Create", "parameters": [ { "description": "Create box", "name": "box", "in": "body", "required": true, "schema": { "$ref": "#/definitions/CreateBoxDTO" } } ], "responses": { "201": { "description": "Created", "schema": { "$ref": "#/definitions/StartBoxResponse" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "401": { "description": "Unauthorized", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "409": { "description": "Conflict", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/ErrorResponse" } } } } }, "/boxes/{boxId}": { "get": { "description": "Get box info", "produces": ["application/json"], "tags": ["box"], "summary": "Get box info", "operationId": "Info", "parameters": [ { "type": "string", "description": "Box ID", "name": "boxId", "in": "path", "required": true } ], "responses": { "200": { "description": "Box info", "schema": { "$ref": "#/definitions/BoxInfoResponse" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "401": { "description": "Unauthorized", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "409": { "description": "Conflict", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/ErrorResponse" } } } } }, "/boxes/{boxId}/backup": { "post": { "description": "Create box backup", "produces": ["application/json"], "tags": ["box"], "summary": "Create box backup", "operationId": "CreateBackup", "parameters": [ { "type": "string", "description": "Box ID", "name": "boxId", "in": "path", "required": true }, { "description": "Create backup", "name": "box", "in": "body", "required": true, "schema": { "$ref": "#/definitions/CreateBackupDTO" } } ], "responses": { "201": { "description": "Backup started", "schema": { "type": "string" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "401": { "description": "Unauthorized", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "409": { "description": "Conflict", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/ErrorResponse" } } } } }, "/boxes/{boxId}/destroy": { "post": { "description": "Destroy box", "produces": ["application/json"], "tags": ["box"], "summary": "Destroy box", "operationId": "Destroy", "parameters": [ { "type": "string", "description": "Box ID", "name": "boxId", "in": "path", "required": true } ], "responses": { "200": { "description": "Box destroyed", "schema": { "type": "string" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "401": { "description": "Unauthorized", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "409": { "description": "Conflict", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/ErrorResponse" } } } } }, "/boxes/{boxId}/is-recoverable": { "post": { "description": "Check if the box's error reason indicates a recoverable error", "consumes": ["application/json"], "produces": ["application/json"], "tags": ["box"], "summary": "Check if box error is recoverable", "operationId": "IsRecoverable", "parameters": [ { "type": "string", "description": "Box ID", "name": "boxId", "in": "path", "required": true }, { "description": "Error reason to check", "name": "request", "in": "body", "required": true, "schema": { "$ref": "#/definitions/IsRecoverableDTO" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/IsRecoverableResponse" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/ErrorResponse" } } } } }, "/boxes/{boxId}/network-settings": { "post": { "description": "Update box network settings", "produces": ["application/json"], "tags": ["box"], "summary": "Update box network settings", "operationId": "UpdateNetworkSettings", "parameters": [ { "type": "string", "description": "Box ID", "name": "boxId", "in": "path", "required": true }, { "description": "Update network settings", "name": "box", "in": "body", "required": true, "schema": { "$ref": "#/definitions/UpdateNetworkSettingsDTO" } } ], "responses": { "200": { "description": "Network settings updated", "schema": { "type": "string" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "401": { "description": "Unauthorized", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "409": { "description": "Conflict", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/ErrorResponse" } } } } }, "/boxes/{boxId}/recover": { "post": { "description": "Recover box from error state using specified recovery type", "consumes": ["application/json"], "produces": ["application/json"], "tags": ["box"], "summary": "Recover box from error state", "operationId": "Recover", "parameters": [ { "type": "string", "description": "Box ID", "name": "boxId", "in": "path", "required": true }, { "description": "Recovery parameters", "name": "recovery", "in": "body", "required": true, "schema": { "$ref": "#/definitions/RecoverBoxDTO" } } ], "responses": { "200": { "description": "Box recovered", "schema": { "type": "string" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "401": { "description": "Unauthorized", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "409": { "description": "Conflict", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/ErrorResponse" } } } } }, "/boxes/{boxId}/start": { "post": { "description": "Start box", "produces": ["application/json"], "tags": ["box"], "summary": "Start box", "operationId": "Start", "parameters": [ { "type": "string", "description": "Box ID", "name": "boxId", "in": "path", "required": true }, { "description": "Metadata", "name": "metadata", "in": "body", "schema": { "type": "object" } }, { "type": "string", "description": "Auth token", "name": "token", "in": "query" } ], "responses": { "200": { "description": "Box started", "schema": { "$ref": "#/definitions/StartBoxResponse" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "401": { "description": "Unauthorized", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "409": { "description": "Conflict", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/ErrorResponse" } } } } }, "/boxes/{boxId}/stop": { "post": { "description": "Stop box", "produces": ["application/json"], "tags": ["box"], "summary": "Stop box", "operationId": "Stop", "parameters": [ { "type": "string", "description": "Box ID", "name": "boxId", "in": "path", "required": true }, { "description": "Stop box", "name": "box", "in": "body", "schema": { "$ref": "#/definitions/StopBoxDTO" } } ], "responses": { "200": { "description": "Box stopped", "schema": { "type": "string" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "401": { "description": "Unauthorized", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "409": { "description": "Conflict", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/ErrorResponse" } } } } }, "/info": { "get": { "description": "Runner info with system metrics", "produces": ["application/json"], "summary": "Runner info", "operationId": "RunnerInfo", "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/RunnerInfoResponseDTO" } } } } }, "/snapshots/build": { "post": { "description": "Build a snapshot from a Dockerfile and context hashes. The operation runs asynchronously and returns 202 immediately.", "tags": ["snapshots"], "summary": "Build a snapshot", "operationId": "BuildSnapshot", "parameters": [ { "description": "Build snapshot request", "name": "request", "in": "body", "required": true, "schema": { "$ref": "#/definitions/BuildSnapshotRequestDTO" } } ], "responses": { "202": { "description": "Snapshot build started", "schema": { "type": "string" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "401": { "description": "Unauthorized", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "409": { "description": "Conflict", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/ErrorResponse" } } } } }, "/snapshots/exists": { "get": { "description": "Check if a specified snapshot exists locally", "produces": ["application/json"], "tags": ["snapshots"], "summary": "Check if a snapshot exists", "operationId": "SnapshotExists", "parameters": [ { "type": "string", "description": "Snapshot name and tag", "name": "snapshot", "in": "query", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/SnapshotExistsResponse" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "401": { "description": "Unauthorized", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "409": { "description": "Conflict", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/ErrorResponse" } } } } }, "/snapshots/info": { "get": { "description": "Get information about a specified snapshot including size and entrypoint. Returns 422 if the last pull/build operation failed, with the error reason in the message.", "produces": ["application/json"], "tags": ["snapshots"], "summary": "Get snapshot information", "operationId": "GetSnapshotInfo", "parameters": [ { "type": "string", "description": "Snapshot name and tag", "name": "snapshot", "in": "query", "required": true } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/SnapshotInfoResponse" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "401": { "description": "Unauthorized", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "422": { "description": "Unprocessable Entity", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/ErrorResponse" } } } } }, "/snapshots/inspect": { "post": { "description": "Inspect a specified snapshot in a registry", "produces": ["application/json"], "tags": ["snapshots"], "summary": "Inspect a snapshot in a registry", "operationId": "InspectSnapshotInRegistry", "parameters": [ { "description": "Inspect snapshot in registry request", "name": "request", "in": "body", "required": true, "schema": { "$ref": "#/definitions/InspectSnapshotInRegistryRequest" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/SnapshotDigestResponse" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "401": { "description": "Unauthorized", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/ErrorResponse" } } } } }, "/snapshots/logs": { "get": { "description": "Stream build logs", "tags": ["snapshots"], "summary": "Get build logs", "operationId": "GetBuildLogs", "parameters": [ { "type": "string", "description": "Snapshot ref", "name": "snapshotRef", "in": "query", "required": true }, { "type": "boolean", "description": "Whether to follow the log output", "name": "follow", "in": "query" } ], "responses": { "200": { "description": "Build logs stream", "schema": { "type": "string" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "401": { "description": "Unauthorized", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/ErrorResponse" } } } } }, "/snapshots/pull": { "post": { "description": "Pull a snapshot from a registry and optionally push to another registry. The operation runs asynchronously and returns 202 immediately.", "tags": ["snapshots"], "summary": "Pull a snapshot", "operationId": "PullSnapshot", "parameters": [ { "description": "Pull snapshot", "name": "request", "in": "body", "required": true, "schema": { "$ref": "#/definitions/PullSnapshotRequestDTO" } } ], "responses": { "202": { "description": "Snapshot pull started", "schema": { "type": "string" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "401": { "description": "Unauthorized", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "409": { "description": "Conflict", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/ErrorResponse" } } } } }, "/snapshots/remove": { "post": { "description": "Remove a specified snapshot from the local system", "produces": ["application/json"], "tags": ["snapshots"], "summary": "Remove a snapshot", "operationId": "RemoveSnapshot", "parameters": [ { "type": "string", "description": "Snapshot name and tag", "name": "snapshot", "in": "query", "required": true } ], "responses": { "200": { "description": "Snapshot successfully removed", "schema": { "type": "string" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "401": { "description": "Unauthorized", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "409": { "description": "Conflict", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/ErrorResponse" } } } } }, "/snapshots/tag": { "post": { "description": "Tag an existing local image with a new target reference", "tags": ["snapshots"], "summary": "Tag an image", "operationId": "TagImage", "deprecated": true, "parameters": [ { "description": "Tag image request", "name": "request", "in": "body", "required": true, "schema": { "$ref": "#/definitions/TagImageRequestDTO" } } ], "responses": { "200": { "description": "Image successfully tagged", "schema": { "type": "string" } }, "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "401": { "description": "Unauthorized", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "404": { "description": "Not Found", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "409": { "description": "Conflict", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "500": { "description": "Internal Server Error", "schema": { "$ref": "#/definitions/ErrorResponse" } } } } }, "/v1/boxes/{boxId}/executions/{execId}/attach": { "get": { "tags": ["boxlite"], "summary": "Attach to an execution via WebSocket", "parameters": [ { "type": "string", "description": "Box ID", "name": "boxId", "in": "path", "required": true }, { "type": "string", "description": "Execution ID", "name": "execId", "in": "path", "required": true } ], "responses": { "101": { "description": "Switching Protocols" }, "404": { "description": "execution not found", "schema": { "type": "object", "additionalProperties": { "type": "string" } } }, "409": { "description": "already attached", "schema": { "type": "object", "additionalProperties": { "type": "string" } } } } } } }, "definitions": { "BoxInfoResponse": { "type": "object", "properties": { "backupError": { "type": "string" }, "backupSnapshot": { "type": "string" }, "backupState": { "$ref": "#/definitions/enums.BackupState" }, "daemonVersion": { "type": "string" }, "state": { "$ref": "#/definitions/enums.BoxState" } } }, "BuildSnapshotRequestDTO": { "type": "object", "required": ["dockerfile", "organizationId"], "properties": { "context": { "type": "array", "items": { "type": "string" } }, "dockerfile": { "type": "string" }, "organizationId": { "type": "string" }, "pushToInternalRegistry": { "type": "boolean" }, "registry": { "$ref": "#/definitions/RegistryDTO" }, "snapshot": { "description": "Snapshot ID and tag or the build's hash", "type": "string" }, "sourceRegistries": { "type": "array", "items": { "$ref": "#/definitions/RegistryDTO" } } } }, "CreateBackupDTO": { "type": "object", "required": ["registry", "snapshot"], "properties": { "registry": { "$ref": "#/definitions/RegistryDTO" }, "snapshot": { "type": "string" } } }, "CreateBoxDTO": { "type": "object", "required": ["id", "osUser", "image"], "properties": { "authToken": { "type": "string" }, "cpuQuota": { "type": "integer", "minimum": 1 }, "entrypoint": { "type": "array", "items": { "type": "string" } }, "env": { "type": "object", "additionalProperties": { "type": "string" } }, "fromVolumeId": { "type": "string" }, "gpuQuota": { "type": "integer", "minimum": 0 }, "id": { "type": "string" }, "memoryQuota": { "type": "integer", "minimum": 1 }, "metadata": { "type": "object", "additionalProperties": { "type": "string" } }, "networkAllowList": { "type": "string" }, "networkBlockAll": { "type": "boolean" }, "organizationId": { "description": "Nullable for backward compatibility", "type": "string" }, "osUser": { "type": "string" }, "otelEndpoint": { "type": "string" }, "regionId": { "type": "string" }, "registry": { "$ref": "#/definitions/RegistryDTO" }, "skipStart": { "type": "boolean" }, "image": { "type": "string" }, "storageQuota": { "type": "integer", "minimum": 1 }, "volumes": { "type": "array", "items": { "$ref": "#/definitions/dto.VolumeDTO" } } } }, "ErrorResponse": { "description": "Error response", "type": "object", "required": ["message", "path", "statusCode", "timestamp"], "properties": { "code": { "type": "string", "example": "BAD_REQUEST" }, "message": { "type": "string", "example": "Bad request" }, "method": { "type": "string", "example": "GET" }, "path": { "type": "string", "example": "/api/resource" }, "statusCode": { "type": "integer", "example": 400 }, "timestamp": { "type": "string", "example": "2023-01-01T12:00:00Z" } } }, "InspectSnapshotInRegistryRequest": { "type": "object", "required": ["snapshot"], "properties": { "registry": { "$ref": "#/definitions/RegistryDTO" }, "snapshot": { "type": "string", "example": "nginx:latest" } } }, "IsRecoverableDTO": { "type": "object", "required": ["errorReason"], "properties": { "errorReason": { "type": "string" } } }, "IsRecoverableResponse": { "type": "object", "properties": { "recoverable": { "type": "boolean" } } }, "PullSnapshotRequestDTO": { "type": "object", "required": ["snapshot"], "properties": { "destinationRef": { "type": "string" }, "destinationRegistry": { "$ref": "#/definitions/RegistryDTO" }, "newTag": { "type": "string" }, "registry": { "$ref": "#/definitions/RegistryDTO" }, "snapshot": { "type": "string" } } }, "RecoverBoxDTO": { "type": "object", "required": ["errorReason", "osUser"], "properties": { "backupErrorReason": { "type": "string" }, "cpuQuota": { "type": "integer", "minimum": 1 }, "env": { "type": "object", "additionalProperties": { "type": "string" } }, "errorReason": { "type": "string" }, "fromVolumeId": { "type": "string" }, "gpuQuota": { "type": "integer", "minimum": 0 }, "memoryQuota": { "type": "integer", "minimum": 1 }, "networkAllowList": { "type": "string" }, "networkBlockAll": { "type": "boolean" }, "osUser": { "type": "string" }, "snapshot": { "type": "string" }, "storageQuota": { "type": "integer", "minimum": 1 }, "volumes": { "type": "array", "items": { "$ref": "#/definitions/dto.VolumeDTO" } } } }, "RegistryDTO": { "type": "object", "required": ["url"], "properties": { "password": { "type": "string" }, "project": { "type": "string" }, "url": { "type": "string" }, "username": { "type": "string" } } }, "RunnerInfoResponseDTO": { "type": "object", "properties": { "appVersion": { "type": "string" }, "metrics": { "$ref": "#/definitions/RunnerMetrics" }, "serviceHealth": { "type": "array", "items": { "$ref": "#/definitions/RunnerServiceInfo" } } } }, "RunnerMetrics": { "type": "object", "properties": { "currentAllocatedCpu": { "type": "number" }, "currentAllocatedDiskGiB": { "type": "number" }, "currentAllocatedMemoryGiB": { "type": "number" }, "currentCpuLoadAverage": { "type": "number" }, "currentCpuUsagePercentage": { "type": "number" }, "currentDiskUsagePercentage": { "type": "number" }, "currentMemoryUsagePercentage": { "type": "number" }, "currentSnapshotCount": { "type": "integer" }, "currentStartedBoxes": { "type": "integer" } } }, "RunnerServiceInfo": { "type": "object", "required": ["healthy", "serviceName"], "properties": { "errorReason": { "type": "string" }, "healthy": { "type": "boolean" }, "serviceName": { "type": "string" } } }, "SnapshotDigestResponse": { "type": "object", "properties": { "hash": { "type": "string", "example": "a7be6198544f09a75b26e6376459b47c5b9972e7351d440e092c4faa9ea064ff" }, "sizeGB": { "type": "number", "example": 0.13 } } }, "SnapshotExistsResponse": { "type": "object", "properties": { "exists": { "type": "boolean", "example": true } } }, "SnapshotInfoResponse": { "type": "object", "properties": { "cmd": { "type": "array", "items": { "type": "string" }, "example": ["[\"nginx\"", "\"-g\"", "\"daemon off;\"]"] }, "entrypoint": { "type": "array", "items": { "type": "string" }, "example": ["[\"nginx\"", "\"-g\"", "\"daemon off;\"]"] }, "hash": { "type": "string", "example": "a7be6198544f09a75b26e6376459b47c5b9972e7351d440e092c4faa9ea064ff" }, "name": { "type": "string", "example": "nginx:latest" }, "sizeGB": { "type": "number", "example": 0.13 } } }, "StartBoxResponse": { "type": "object", "properties": { "daemonVersion": { "type": "string" } } }, "StopBoxDTO": { "type": "object", "properties": { "force": { "type": "boolean" } } }, "TagImageRequestDTO": { "type": "object", "required": ["sourceImage", "targetImage"], "properties": { "sourceImage": { "type": "string" }, "targetImage": { "type": "string" } } }, "UpdateNetworkSettingsDTO": { "type": "object", "properties": { "networkAllowList": { "type": "string" }, "networkBlockAll": { "type": "boolean" }, "networkLimitEgress": { "type": "boolean" } } }, "dto.VolumeDTO": { "type": "object", "properties": { "mountPath": { "type": "string" }, "subpath": { "type": "string" }, "volumeId": { "type": "string" } } }, "enums.BackupState": { "type": "string", "enum": ["NONE", "PENDING", "IN_PROGRESS", "COMPLETED", "FAILED"], "x-enum-varnames": [ "BackupStateNone", "BackupStatePending", "BackupStateInProgress", "BackupStateCompleted", "BackupStateFailed" ] }, "enums.BoxState": { "type": "string", "enum": [ "creating", "restoring", "destroyed", "destroying", "started", "stopped", "starting", "stopping", "resizing", "error", "unknown", "pulling_snapshot" ], "x-enum-varnames": [ "BoxStateCreating", "BoxStateRestoring", "BoxStateDestroyed", "BoxStateDestroying", "BoxStateStarted", "BoxStateStopped", "BoxStateStarting", "BoxStateStopping", "BoxStateResizing", "BoxStateError", "BoxStateUnknown", "BoxStatePullingSnapshot" ] } }, "securityDefinitions": { "Bearer": { "description": "Type \"Bearer\" followed by a space and an API token.", "type": "apiKey", "name": "Authorization", "in": "header" } }, "security": [ { "Bearer": [] } ] }