{ "openapi": "3.1.0", "info": { "title": "Inference Server", "summary": "ACT Model Inference Server for Real-time Robot Control", "version": "1.0.0" }, "paths": { "/": { "get": { "tags": [ "Health" ], "summary": "Root", "description": "Health check endpoint.", "operationId": "root__get", "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } } } } }, "/health": { "get": { "tags": [ "Health" ], "summary": "Health Check", "description": "Detailed health check.", "operationId": "health_check_health_get", "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } } } } }, "/policies": { "get": { "tags": [ "Policies" ], "summary": "List Policies", "description": "List supported policy types.", "operationId": "list_policies_policies_get", "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } } } } }, "/sessions": { "get": { "tags": [ "Sessions" ], "summary": "List Sessions", "description": "List all sessions.", "operationId": "list_sessions_sessions_get", "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "items": { "$ref": "#/components/schemas/SessionStatusResponse" }, "type": "array", "title": "Response List Sessions Sessions Get" } } } } } }, "post": { "tags": [ "Sessions" ], "summary": "Create Session", "description": "Create a new inference session.\n\nIf workspace_id is provided, all rooms will be created in that workspace.\nIf workspace_id is not provided, a new workspace will be generated automatically.\nAll rooms for a session (cameras + joints) are always created in the same workspace.", "operationId": "create_session_sessions_post", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateSessionRequest" } } }, "required": true }, "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateSessionResponse" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/sessions/{session_id}": { "get": { "tags": [ "Sessions" ], "summary": "Get Session Status", "description": "Get status of a specific session.", "operationId": "get_session_status_sessions__session_id__get", "parameters": [ { "name": "session_id", "in": "path", "required": true, "schema": { "type": "string", "title": "Session Id" } } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SessionStatusResponse" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } }, "delete": { "tags": [ "Sessions" ], "summary": "Delete Session", "description": "Delete a session.", "operationId": "delete_session_sessions__session_id__delete", "parameters": [ { "name": "session_id", "in": "path", "required": true, "schema": { "type": "string", "title": "Session Id" } } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/sessions/{session_id}/start": { "post": { "tags": [ "Control" ], "summary": "Start Inference", "description": "Start inference for a session.", "operationId": "start_inference_sessions__session_id__start_post", "parameters": [ { "name": "session_id", "in": "path", "required": true, "schema": { "type": "string", "title": "Session Id" } } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/sessions/{session_id}/stop": { "post": { "tags": [ "Control" ], "summary": "Stop Inference", "description": "Stop inference for a session.", "operationId": "stop_inference_sessions__session_id__stop_post", "parameters": [ { "name": "session_id", "in": "path", "required": true, "schema": { "type": "string", "title": "Session Id" } } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/sessions/{session_id}/restart": { "post": { "tags": [ "Control" ], "summary": "Restart Inference", "description": "Restart inference for a session.", "operationId": "restart_inference_sessions__session_id__restart_post", "parameters": [ { "name": "session_id", "in": "path", "required": true, "schema": { "type": "string", "title": "Session Id" } } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/debug/system": { "get": { "tags": [ "Debug" ], "summary": "Get System Info", "description": "Get system information for debugging.", "operationId": "get_system_info_debug_system_get", "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } } } } }, "/debug/logs": { "get": { "tags": [ "Debug" ], "summary": "Get Recent Logs", "description": "Get recent log entries for debugging.", "operationId": "get_recent_logs_debug_logs_get", "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } } } } }, "/debug/sessions/{session_id}/reset": { "post": { "tags": [ "Debug" ], "summary": "Debug Reset Session", "description": "Reset a session's internal state for debugging.", "operationId": "debug_reset_session_debug_sessions__session_id__reset_post", "parameters": [ { "name": "session_id", "in": "path", "required": true, "schema": { "type": "string", "title": "Session Id" } } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/debug/sessions/{session_id}/queue": { "get": { "tags": [ "Debug" ], "summary": "Get Session Queue Info", "description": "Get detailed information about a session's action queue.", "operationId": "get_session_queue_info_debug_sessions__session_id__queue_get", "parameters": [ { "name": "session_id", "in": "path", "required": true, "schema": { "type": "string", "title": "Session Id" } } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } } }, "components": { "schemas": { "CreateSessionRequest": { "properties": { "session_id": { "type": "string", "title": "Session Id" }, "policy_path": { "type": "string", "title": "Policy Path" }, "camera_names": { "items": { "type": "string" }, "type": "array", "title": "Camera Names", "default": [ "front" ] }, "arena_server_url": { "type": "string", "title": "Arena Server Url", "default": "http://localhost:8000" }, "workspace_id": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Workspace Id" }, "policy_type": { "type": "string", "title": "Policy Type", "default": "act" }, "language_instruction": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Language Instruction" } }, "type": "object", "required": [ "session_id", "policy_path" ], "title": "CreateSessionRequest" }, "CreateSessionResponse": { "properties": { "workspace_id": { "type": "string", "title": "Workspace Id" }, "camera_room_ids": { "additionalProperties": { "type": "string" }, "type": "object", "title": "Camera Room Ids" }, "joint_input_room_id": { "type": "string", "title": "Joint Input Room Id" }, "joint_output_room_id": { "type": "string", "title": "Joint Output Room Id" } }, "type": "object", "required": [ "workspace_id", "camera_room_ids", "joint_input_room_id", "joint_output_room_id" ], "title": "CreateSessionResponse" }, "HTTPValidationError": { "properties": { "detail": { "items": { "$ref": "#/components/schemas/ValidationError" }, "type": "array", "title": "Detail" } }, "type": "object", "title": "HTTPValidationError" }, "SessionStatusResponse": { "properties": { "session_id": { "type": "string", "title": "Session Id" }, "status": { "type": "string", "title": "Status" }, "policy_path": { "type": "string", "title": "Policy Path" }, "policy_type": { "type": "string", "title": "Policy Type" }, "camera_names": { "items": { "type": "string" }, "type": "array", "title": "Camera Names" }, "workspace_id": { "type": "string", "title": "Workspace Id" }, "rooms": { "additionalProperties": true, "type": "object", "title": "Rooms" }, "stats": { "additionalProperties": true, "type": "object", "title": "Stats" }, "inference_stats": { "anyOf": [ { "additionalProperties": true, "type": "object" }, { "type": "null" } ], "title": "Inference Stats" }, "error_message": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Error Message" } }, "type": "object", "required": [ "session_id", "status", "policy_path", "policy_type", "camera_names", "workspace_id", "rooms", "stats" ], "title": "SessionStatusResponse" }, "ValidationError": { "properties": { "loc": { "items": { "anyOf": [ { "type": "string" }, { "type": "integer" } ] }, "type": "array", "title": "Location" }, "msg": { "type": "string", "title": "Message" }, "type": { "type": "string", "title": "Error Type" } }, "type": "object", "required": [ "loc", "msg", "type" ], "title": "ValidationError" } }, "securitySchemes": { "BearerAuth": { "type": "http", "scheme": "bearer", "bearerFormat": "JWT" }, "ApiKeyAuth": { "type": "apiKey", "in": "header", "name": "X-API-Key" } } }, "tags": [ { "name": "Health", "description": "Health check and server status endpoints" }, { "name": "Sessions", "description": "Inference session management - create, control, and monitor AI sessions" }, { "name": "Control", "description": "Session control operations - start, stop, restart inference" }, { "name": "Debug", "description": "Debug and monitoring endpoints for system diagnostics" } ] }