openapi: 3.1.0 info: title: fleet-rlm version: 0.5.31 paths: /health: get: tags: - health summary: Health description: Report a lightweight server health signal and package version. operationId: health_health_get responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/HealthResponse' '503': description: Health status could not be determined. /ready: get: tags: - health summary: Ready description: 'Report whether critical startup dependencies are ready for requests. Verifies DB connectivity with a short-timeout ping so a sleeping Neon compute reports ``degraded`` instead of ``ready``.' operationId: ready_ready_get responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ReadyResponse' '503': description: Readiness evaluation could not complete. /api/v1/auth/me: get: tags: - auth summary: Get Me description: Return the authenticated identity and any admitted control-plane IDs. operationId: get_me_api_v1_auth_me_get responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/AuthMeResponse' '401': description: Authentication is required or the provided token is invalid. '403': description: The authenticated tenant or user is not admitted to Fleet RLM. '503': description: Authentication or repository services are not configured yet. security: - HTTPBearer: [] /api/v1/info: get: tags: - info summary: Service information description: Return a stable snapshot of build metadata and active feature flags for the running instance. Useful for operator introspection and client capability negotiation without tailing server logs. operationId: get_service_info_api_v1_info_get responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ServiceInfoResponse' '401': description: Authentication is required or the provided token is invalid. '503': description: Service configuration is unavailable because server startup is incomplete. security: - HTTPBearer: [] /api/v1/sessions/state: get: tags: - sessions summary: List Session State description: Return lightweight summaries of active/restored in-memory session state. operationId: list_session_state_api_v1_sessions_state_get responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/SessionStateResponse' '401': description: Authentication is required or the provided token is invalid. '503': description: Session state is unavailable because server startup is incomplete. security: - HTTPBearer: [] /api/v1/sessions: get: tags: - sessions summary: List session history description: Paginated list of durable session transcripts with search and status filters. operationId: list_sessions_endpoint_api_v1_sessions_get security: - HTTPBearer: [] parameters: - name: search in: query required: false schema: anyOf: - type: string - type: 'null' description: Full-text search on title title: Search description: Full-text search on title - name: status in: query required: false schema: anyOf: - type: string - type: 'null' description: Filter by status (active, archived) title: Status description: Filter by status (active, archived) - name: created_after in: query required: false schema: anyOf: - type: string format: date-time - type: 'null' description: Filter sessions created on or after this date (ISO 8601) title: Created After description: Filter sessions created on or after this date (ISO 8601) - name: created_before in: query required: false schema: anyOf: - type: string format: date-time - type: 'null' description: Filter sessions created on or before this date (ISO 8601) title: Created Before description: Filter sessions created on or before this date (ISO 8601) - name: model_name in: query required: false schema: anyOf: - type: string - type: 'null' description: Filter by exact model name title: Model Name description: Filter by exact model name - name: model_provider in: query required: false schema: anyOf: - type: string - type: 'null' description: Filter by exact model provider title: Model Provider description: Filter by exact model provider - name: limit in: query required: false schema: type: integer maximum: 100 minimum: 1 description: Page size default: 20 title: Limit description: Page size - name: offset in: query required: false schema: type: integer minimum: 0 description: Pagination offset default: 0 title: Offset description: Pagination offset responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/SessionListResponse' '401': description: Authentication is required or the provided token is invalid. '403': description: The caller does not have permission to access this resource. '503': description: Session services are unavailable because server startup is incomplete. '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' /api/v1/sessions/{session_id}: get: tags: - sessions summary: Get session detail description: Return session metadata and turn count for a specific session. operationId: get_session_detail_api_v1_sessions__session_id__get security: - HTTPBearer: [] parameters: - name: session_id in: path required: true schema: type: string description: Identifier of the session to inspect. title: Session Id description: Identifier of the session to inspect. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/SessionDetailResponse' '401': description: Authentication is required or the provided token is invalid. '403': description: The caller does not have permission to access this resource. '503': description: Session services are unavailable because server startup is incomplete. '404': description: Session not found. '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' patch: tags: - sessions summary: Patch session metadata description: Update session title and/or metadata_json. Returns the updated session snapshot. operationId: patch_session_endpoint_api_v1_sessions__session_id__patch security: - HTTPBearer: [] parameters: - name: session_id in: path required: true schema: type: string description: Identifier of the session to update. title: Session Id description: Identifier of the session to update. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/SessionPatchRequest' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/SessionDetailResponse' '401': description: Authentication is required or the provided token is invalid. '403': description: The caller does not have permission to access this resource. '503': description: Session services are unavailable because server startup is incomplete. '404': description: Session not found. '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' delete: tags: - sessions summary: Archive session description: Soft-delete (archive) a session. Returns success when archived, 404 if not found or not owned. operationId: delete_session_endpoint_api_v1_sessions__session_id__delete security: - HTTPBearer: [] parameters: - name: session_id in: path required: true schema: type: string description: Identifier of the session to archive. title: Session Id description: Identifier of the session to archive. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/SessionDeleteResponse' '401': description: Authentication is required or the provided token is invalid. '403': description: The caller does not have permission to access this resource. '503': description: Session services are unavailable because server startup is incomplete. '404': description: Session not found. '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' /api/v1/sessions/{session_id}/turns: get: tags: - sessions summary: Get session turns description: Paginated turn-by-turn transcript for a session. operationId: get_session_turns_api_v1_sessions__session_id__turns_get security: - HTTPBearer: [] parameters: - name: session_id in: path required: true schema: type: string description: Identifier of the session whose turns to list. title: Session Id description: Identifier of the session whose turns to list. - name: limit in: query required: false schema: type: integer maximum: 200 minimum: 1 description: Page size default: 50 title: Limit description: Page size - name: offset in: query required: false schema: type: integer minimum: 0 description: Pagination offset default: 0 title: Offset description: Pagination offset responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/TurnListResponse' '401': description: Authentication is required or the provided token is invalid. '403': description: The caller does not have permission to access this resource. '503': description: Session services are unavailable because server startup is incomplete. '404': description: Session not found. '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' /api/v1/sessions/{session_id}/stats: get: tags: - sessions summary: Get session usage stats description: Aggregated token counts, latency, and model breakdown for all turns in a session. operationId: get_session_stats_api_v1_sessions__session_id__stats_get security: - HTTPBearer: [] parameters: - name: session_id in: path required: true schema: type: string description: Identifier of the session whose stats to retrieve. title: Session Id description: Identifier of the session whose stats to retrieve. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/SessionStatsResponse' '401': description: Authentication is required or the provided token is invalid. '403': description: The caller does not have permission to access this resource. '503': description: Session services are unavailable because server startup is incomplete. '404': description: Session not found. '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' /api/v1/sessions/{session_id}/restore: post: tags: - sessions summary: Restore session description: Unarchive (restore) a soft-deleted session. Returns success when restored, 404 if not found, 409 if already active. operationId: restore_session_endpoint_api_v1_sessions__session_id__restore_post security: - HTTPBearer: [] parameters: - name: session_id in: path required: true schema: type: string description: Identifier of the session to restore. title: Session Id description: Identifier of the session to restore. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/SessionRestoreResponse' '401': description: Authentication is required or the provided token is invalid. '403': description: The caller does not have permission to access this resource. '503': description: Session services are unavailable because server startup is incomplete. '404': description: Session not found. '409': description: Session is already active. '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' /api/v1/sessions/{session_id}/export: post: tags: - sessions summary: Export session as GEPA dataset description: Convert a session's turn history into a JSONL dataset suitable for GEPA optimization. Requires a target module slug to determine the column mapping. operationId: export_session_endpoint_api_v1_sessions__session_id__export_post security: - HTTPBearer: [] parameters: - name: session_id in: path required: true schema: type: string description: Identifier of the session to export as a dataset. title: Session Id description: Identifier of the session to export as a dataset. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/SessionExportRequest' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/DatasetResponse' '401': description: Authentication is required or the provided token is invalid. '403': description: The caller does not have permission to access this resource. '503': description: Session services are unavailable because server startup is incomplete. '404': description: Session not found. '400': description: Invalid export parameters. '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' /api/v1/runtime/settings: get: tags: - runtime summary: Get Runtime Settings description: Return the effective runtime settings snapshot used by the local server. operationId: get_runtime_settings_api_v1_runtime_settings_get responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/RuntimeSettingsSnapshot' '401': description: Authentication is required or the provided token is invalid. '503': description: Runtime services are unavailable because server startup is incomplete. security: - HTTPBearer: [] patch: tags: - runtime summary: Patch Runtime Settings description: Persist allowed runtime setting changes and hot-apply them in-process. operationId: patch_runtime_settings_api_v1_runtime_settings_patch requestBody: content: application/json: schema: $ref: '#/components/schemas/RuntimeSettingsUpdateRequest' required: true responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/RuntimeSettingsUpdateResponse' '401': description: Authentication is required or the provided token is invalid. '503': description: Runtime services are unavailable because server startup is incomplete. '400': description: The supplied runtime setting values failed validation. '403': description: Runtime settings can only be updated when APP_ENV=local. '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' security: - HTTPBearer: [] /api/v1/runtime/tests/lm: post: tags: - runtime summary: Test Lm Connection description: Verify that the planner and delegate language-model configuration can load. operationId: test_lm_connection_api_v1_runtime_tests_lm_post responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/RuntimeConnectivityTestResponse' '401': description: Authentication is required or the provided token is invalid. '503': description: Runtime services are unavailable because server startup is incomplete. security: - HTTPBearer: [] /api/v1/runtime/tests/daytona: post: tags: - runtime summary: Test Daytona Connection description: Run the Daytona preflight and connectivity check exposed in runtime diagnostics. operationId: test_daytona_connection_api_v1_runtime_tests_daytona_post responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/RuntimeConnectivityTestResponse' '401': description: Authentication is required or the provided token is invalid. '503': description: Runtime services are unavailable because server startup is incomplete. security: - HTTPBearer: [] /api/v1/runtime/status: get: tags: - runtime summary: Get Runtime Status description: Return the combined runtime readiness, model, and provider diagnostics snapshot. operationId: get_runtime_status_api_v1_runtime_status_get responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/RuntimeStatusResponse' '401': description: Authentication is required or the provided token is invalid. '503': description: Runtime services are unavailable because server startup is incomplete. security: - HTTPBearer: [] /api/v1/runtime/volume/tree: get: tags: - runtime summary: Get Volume Tree description: List the runtime volume tree for the active workspace and provider. operationId: get_volume_tree_api_v1_runtime_volume_tree_get security: - HTTPBearer: [] parameters: - name: root_path in: query required: false schema: type: string description: Directory path to list within the selected runtime volume. default: / title: Root Path description: Directory path to list within the selected runtime volume. - name: max_depth in: query required: false schema: type: integer maximum: 10 minimum: 1 description: Maximum directory depth to traverse while building the file tree. default: 3 title: Max Depth description: Maximum directory depth to traverse while building the file tree. - name: provider in: query required: false schema: anyOf: - const: daytona type: string - type: 'null' description: Optional runtime volume backend override. Defaults to the active sandbox provider. title: Provider description: Optional runtime volume backend override. Defaults to the active sandbox provider. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/VolumeTreeResponse' '401': description: Authentication is required or the provided token is invalid. '503': description: Runtime services are unavailable because server startup is incomplete. '400': description: The requested root path is invalid. '502': description: The runtime volume provider failed to list the requested path. '504': description: Volume listing timed out before the backend returned a result. '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' /api/v1/runtime/volume/file: get: tags: - runtime summary: Get Volume File Content description: Read a text preview for a single file from the runtime volume. operationId: get_volume_file_content_api_v1_runtime_volume_file_get security: - HTTPBearer: [] parameters: - name: path in: query required: true schema: type: string minLength: 1 description: Absolute or volume-relative file path to preview from the runtime volume. title: Path description: Absolute or volume-relative file path to preview from the runtime volume. - name: max_bytes in: query required: false schema: type: integer maximum: 1000000 minimum: 1 description: Maximum number of bytes of text content to return in the preview response. default: 200000 title: Max Bytes description: Maximum number of bytes of text content to return in the preview response. - name: provider in: query required: false schema: anyOf: - const: daytona type: string - type: 'null' description: Optional runtime volume backend override. Defaults to the active sandbox provider. title: Provider description: Optional runtime volume backend override. Defaults to the active sandbox provider. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/VolumeFileContentResponse' '401': description: Authentication is required or the provided token is invalid. '503': description: Runtime services are unavailable because server startup is incomplete. '400': description: The requested file path is invalid or points to a directory. '404': description: The requested runtime volume file does not exist. '502': description: The runtime volume provider failed to read the requested file. '504': description: Volume file reading timed out before the backend returned a result. '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' /api/v1/runtime/volumes: get: tags: - runtime summary: Get Volumes description: List the active workspace volume for the selected provider. operationId: get_volumes_api_v1_runtime_volumes_get security: - HTTPBearer: [] parameters: - name: provider in: query required: false schema: anyOf: - const: daytona type: string - type: 'null' description: Optional runtime volume backend override. Defaults to the active sandbox provider. title: Provider description: Optional runtime volume backend override. Defaults to the active sandbox provider. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/VolumeListResponse' '401': description: Authentication is required or the provided token is invalid. '503': description: Runtime services are unavailable because server startup is incomplete. '400': description: The requested volume provider is not supported. '502': description: The runtime volume provider failed to list volumes. '504': description: Volume list timed out before the backend returned a result. '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' /api/v1/sandboxes: get: tags: - sandboxes summary: List sandboxes description: List active Daytona sandboxes with id, state, created_at, and volume info. operationId: list_sandboxes_api_v1_sandboxes_get security: - HTTPBearer: [] parameters: - name: page in: query required: false schema: type: integer minimum: 1 description: Page number for pagination (starting from 1). default: 1 title: Page description: Page number for pagination (starting from 1). - name: limit in: query required: false schema: type: integer maximum: 1000 minimum: 1 description: Maximum number of sandboxes per page. default: 100 title: Limit description: Maximum number of sandboxes per page. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/SandboxListResponse' '401': description: Authentication is required or the provided token is invalid. '503': description: Sandbox services are unavailable because server startup is incomplete. '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' /api/v1/sandboxes/{sandbox_id}: get: tags: - sandboxes summary: Get sandbox details description: Return full sandbox details including state, config, and volume. operationId: get_sandbox_detail_api_v1_sandboxes__sandbox_id__get security: - HTTPBearer: [] parameters: - name: sandbox_id in: path required: true schema: type: string description: Unique sandbox identifier. title: Sandbox Id description: Unique sandbox identifier. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/SandboxDetailResponse' '401': description: Authentication is required or the provided token is invalid. '404': description: Sandbox not found or inaccessible. '503': description: Sandbox services are unavailable because server startup is incomplete. '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' delete: tags: - sandboxes summary: Delete sandbox description: Stop and permanently delete a Daytona sandbox. operationId: delete_sandbox_endpoint_api_v1_sandboxes__sandbox_id__delete security: - HTTPBearer: [] parameters: - name: sandbox_id in: path required: true schema: type: string description: Unique sandbox identifier. title: Sandbox Id description: Unique sandbox identifier. responses: '204': description: Successful Response '401': description: Authentication is required or the provided token is invalid. '404': description: Sandbox not found or inaccessible. '503': description: Sandbox services are unavailable because server startup is incomplete. '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' /api/v1/sandboxes/{sandbox_id}/archive: post: tags: - sandboxes summary: Archive sandbox description: Archive a Daytona sandbox to cold storage for later recovery. operationId: archive_sandbox_endpoint_api_v1_sandboxes__sandbox_id__archive_post security: - HTTPBearer: [] parameters: - name: sandbox_id in: path required: true schema: type: string description: Unique sandbox identifier. title: Sandbox Id description: Unique sandbox identifier. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/SandboxArchiveResponse' '401': description: Authentication is required or the provided token is invalid. '404': description: Sandbox not found or inaccessible. '503': description: Sandbox services are unavailable because server startup is incomplete. '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' /api/v1/runs/{run_id}/steps: get: tags: - runs summary: List run steps description: Paginated execution trace steps for a run with step_type, tool_name, tokens, and latency. operationId: get_run_steps_api_v1_runs__run_id__steps_get security: - HTTPBearer: [] parameters: - name: run_id in: path required: true schema: type: string description: Identifier of the run whose steps to list. title: Run Id description: Identifier of the run whose steps to list. - name: limit in: query required: false schema: type: integer maximum: 200 minimum: 1 description: Page size default: 50 title: Limit description: Page size - name: offset in: query required: false schema: type: integer minimum: 0 description: Pagination offset default: 0 title: Offset description: Pagination offset responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/RunStepListResponse' '401': description: Authentication is required or the provided token is invalid. '503': description: Run services are unavailable because server startup is incomplete. '404': description: Run not found. '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' /api/v1/memory: get: tags: - memory summary: List memory items description: Return memory items filtered by scope and scope_id. Without filters, returns all memory for the authenticated user. operationId: list_memory_items_api_v1_memory_get security: - HTTPBearer: [] parameters: - name: scope in: query required: false schema: anyOf: - type: string - type: 'null' description: Filter by memory scope (user, tenant, workspace, run, session). title: Scope description: Filter by memory scope (user, tenant, workspace, run, session). - name: scope_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Filter by scope identifier. title: Scope Id description: Filter by scope identifier. - name: limit in: query required: false schema: type: integer maximum: 200 minimum: 1 description: Page size default: 100 title: Limit description: Page size - name: offset in: query required: false schema: type: integer minimum: 0 description: Pagination offset default: 0 title: Offset description: Pagination offset responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/MemoryListResponse' '401': description: Authentication is required or the provided token is invalid. '503': description: Memory services are unavailable because server startup is incomplete. '400': description: Invalid scope filter value. '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' /api/v1/optimization/status: get: tags: - optimization summary: Get Optimization Status description: Return GEPA optimization availability and prerequisites. operationId: get_optimization_status_api_v1_optimization_status_get responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/GEPAStatusResponse' '401': description: Authentication is required or the provided token is invalid. security: - HTTPBearer: [] /api/v1/optimization/modules: get: tags: - optimization summary: List Optimization Modules description: Return the list of registered optimizable DSPy modules. operationId: list_optimization_modules_api_v1_optimization_modules_get responses: '200': description: Successful Response content: application/json: schema: items: $ref: '#/components/schemas/GEPAModuleInfo' type: array title: Response List Optimization Modules Api V1 Optimization Modules Get '401': description: Authentication is required or the provided token is invalid. security: - HTTPBearer: [] /api/v1/optimization/run: post: tags: - optimization summary: Run Optimization description: Trigger a GEPA prompt optimization run. operationId: run_optimization_api_v1_optimization_run_post requestBody: content: application/json: schema: $ref: '#/components/schemas/GEPAOptimizationRequest' required: true responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/GEPAOptimizationResponse' '401': description: Authentication is required or the provided token is invalid. '400': description: Invalid optimization parameters. '503': description: GEPA optimization is unavailable in this environment. '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' security: - HTTPBearer: [] /api/v1/optimization/runs: post: tags: - optimization summary: Create Optimization Run description: 'Create a non-blocking GEPA optimization run. Returns immediately with the run_id. The optimization executes as a background task. Poll ``GET /runs/{run_id}`` for progress and results.' operationId: create_optimization_run_api_v1_optimization_runs_post security: - HTTPBearer: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/GEPAOptimizationRequest' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/OptimizationRunCreatedResponse' '401': description: Authentication is required or the provided token is invalid. '400': description: Invalid optimization parameters. '503': description: GEPA optimization is unavailable in this environment. '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' get: tags: - optimization summary: List Runs description: List optimization runs, most recent first. operationId: list_runs_api_v1_optimization_runs_get security: - HTTPBearer: [] parameters: - name: status in: query required: false schema: anyOf: - type: string - type: 'null' description: 'Filter by status: running, completed, failed' title: Status description: 'Filter by status: running, completed, failed' - name: limit in: query required: false schema: type: integer maximum: 200 minimum: 1 description: Maximum number of runs to return. default: 50 title: Limit description: Maximum number of runs to return. - name: offset in: query required: false schema: type: integer minimum: 0 description: Pagination offset into the run list. default: 0 title: Offset description: Pagination offset into the run list. responses: '200': description: Successful Response content: application/json: schema: type: array items: $ref: '#/components/schemas/OptimizationRunResponse' title: Response List Runs Api V1 Optimization Runs Get '401': description: Authentication is required or the provided token is invalid. '400': description: Invalid status filter. '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' /api/v1/optimization/runs/compare: get: tags: - optimization summary: Compare Runs description: Compare prompt diffs and scores across optimization runs. operationId: compare_runs_api_v1_optimization_runs_compare_get security: - HTTPBearer: [] parameters: - name: run_ids in: query required: true schema: type: string description: Comma-separated run IDs to compare (max 5). title: Run Ids description: Comma-separated run IDs to compare (max 5). responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/RunComparisonResponse' '401': description: Authentication is required or the provided token is invalid. '400': description: Invalid run_ids parameter. '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' /api/v1/optimization/runs/{run_id}: get: tags: - optimization summary: Get Run description: Get a single optimization run by ID. operationId: get_run_api_v1_optimization_runs__run_id__get security: - HTTPBearer: [] parameters: - name: run_id in: path required: true schema: type: string description: Identifier of the optimization run to fetch. title: Run Id description: Identifier of the optimization run to fetch. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/OptimizationRunResponse' '401': description: Authentication is required or the provided token is invalid. '404': description: Run not found. '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' /api/v1/optimization/runs/{run_id}/results: get: tags: - optimization summary: Get Run Results description: Return per-example evaluation results for an optimization run. operationId: get_run_results_api_v1_optimization_runs__run_id__results_get security: - HTTPBearer: [] parameters: - name: run_id in: path required: true schema: type: string description: Identifier of the optimization run whose results to list. title: Run Id description: Identifier of the optimization run whose results to list. - name: limit in: query required: false schema: type: integer maximum: 500 minimum: 1 description: Maximum number of evaluation rows to return. default: 100 title: Limit description: Maximum number of evaluation rows to return. - name: offset in: query required: false schema: type: integer minimum: 0 description: Pagination offset into the evaluation results. default: 0 title: Offset description: Pagination offset into the evaluation results. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/EvaluationResultsResponse' '401': description: Authentication is required or the provided token is invalid. '404': description: Run not found. '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' /api/v1/optimization/transcript-datasets: post: tags: - optimization summary: Create Dataset From Transcript description: Convert transcript turns into a GEPA dataset. operationId: create_dataset_from_transcript_api_v1_optimization_transcript_datasets_post requestBody: content: application/json: schema: $ref: '#/components/schemas/TranscriptDatasetRequest' required: true responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/DatasetResponse' '401': description: Authentication is required or the provided token is invalid. '400': description: Invalid transcript dataset payload. '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' security: - HTTPBearer: [] /api/v1/optimization/datasets: post: tags: - optimization summary: Upload Dataset description: Upload and register a dataset file (.json or .jsonl). operationId: upload_dataset_api_v1_optimization_datasets_post security: - HTTPBearer: [] requestBody: required: true content: multipart/form-data: schema: $ref: '#/components/schemas/Body_upload_dataset_api_v1_optimization_datasets_post' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/DatasetResponse' '401': description: Authentication is required or the provided token is invalid. '400': description: Invalid dataset file. '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' get: tags: - optimization summary: List Datasets Endpoint description: List registered datasets with optional module filter. operationId: list_datasets_endpoint_api_v1_optimization_datasets_get security: - HTTPBearer: [] parameters: - name: module_slug in: query required: false schema: anyOf: - type: string - type: 'null' description: Filter by module slug title: Module Slug description: Filter by module slug - name: limit in: query required: false schema: type: integer maximum: 200 minimum: 1 description: Maximum number of datasets to return. default: 50 title: Limit description: Maximum number of datasets to return. - name: offset in: query required: false schema: type: integer minimum: 0 description: Pagination offset into the dataset list. default: 0 title: Offset description: Pagination offset into the dataset list. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/DatasetListResponse' '401': description: Authentication is required or the provided token is invalid. '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' /api/v1/optimization/datasets/{dataset_id}: get: tags: - optimization summary: Get Dataset Detail description: Return dataset metadata with the first 10 rows as preview. operationId: get_dataset_detail_api_v1_optimization_datasets__dataset_id__get security: - HTTPBearer: [] parameters: - name: dataset_id in: path required: true schema: type: string description: Identifier of the dataset to inspect. title: Dataset Id description: Identifier of the dataset to inspect. responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/DatasetDetailResponse' '401': description: Authentication is required or the provided token is invalid. '404': description: Dataset not found. '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' /api/v1/traces/feedback: post: tags: - traces summary: Create Trace Feedback description: Record human feedback and optional ground truth for an MLflow trace. operationId: create_trace_feedback_api_v1_traces_feedback_post requestBody: content: application/json: schema: $ref: '#/components/schemas/TraceFeedbackRequest' required: true responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/TraceFeedbackResponse' '400': description: The feedback request did not include a valid trace identifier. '401': description: Authentication is required or the provided token is invalid. '403': description: The authenticated user is not allowed to annotate this trace. '404': description: No MLflow trace matched the provided identifier. '503': description: MLflow feedback services are unavailable or misconfigured. '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' security: - HTTPBearer: [] components: schemas: AuthMeResponse: properties: tenant_claim: type: string title: Tenant Claim description: Tenant or workspace claim resolved from auth. user_claim: type: string title: User Claim description: User claim resolved from auth. email: anyOf: - type: string - type: 'null' title: Email description: User email address when the auth provider returned one. name: anyOf: - type: string - type: 'null' title: Name description: Display name returned by the auth provider, when available. tenant_id: anyOf: - type: string - type: 'null' title: Tenant Id description: Persisted control-plane tenant identifier for admitted Entra users. user_id: anyOf: - type: string - type: 'null' title: User Id description: Persisted control-plane user identifier for admitted Entra users. type: object required: - tenant_claim - user_claim title: AuthMeResponse description: Resolved identity payload returned to authenticated clients. Body_upload_dataset_api_v1_optimization_datasets_post: properties: file: type: string contentMediaType: application/octet-stream title: File description: Dataset file to upload in JSON or JSONL format. module_slug: anyOf: - type: string - type: 'null' title: Module Slug description: Optional module slug used to validate required dataset keys. type: object required: - file title: Body_upload_dataset_api_v1_optimization_datasets_post DatasetDetailResponse: properties: id: type: string title: Id description: Unique dataset identifier. name: type: string title: Name description: Human-readable dataset name. row_count: type: integer title: Row Count description: Number of rows/examples in the dataset. format: type: string title: Format description: File format (json or jsonl). module_slug: anyOf: - type: string - type: 'null' title: Module Slug description: Associated module slug, when provided. created_at: type: string title: Created At description: ISO-8601 creation timestamp. sample_rows: items: additionalProperties: true type: object type: array title: Sample Rows description: First rows from the dataset as preview. uri: type: string title: Uri description: Filesystem path to the dataset file. type: object required: - id - name - row_count - format - created_at - sample_rows - uri title: DatasetDetailResponse description: Dataset metadata with sample rows and URI. DatasetListResponse: properties: items: items: $ref: '#/components/schemas/DatasetResponse' type: array title: Items description: Dataset list items. total: type: integer title: Total description: Total matching datasets. offset: type: integer title: Offset description: Current pagination offset. limit: type: integer title: Limit description: Current page size. has_more: type: boolean title: Has More description: Whether more results exist beyond this page. type: object required: - items - total - offset - limit - has_more title: DatasetListResponse description: Paginated dataset listing. DatasetResponse: properties: id: type: string title: Id description: Unique dataset identifier. name: type: string title: Name description: Human-readable dataset name. row_count: type: integer title: Row Count description: Number of rows/examples in the dataset. format: type: string title: Format description: File format (json or jsonl). module_slug: anyOf: - type: string - type: 'null' title: Module Slug description: Associated module slug, when provided. created_at: type: string title: Created At description: ISO-8601 creation timestamp. type: object required: - id - name - row_count - format - created_at title: DatasetResponse description: Metadata for a registered dataset. EvaluationResultItem: properties: id: type: string title: Id description: Unique evaluation result identifier. example_index: type: integer title: Example Index description: Zero-based index in the dataset. input_data: type: string title: Input Data description: JSON-serialized input fields. expected_output: anyOf: - type: string - type: 'null' title: Expected Output description: Expected/gold output. predicted_output: anyOf: - type: string - type: 'null' title: Predicted Output description: Model predicted output. score: type: number title: Score description: Score for this example (0.0-1.0). type: object required: - id - example_index - input_data - score title: EvaluationResultItem description: A single per-example evaluation result. EvaluationResultsResponse: properties: items: items: $ref: '#/components/schemas/EvaluationResultItem' type: array title: Items description: Evaluation result items. total: type: integer title: Total description: Total evaluation results for the run. offset: type: integer title: Offset description: Current pagination offset. limit: type: integer title: Limit description: Current page size. has_more: type: boolean title: Has More description: Whether more results exist beyond this page. type: object required: - items - total - offset - limit - has_more title: EvaluationResultsResponse description: Paginated evaluation results for a run. GEPAModuleInfo: properties: slug: type: string title: Slug description: Unique module identifier slug. label: type: string title: Label description: Human-readable module label. description: type: string title: Description description: Human-readable description of what this module optimizes. default: '' program_spec: type: string title: Program Spec description: DSPy program specification string. required_dataset_keys: items: type: string type: array title: Required Dataset Keys description: Dataset keys required for this module's examples. type: object required: - slug - label - program_spec - required_dataset_keys title: GEPAModuleInfo description: Metadata for a registered optimizable DSPy module. GEPAOptimizationRequest: properties: dataset_path: anyOf: - type: string - type: 'null' title: Dataset Path description: Relative filesystem path to the dataset file. dataset_id: anyOf: - type: string - type: 'null' title: Dataset Id description: Registered dataset identifier to optimize against. program_spec: type: string title: Program Spec description: DSPy program specification string to optimize in module:attr form. Required when module_slug is not provided. default: '' module_slug: anyOf: - type: string - type: 'null' title: Module Slug description: Registered module slug for server-side dispatch. When provided, program_spec is auto-resolved from the module registry. output_path: anyOf: - type: string - type: 'null' title: Output Path description: Optional filesystem path to save the optimized program. auto: type: string enum: - light - medium - heavy title: Auto description: GEPA optimization intensity level. default: light train_ratio: type: number title: Train Ratio description: Fraction of examples to use for training (remainder used for validation). default: 0.8 type: object title: GEPAOptimizationRequest description: Request body for triggering a GEPA prompt optimization run. GEPAOptimizationResponse: properties: ok: type: boolean title: Ok description: Whether the optimization run completed successfully. default: true optimizer: type: string title: Optimizer description: Optimizer backend that was used. default: GEPA program_spec: type: string title: Program Spec description: DSPy program specification that was optimized. train_examples: type: integer title: Train Examples description: Number of training examples used. validation_examples: type: integer title: Validation Examples description: Number of validation examples used. validation_score: anyOf: - type: number - type: 'null' title: Validation Score description: Validation score from the optimized program, when available. output_path: anyOf: - type: string - type: 'null' title: Output Path description: Filesystem path where the optimized program was saved. manifest_path: anyOf: - type: string - type: 'null' title: Manifest Path description: Filesystem path to the optimization manifest, when available. module_slug: anyOf: - type: string - type: 'null' title: Module Slug description: Module slug used for this optimization run, when server-side dispatch was used. error: anyOf: - type: string - type: 'null' title: Error description: Error message when the optimization run failed. type: object required: - program_spec - train_examples - validation_examples title: GEPAOptimizationResponse description: Result payload after a GEPA optimization run completes. GEPAStatusResponse: properties: available: type: boolean title: Available description: Whether the legacy MLflow-backed GEPA optimization path is available. module_optimization_available: type: boolean title: Module Optimization Available description: Whether registered module optimization can run in this environment. default: false mlflow_dataset_optimization_available: type: boolean title: Mlflow Dataset Optimization Available description: Whether MLflow-backed dataset/program optimization can run. default: false mlflow_logging_available: type: boolean title: Mlflow Logging Available description: Whether optional MLflow logging is available for optimization runs. default: false mlflow_configured: type: boolean title: Mlflow Configured description: Whether MLflow is enabled/configured in the environment. default: false mlflow_enabled: type: boolean title: Mlflow Enabled description: Whether MLflow is enabled and reachable. gepa_installed: type: boolean title: Gepa Installed description: Whether the GEPA teleprompt module is importable. guidance: items: type: string type: array title: Guidance description: Human-readable guidance when GEPA is not fully available. type: object required: - available - mlflow_enabled - gepa_installed title: GEPAStatusResponse description: Status payload for GEPA optimization availability. HTTPValidationError: properties: detail: items: $ref: '#/components/schemas/ValidationError' type: array title: Detail description: Structured list of request validation issues returned by FastAPI. type: object title: HTTPValidationError HealthResponse: properties: ok: type: boolean title: Ok description: Whether the service reports itself as healthy. default: true version: type: string title: Version description: Package version currently serving the API. default: 0.5.31 type: object title: HealthResponse description: Response body for the lightweight health endpoint. MemoryItemResponse: properties: id: type: string title: Id description: Durable memory item identifier. scope: type: string title: Scope description: Memory scope (e.g. user, tenant, workspace, run, session). scope_id: type: string title: Scope Id description: Identifier within the scope. kind: type: string title: Kind description: Memory kind (e.g. fact, observation, preference). source: type: string title: Source description: Memory source (e.g. user, agent, system). status: type: string title: Status description: Memory status (e.g. active, archived). content_text: anyOf: - type: string - type: 'null' title: Content Text description: Textual content when available. importance: type: integer title: Importance description: Importance score (0-100). tags: items: type: string type: array title: Tags description: Associated tags. created_at: type: string title: Created At description: ISO-8601 creation timestamp. type: object required: - id - scope - scope_id - kind - source - status - importance - created_at title: MemoryItemResponse description: Single memory item returned by the memory browse endpoint. MemoryListResponse: properties: items: items: $ref: '#/components/schemas/MemoryItemResponse' type: array title: Items description: Memory item list items. total: type: integer title: Total description: Total matching memory items. offset: type: integer title: Offset description: Current pagination offset. limit: type: integer title: Limit description: Current page size. has_more: type: boolean title: Has More description: Whether more results exist beyond this page. type: object required: - items - total - offset - limit - has_more title: MemoryListResponse description: Paginated memory item list response. OptimizationRunCreatedResponse: properties: run_id: type: string title: Run Id description: Unique identifier for the created run. status: type: string title: Status description: Initial run status. default: running type: object required: - run_id title: OptimizationRunCreatedResponse description: Response when an async optimization run is created. OptimizationRunResponse: properties: id: type: string title: Id description: Unique run identifier. status: type: string title: Status description: 'Run status: running, completed, or failed.' module_slug: anyOf: - type: string - type: 'null' title: Module Slug description: Module slug when server-side dispatch was used. program_spec: type: string title: Program Spec description: DSPy program specification that was optimized. optimizer: type: string title: Optimizer description: Optimizer backend that was used. auto: anyOf: - type: string - type: 'null' title: Auto description: Optimization intensity level. default: light train_ratio: type: number title: Train Ratio description: Train/validation split ratio. default: 0.8 dataset_path: anyOf: - type: string - type: 'null' title: Dataset Path description: Path to the dataset used. train_examples: anyOf: - type: integer - type: 'null' title: Train Examples description: Number of training examples used. validation_examples: anyOf: - type: integer - type: 'null' title: Validation Examples description: Number of validation examples used. validation_score: anyOf: - type: number - type: 'null' title: Validation Score description: Validation score from the optimized program. output_path: anyOf: - type: string - type: 'null' title: Output Path description: Filesystem path where the optimized program was saved. manifest_path: anyOf: - type: string - type: 'null' title: Manifest Path description: Filesystem path to the optimization manifest. error: anyOf: - type: string - type: 'null' title: Error description: Error message when the run failed. phase: anyOf: - type: string - type: 'null' title: Phase description: Current phase of the optimization run. started_at: type: string title: Started At description: ISO timestamp when the run started. completed_at: anyOf: - type: string - type: 'null' title: Completed At description: ISO timestamp when the run completed. type: object required: - id - status - program_spec - optimizer - started_at title: OptimizationRunResponse description: A single optimization run record. PromptSnapshotItem: properties: predictor_name: type: string title: Predictor Name description: Predictor name from named_predictors(). prompt_type: type: string title: Prompt Type description: 'Snapshot type: ''before'' or ''after''.' prompt_text: type: string title: Prompt Text description: Full prompt/instruction text. type: object required: - predictor_name - prompt_type - prompt_text title: PromptSnapshotItem description: A before or after prompt snapshot for a predictor. ReadyResponse: properties: ready: type: boolean title: Ready description: Whether critical startup dependencies are ready. planner_configured: type: boolean title: Planner Configured description: Whether a planner model is currently configured and available. planner: type: string enum: - ready - missing title: Planner description: Planner readiness classification. database: type: string enum: - ready - missing - disabled - degraded title: Database description: Database readiness classification for persistence-backed features. database_required: type: boolean title: Database Required description: Whether the current server configuration requires database availability. sandbox_provider: type: string title: Sandbox Provider description: Active sandbox backend selected for runtime execution. type: object required: - ready - planner_configured - planner - database - database_required - sandbox_provider title: ReadyResponse description: Response body for the readiness endpoint. RunComparisonItem: properties: run_id: type: string title: Run Id description: Optimization run identifier. program_spec: type: string title: Program Spec description: DSPy program specification optimized. validation_score: anyOf: - type: number - type: 'null' title: Validation Score description: Validation score from the run. prompt_snapshots: items: $ref: '#/components/schemas/PromptSnapshotItem' type: array title: Prompt Snapshots description: Before/after prompt snapshots for this run. type: object required: - run_id - program_spec - prompt_snapshots title: RunComparisonItem description: Summary of a single run for cross-run comparison. RunComparisonResponse: properties: runs: items: $ref: '#/components/schemas/RunComparisonItem' type: array title: Runs description: Compared run summaries. type: object required: - runs title: RunComparisonResponse description: Cross-run comparison payload. RunStepItem: properties: id: type: string title: Id description: Durable step identifier. step_index: type: integer title: Step Index description: Step position within the run. step_type: type: string title: Step Type description: Step type (e.g. tool_call, reasoning). tool_name: anyOf: - type: string - type: 'null' title: Tool Name description: Tool name when applicable. tokens_in: anyOf: - type: integer - type: 'null' title: Tokens In description: Input token count. tokens_out: anyOf: - type: integer - type: 'null' title: Tokens Out description: Output token count. latency_ms: anyOf: - type: integer - type: 'null' title: Latency Ms description: Step latency in milliseconds. created_at: type: string title: Created At description: ISO-8601 creation timestamp. type: object required: - id - step_index - step_type - created_at title: RunStepItem description: Single execution step for a run. RunStepListResponse: properties: items: items: $ref: '#/components/schemas/RunStepItem' type: array title: Items description: Step list items. total: type: integer title: Total description: Total steps in run. offset: type: integer title: Offset description: Current pagination offset. limit: type: integer title: Limit description: Current page size. has_more: type: boolean title: Has More description: Whether more steps exist beyond this page. type: object required: - items - total - offset - limit - has_more title: RunStepListResponse description: Paginated execution step list for a run. RuntimeActiveModels: properties: planner: type: string title: Planner description: Planner model identifier currently in use. default: '' delegate: type: string title: Delegate description: Delegate model identifier currently in use. default: '' delegate_small: type: string title: Delegate Small description: Small delegate model identifier currently in use, when configured. default: '' type: object title: RuntimeActiveModels description: Resolved active model identifiers currently loaded by the runtime. RuntimeConnectivityTestResponse: properties: kind: type: string enum: - lm - daytona title: Kind description: Runtime subsystem that was tested. ok: type: boolean title: Ok description: Whether the connectivity test completed successfully. preflight_ok: type: boolean title: Preflight Ok description: Whether prerequisite configuration checks passed. checked_at: type: string title: Checked At description: UTC timestamp when the test completed. checks: additionalProperties: true type: object title: Checks description: Structured boolean or value checks collected during the test run. guidance: items: type: string type: array title: Guidance description: Human-readable remediation steps when the test did not pass cleanly. latency_ms: anyOf: - type: integer - type: 'null' title: Latency Ms description: Observed latency for the successful smoke test, when applicable. output_preview: anyOf: - type: string - type: 'null' title: Output Preview description: Short preview of the smoke-test output, when available. error: anyOf: - type: string - type: 'null' title: Error description: Error summary when the test failed. type: object required: - kind - ok - preflight_ok - checked_at title: RuntimeConnectivityTestResponse description: Result payload for runtime connectivity and preflight diagnostics. RuntimeSettingsCategory: properties: id: type: string title: Id description: Stable category identifier. label: type: string title: Label description: Human-readable category label. description: type: string title: Description description: Human-readable category description. fields: items: $ref: '#/components/schemas/RuntimeSettingsField' type: array title: Fields description: Fields in this category. type: object required: - id - label - description title: RuntimeSettingsCategory description: Categorized group of runtime settings fields. RuntimeSettingsField: properties: key: type: string title: Key description: Environment variable key backing this setting. label: type: string title: Label description: Human-readable setting label. description: type: string title: Description description: Human-readable setting description. value: type: string title: Value description: Display-safe setting value. default: '' masked_value: type: string title: Masked Value description: Masked display value for secret settings. default: '' secret: type: boolean title: Secret description: Whether the field stores sensitive data. default: false editable: type: boolean title: Editable description: Whether the field can be patched through the Settings API. default: true reload_required: type: boolean title: Reload Required description: Whether applying this setting reloads runtime dependencies. default: false placeholder: anyOf: - type: string - type: 'null' title: Placeholder description: Optional UI placeholder. default: anyOf: - type: string - type: 'null' title: Default description: Optional default value displayed by settings clients. type: object required: - key - label - description title: RuntimeSettingsField description: Single display-safe runtime setting field. RuntimeSettingsSnapshot: properties: env_path: type: string title: Env Path description: Filesystem path to the environment file being edited. categories: items: $ref: '#/components/schemas/RuntimeSettingsCategory' type: array title: Categories description: Categorized runtime setting fields surfaced by the Settings API. type: object required: - env_path title: RuntimeSettingsSnapshot description: Current runtime settings snapshot returned by the Settings API. RuntimeSettingsUpdateRequest: properties: updates: additionalProperties: true type: object title: Updates description: Mapping of allowlisted runtime setting keys to their new values. type: object title: RuntimeSettingsUpdateRequest description: Patch body for runtime setting updates. RuntimeSettingsUpdateResponse: properties: updated: items: type: string type: array title: Updated description: Runtime setting keys that were successfully updated. env_path: type: string title: Env Path description: Filesystem path to the environment file that was updated. type: object required: - env_path title: RuntimeSettingsUpdateResponse description: Result payload after runtime settings are persisted and hot-applied. RuntimeStatusResponse: properties: app_env: type: string title: App Env description: Current application environment, such as `local` or `prod`. write_enabled: type: boolean title: Write Enabled description: Whether runtime settings writes are currently allowed. ready: type: boolean title: Ready description: Whether critical runtime services are ready to serve requests. active_models: $ref: '#/components/schemas/RuntimeActiveModels' description: Resolved planner and delegate model identities. sandbox_provider: type: string const: daytona title: Sandbox Provider description: Active sandbox backend selected for runtime execution and volume browsing. default: daytona llm: additionalProperties: true type: object title: Llm description: Language-model configuration and readiness diagnostics. mlflow: additionalProperties: true type: object title: Mlflow description: MLflow enablement and startup diagnostics. daytona: additionalProperties: true type: object title: Daytona description: Daytona configuration and readiness diagnostics. tests: $ref: '#/components/schemas/RuntimeTestCache' description: Cached runtime connectivity test results exposed in the Settings UI. guidance: items: type: string type: array title: Guidance description: Human-readable remediation steps for incomplete runtime setup. type: object required: - app_env - write_enabled - ready - active_models - tests title: RuntimeStatusResponse description: Combined readiness and diagnostics snapshot for the runtime settings UI. RuntimeTestCache: properties: lm: anyOf: - $ref: '#/components/schemas/RuntimeConnectivityTestResponse' - type: 'null' description: Most recent language-model connectivity test result, if one has been run. daytona: anyOf: - $ref: '#/components/schemas/RuntimeConnectivityTestResponse' - type: 'null' description: Most recent Daytona connectivity test result, if one has been run. type: object title: RuntimeTestCache description: Cached runtime test results included in the runtime status payload. SandboxArchiveResponse: properties: ok: type: boolean title: Ok description: Whether the sandbox was archived successfully. default: true type: object title: SandboxArchiveResponse description: Result payload after archiving a sandbox. SandboxDetailResponse: properties: id: type: string title: Id description: Sandbox identifier. name: type: string title: Name description: Sandbox name. state: type: string title: State description: Sandbox state (e.g. started, stopped, archived). created_at: anyOf: - type: string - type: 'null' title: Created At description: ISO-8601 creation timestamp when available. volume_name: anyOf: - type: string - type: 'null' title: Volume Name description: Name of the persistent volume attached to the sandbox. labels: additionalProperties: type: string type: object title: Labels description: Custom labels attached to the sandbox. cpu: anyOf: - type: integer - type: 'null' title: Cpu description: Allocated CPU cores. memory: anyOf: - type: integer - type: 'null' title: Memory description: Allocated memory in GiB. disk: anyOf: - type: integer - type: 'null' title: Disk description: Allocated disk in GiB. env_vars: additionalProperties: type: string type: object title: Env Vars description: Environment variables configured for the sandbox. image: anyOf: - type: string - type: 'null' title: Image description: Base image or declarative image used by the sandbox. snapshot: anyOf: - type: string - type: 'null' title: Snapshot description: Snapshot name used to create the sandbox. language: anyOf: - type: string - type: 'null' title: Language description: Programming language of the sandbox. auto_stop_interval: anyOf: - type: integer - type: 'null' title: Auto Stop Interval description: Minutes of inactivity before auto-stopping. auto_archive_interval: anyOf: - type: integer - type: 'null' title: Auto Archive Interval description: Minutes after stop before archiving to cold storage. auto_delete_interval: anyOf: - type: integer - type: 'null' title: Auto Delete Interval description: Minutes after archive before permanent deletion. ephemeral: anyOf: - type: boolean - type: 'null' title: Ephemeral description: Whether the sandbox is ephemeral. network_block_all: anyOf: - type: boolean - type: 'null' title: Network Block All description: Whether all outbound network is blocked. network_allow_list: anyOf: - type: string - type: 'null' title: Network Allow List description: Comma-separated list of allowed domains. volumes: items: additionalProperties: true type: object type: array title: Volumes description: Detailed volume mounts. type: object required: - id - name - state title: SandboxDetailResponse description: Detailed response for a single sandbox. SandboxListItem: properties: id: type: string title: Id description: Sandbox identifier. name: type: string title: Name description: Sandbox name. state: type: string title: State description: Sandbox state (e.g. started, stopped, archived). created_at: anyOf: - type: string - type: 'null' title: Created At description: ISO-8601 creation timestamp when available. volume_name: anyOf: - type: string - type: 'null' title: Volume Name description: Name of the persistent volume attached to the sandbox. labels: additionalProperties: type: string type: object title: Labels description: Custom labels attached to the sandbox. cpu: anyOf: - type: integer - type: 'null' title: Cpu description: Allocated CPU cores. memory: anyOf: - type: integer - type: 'null' title: Memory description: Allocated memory in GiB. disk: anyOf: - type: integer - type: 'null' title: Disk description: Allocated disk in GiB. type: object required: - id - name - state title: SandboxListItem description: Single sandbox entry returned by the sandbox list endpoint. SandboxListResponse: properties: items: items: $ref: '#/components/schemas/SandboxListItem' type: array title: Items description: Available sandboxes. total: type: integer title: Total description: Total number of sandboxes. page: type: integer title: Page description: Current page number. default: 1 total_pages: type: integer title: Total Pages description: Total number of pages. default: 1 type: object required: - total title: SandboxListResponse description: Response for the sandbox list endpoint. ServiceInfoResponse: properties: version: type: string title: Version description: Package version currently serving the API. default: 0.5.31 app_env: type: string enum: - local - staging - production title: App Env description: Active deployment environment. auth_mode: type: string enum: - dev - entra title: Auth Mode description: Authentication mode the server is running under. auth_required: type: boolean title: Auth Required description: Whether authentication is enforced for all API requests. sandbox_provider: type: string title: Sandbox Provider description: Active sandbox backend selected for runtime execution. database_enabled: type: boolean title: Database Enabled description: Whether a durable database backend is configured. serve_ui: type: boolean title: Serve Ui description: Whether the bundled React frontend is being served by this instance. expose_docs: type: boolean title: Expose Docs description: Whether the OpenAPI documentation UI (/docs, /redoc) is enabled. agent_model: anyOf: - type: string - type: 'null' title: Agent Model description: Primary planner LM identifier when configured. rlm_max_depth: type: integer title: Rlm Max Depth description: Maximum recursive RLM child delegation depth. rlm_max_iterations: type: integer title: Rlm Max Iterations description: Maximum ReAct iterations per top-level run. type: object required: - app_env - auth_mode - auth_required - sandbox_provider - database_enabled - serve_ui - expose_docs - rlm_max_depth - rlm_max_iterations title: ServiceInfoResponse description: 'Service capability and configuration surface returned by ``GET /api/v1/info``. Provides a single, stable snapshot of build metadata and active feature flags so clients and operators can inspect the running instance without tailing logs or querying multiple endpoints.' SessionDeleteResponse: properties: ok: type: boolean title: Ok description: Whether the session was archived successfully. default: true type: object title: SessionDeleteResponse description: Result payload after archiving a session. SessionDetailResponse: properties: id: type: string title: Id description: Durable session identifier. title: type: string title: Title description: Human-readable session title. status: type: string title: Status description: Session status (active, archived). model_name: anyOf: - type: string - type: 'null' title: Model Name description: Model used in session. external_session_id: anyOf: - type: string - type: 'null' title: External Session Id description: Canonical runtime session identifier. workspace_id: anyOf: - type: string - type: 'null' title: Workspace Id description: Workspace context. turn_count: type: integer title: Turn Count description: Total number of turns in this session. created_at: type: string title: Created At description: ISO-8601 creation timestamp. updated_at: type: string title: Updated At description: ISO-8601 last-update timestamp. type: object required: - id - title - status - turn_count - created_at - updated_at title: SessionDetailResponse description: Full session detail with turn count. SessionExportRequest: properties: module_slug: type: string title: Module Slug description: Target GEPA module slug whose dataset keys determine the export column mapping. type: object required: - module_slug title: SessionExportRequest description: Request body for exporting a session's turns as a GEPA training dataset. SessionListItem: properties: id: type: string title: Id description: Durable session identifier. title: type: string title: Title description: Human-readable session title. status: type: string title: Status description: Session status (active, archived). model_name: anyOf: - type: string - type: 'null' title: Model Name description: Model used in session. external_session_id: anyOf: - type: string - type: 'null' title: External Session Id description: Canonical runtime session identifier. created_at: type: string title: Created At description: ISO-8601 creation timestamp. updated_at: type: string title: Updated At description: ISO-8601 last-update timestamp. type: object required: - id - title - status - created_at - updated_at title: SessionListItem description: Lightweight session summary for list views. SessionListResponse: properties: items: items: $ref: '#/components/schemas/SessionListItem' type: array title: Items description: Session list items. total: type: integer title: Total description: Total matching sessions. offset: type: integer title: Offset description: Current pagination offset. limit: type: integer title: Limit description: Current page size. has_more: type: boolean title: Has More description: Whether more results exist beyond this page. type: object required: - items - total - offset - limit - has_more title: SessionListResponse description: Paginated session list. SessionPatchRequest: properties: title: anyOf: - type: string - type: 'null' title: Title description: New human-readable session title. metadata_json: anyOf: - additionalProperties: true type: object - type: 'null' title: Metadata Json description: New metadata dictionary to merge or replace session metadata. type: object title: SessionPatchRequest description: Patch body for updating session metadata. SessionRestoreResponse: properties: ok: type: boolean title: Ok description: Whether the session was restored successfully. default: true type: object title: SessionRestoreResponse description: Result payload after restoring an archived session. SessionStateResponse: properties: ok: type: boolean title: Ok description: Whether the session-state query completed successfully. default: true sessions: items: $ref: '#/components/schemas/SessionStateSummary' type: array title: Sessions description: Active or restored session summaries currently known to the server. type: object title: SessionStateResponse description: Response body for the session-state summary endpoint. SessionStateSummary: properties: key: type: string title: Key description: Stable in-memory session key used by the server. workspace_id: type: string title: Workspace Id description: Workspace identifier owning the session. user_id: type: string title: User Id description: User identifier owning the session. session_id: anyOf: - type: string - type: 'null' title: Session Id description: Optional explicit session identifier when one has been assigned. history_turns: type: integer title: History Turns description: Number of conversation turns currently stored in session history. default: 0 document_count: type: integer title: Document Count description: Number of loaded document entries attached to the session state. default: 0 memory_count: type: integer title: Memory Count description: Number of persisted memory items in the session manifest. default: 0 log_count: type: integer title: Log Count description: Number of execution log entries in the session manifest. default: 0 artifact_count: type: integer title: Artifact Count description: Number of artifacts currently tracked in the session manifest. default: 0 updated_at: anyOf: - type: string - type: 'null' title: Updated At description: Last updated timestamp recorded in the session manifest, when available. type: object required: - key - workspace_id - user_id title: SessionStateSummary description: Lightweight summary of a persisted or active chat session. SessionStatsResponse: properties: total_tokens_in: type: integer title: Total Tokens In description: Total input tokens across all turns. default: 0 total_tokens_out: type: integer title: Total Tokens Out description: Total output tokens across all turns. default: 0 total_latency_ms: type: integer title: Total Latency Ms description: Total latency in milliseconds across all turns. default: 0 model_breakdown: additionalProperties: type: integer type: object title: Model Breakdown description: Mapping of model_name to turn count. type: object title: SessionStatsResponse description: Aggregated usage stats for a session. TraceFeedbackRequest: properties: trace_id: anyOf: - type: string - type: 'null' title: Trace Id description: Resolved MLflow trace identifier when the client already knows it. client_request_id: anyOf: - type: string - type: 'null' title: Client Request Id description: Client request identifier used to resolve the trace when trace_id is absent. is_correct: type: boolean title: Is Correct description: Whether the model output was considered correct. comment: anyOf: - type: string - type: 'null' title: Comment description: Optional free-form reviewer comment explaining the feedback. expected_response: anyOf: - type: string - type: 'null' title: Expected Response description: Optional ground-truth response or correction to log alongside the feedback. type: object required: - is_correct title: TraceFeedbackRequest description: Feedback payload for annotating an MLflow trace. TraceFeedbackResponse: properties: ok: type: boolean title: Ok description: Whether the feedback request completed successfully. default: true trace_id: type: string title: Trace Id description: Resolved MLflow trace identifier that received the feedback. client_request_id: anyOf: - type: string - type: 'null' title: Client Request Id description: Resolved client request identifier associated with the trace, when available. feedback_logged: type: boolean title: Feedback Logged description: Whether binary/correctness feedback was successfully logged. default: true expectation_logged: type: boolean title: Expectation Logged description: Whether an expected-response correction was successfully logged. default: false type: object required: - trace_id title: TraceFeedbackResponse description: Result payload after MLflow feedback has been recorded. TranscriptDatasetRequest: properties: module_slug: type: string title: Module Slug description: Target GEPA module slug whose dataset keys determine row mapping. title: anyOf: - type: string - type: 'null' title: Title description: Optional human-readable transcript title used for dataset naming. turns: items: $ref: '#/components/schemas/TranscriptTurnInput' type: array title: Turns description: Transcript turns to convert into dataset rows. type: object required: - module_slug - turns title: TranscriptDatasetRequest description: Request body for converting transcript turns into a GEPA dataset. TranscriptTurnInput: properties: user_message: anyOf: - type: string - type: 'null' title: User Message description: User prompt/content for the turn. assistant_message: anyOf: - type: string - type: 'null' title: Assistant Message description: Assistant response/content for the turn. type: object title: TranscriptTurnInput description: Single transcript turn used to build a GEPA dataset. TurnItem: properties: id: type: string title: Id description: Durable turn identifier. turn_index: type: integer title: Turn Index description: Zero-based turn position. user_message: type: string title: User Message description: User message text. assistant_message: anyOf: - type: string - type: 'null' title: Assistant Message description: Assistant response text. created_at: type: string title: Created At description: ISO-8601 creation timestamp. type: object required: - id - turn_index - user_message - created_at title: TurnItem description: Single turn in a session transcript. TurnListResponse: properties: items: items: $ref: '#/components/schemas/TurnItem' type: array title: Items description: Turn list items. total: type: integer title: Total description: Total turns in session. offset: type: integer title: Offset description: Current pagination offset. limit: type: integer title: Limit description: Current page size. has_more: type: boolean title: Has More description: Whether more turns exist beyond this page. type: object required: - items - total - offset - limit - has_more title: TurnListResponse description: Paginated turn list. ValidationError: properties: loc: items: anyOf: - type: string - type: integer type: array title: Location description: Location path identifying where the validation error occurred. msg: type: string title: Message description: Human-readable validation failure message. type: type: string title: Error Type description: Pydantic validation error type identifier. input: title: Input description: Input value that failed validation, when available. ctx: type: object title: Context description: Optional structured validation context for templated error messages. type: object required: - loc - msg - type title: ValidationError VolumeFileContentResponse: properties: provider: type: string const: daytona title: Provider description: Runtime volume backend used to satisfy the request. path: type: string title: Path description: Normalized file path used for the preview request. mime: type: string title: Mime description: Detected MIME type for the returned content. size: type: integer title: Size description: File size in bytes reported by the provider. content: type: string title: Content description: UTF-8 text preview returned for the requested file. truncated: type: boolean title: Truncated description: Whether the returned file content was truncated to respect max_bytes. default: false type: object required: - provider - path - mime - size - content title: VolumeFileContentResponse description: Response for runtime volume file-content preview endpoint. VolumeListItem: properties: id: type: string title: Id description: Volume identifier. name: type: string title: Name description: Volume name. state: type: string title: State description: Volume state (e.g. ready, creating). default: '' created_at: anyOf: - type: string - type: 'null' title: Created At description: ISO-8601 creation timestamp when available. type: object required: - id - name title: VolumeListItem description: Single volume entry returned by the volume list endpoint. VolumeListResponse: properties: provider: type: string const: daytona title: Provider description: Runtime volume backend used to satisfy the request. volumes: items: $ref: '#/components/schemas/VolumeListItem' type: array title: Volumes description: Available persistent volumes. type: object required: - provider title: VolumeListResponse description: Response for the volume list endpoint. VolumeTreeNode: properties: id: type: string title: Id description: Stable node identifier used by the frontend tree view. name: type: string title: Name description: Display name for the file-system node. path: type: string title: Path description: Absolute path for the file-system node within the runtime volume. type: type: string enum: - volume - directory - file title: Type description: Kind of file-system node represented by this entry. children: items: $ref: '#/components/schemas/VolumeTreeNode' type: array title: Children description: Child nodes for directory or volume entries. size: anyOf: - type: integer - type: 'null' title: Size description: File size in bytes when the provider reports one. modified_at: anyOf: - type: string - type: 'null' title: Modified At description: Last modified timestamp when the provider reports one. type: object required: - id - name - path - type title: VolumeTreeNode description: A single node in the volume file tree. VolumeTreeResponse: properties: provider: type: string const: daytona title: Provider description: Runtime volume backend used to satisfy the request. volume_name: type: string title: Volume Name description: Resolved volume name used for the listing request. root_path: type: string title: Root Path description: Normalized root path used for the listing request. nodes: items: $ref: '#/components/schemas/VolumeTreeNode' type: array title: Nodes description: Tree nodes rooted at the requested path. total_files: type: integer title: Total Files description: Total file count returned in the current response payload. default: 0 total_dirs: type: integer title: Total Dirs description: Total directory count returned in the current response payload. default: 0 truncated: type: boolean title: Truncated description: Whether the provider truncated the tree because of depth or payload limits. default: false type: object required: - provider - volume_name - root_path - nodes title: VolumeTreeResponse description: Response for the volume tree listing endpoint. securitySchemes: HTTPBearer: type: http description: Bearer token used when HTTP authentication is enabled. When auth is optional, requests without a token fall back to the configured default server identity. scheme: bearer bearerFormat: JWT