openapi: 3.1.0 info: title: Agno API Reference description: 'The all-in-one, private, secure agent platform that runs in your cloud.' version: 2.5.6 paths: /: get: tags: - Home summary: API Information description: |- Get basic information about this AgentOS API instance, including: - API metadata and version - Available capabilities overview - Links to key endpoints and documentation operationId: get_api_info responses: '200': description: API information retrieved successfully content: application/json: schema: {} examples: home: summary: Example home response value: name: AgentOS API id: demo-os version: 1.0.0 /health: get: tags: - Health summary: Health Check description: Check the health status of the AgentOS API. Returns a simple status indicator. operationId: health_check responses: '200': description: API is healthy and operational content: application/json: schema: $ref: '#/components/schemas/HealthResponse' example: status: ok instantiated_at: '2025-06-10T12:00:00Z' /config: get: tags: - Core summary: Get OS Configuration description: |- Retrieve the complete configuration of the AgentOS instance, including: - Available models and databases - Registered agents, teams, and workflows - Chat, session, memory, knowledge, and evaluation configurations - Available interfaces and their routes operationId: get_config responses: '200': description: OS configuration retrieved successfully content: application/json: schema: $ref: '#/components/schemas/ConfigResponse' example: id: demo description: Example AgentOS configuration available_models: [] databases: - 9c884dc4-9066-448c-9074-ef49ec7eb73c session: dbs: - db_id: 9c884dc4-9066-448c-9074-ef49ec7eb73c domain_config: display_name: Sessions metrics: dbs: - db_id: 9c884dc4-9066-448c-9074-ef49ec7eb73c domain_config: display_name: Metrics memory: dbs: - db_id: 9c884dc4-9066-448c-9074-ef49ec7eb73c domain_config: display_name: Memory knowledge: dbs: - db_id: 9c884dc4-9066-448c-9074-ef49ec7eb73c domain_config: display_name: Knowledge evals: dbs: - db_id: 9c884dc4-9066-448c-9074-ef49ec7eb73c domain_config: display_name: Evals agents: - id: main-agent name: Main Agent db_id: 9c884dc4-9066-448c-9074-ef49ec7eb73c teams: [] workflows: [] interfaces: [] '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedResponse' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorResponse' security: - HTTPBearer: [] /models: get: tags: - Core summary: Get Available Models description: Retrieve a list of all unique models currently used by agents and teams in this OS instance. This includes the model ID and provider information for each model. operationId: get_models responses: '200': description: List of models retrieved successfully content: application/json: schema: items: $ref: '#/components/schemas/Model' type: array title: Response Get Models example: - id: gpt-4 provider: openai - id: claude-3-sonnet provider: anthropic '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedResponse' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorResponse' security: - HTTPBearer: [] '/agents/{agent_id}/runs': post: tags: - Agents summary: Create Agent Run description: |- Execute an agent with a message and optional media files. Supports both streaming and non-streaming responses. **Features:** - Text message input with optional session management - Multi-media support: images (PNG, JPEG, WebP), audio (WAV, MP3), video (MP4, WebM, etc.) - Document processing: PDF, CSV, DOCX, TXT, JSON - Real-time streaming responses with Server-Sent Events (SSE) - User and session context preservation **Streaming Response:** When `stream=true`, returns SSE events with `event` and `data` fields. operationId: create_agent_run security: - HTTPBearer: [] parameters: - name: agent_id in: path required: true schema: type: string title: Agent Id requestBody: required: true content: multipart/form-data: schema: $ref: '#/components/schemas/Body_create_agent_run' responses: '200': description: Agent run executed successfully content: application/json: schema: {} text/event-stream: examples: event_stream: summary: Example event stream response value: |+ event: RunStarted data: {"content": "Hello!", "run_id": "123..."} '400': description: Invalid request or unsupported file type content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedResponse' '404': description: Agent not found content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorResponse' get: tags: - Agents summary: List Agent Runs description: |- List runs for an agent within a session, optionally filtered by status. Useful for monitoring background runs and viewing run history. operationId: list_agent_runs security: - HTTPBearer: [] parameters: - name: agent_id in: path required: true schema: type: string title: Agent Id - name: session_id in: query required: true schema: type: string description: Session ID to list runs for title: Session Id description: Session ID to list runs for - name: status in: query required: false schema: anyOf: - type: string - type: 'null' description: 'Filter by run status (PENDING, RUNNING, COMPLETED, ERROR)' title: Status description: 'Filter by run status (PENDING, RUNNING, COMPLETED, ERROR)' responses: '200': description: List of runs retrieved successfully content: application/json: schema: {} '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedResponse' '404': description: Agent not found content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorResponse' '/agents/{agent_id}/runs/{run_id}/cancel': post: tags: - Agents summary: Cancel Agent Run description: |- Cancel a currently executing agent run. This will attempt to stop the agent's execution gracefully. **Note:** Cancellation may not be immediate for all operations. operationId: cancel_agent_run security: - HTTPBearer: [] parameters: - name: agent_id in: path required: true schema: type: string title: Agent Id - name: run_id in: path required: true schema: type: string title: Run Id responses: '200': description: Successful Response content: application/json: schema: {} '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedResponse' '404': description: Agent not found content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '500': description: Failed to cancel run content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorResponse' '/agents/{agent_id}/runs/{run_id}/continue': post: tags: - Agents summary: Continue Agent Run description: |- Continue a paused or incomplete agent run with updated tool results. **Use Cases:** - Resume execution after tool approval/rejection - Provide manual tool execution results - Resume after admin approval (tools can be empty; resolution fetched from DB) **Tools Parameter:** JSON string containing array of tool execution objects with results. Can be empty when an admin-required approval has been resolved. operationId: continue_agent_run security: - HTTPBearer: [] parameters: - name: agent_id in: path required: true schema: type: string title: Agent Id - name: run_id in: path required: true schema: type: string title: Run Id requestBody: content: application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/Body_continue_agent_run' responses: '200': description: Agent run continued successfully content: application/json: schema: {} text/event-stream: example: |+ event: RunContent data: {"created_at": 1757348314, "run_id": "123..."} '400': description: Invalid JSON in tools field or invalid tool structure content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedResponse' '403': description: Run has a pending admin approval and cannot be continued by the user yet. '404': description: Agent not found content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' '409': description: 'Run is not paused (e.g. run is already running, continued, or errored). Only PAUSED runs can be continued.' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorResponse' /agents: get: tags: - Agents summary: List All Agents description: |- Retrieve a comprehensive list of all agents configured in this OS instance. **Returns:** - Agent metadata (ID, name, description) - Model configuration and capabilities - Available tools and their configurations - Session, knowledge, memory, and reasoning settings - Only meaningful (non-default) configurations are included operationId: get_agents responses: '200': description: List of agents retrieved successfully content: application/json: schema: items: $ref: '#/components/schemas/AgentResponse' type: array title: Response Get Agents example: - id: main-agent name: Main Agent db_id: c6bf0644-feb8-4930-a305-380dae5ad6aa model: name: OpenAIChat model: gpt-4o provider: OpenAI sessions: session_table: agno_sessions knowledge: knowledge_table: main_knowledge system_message: markdown: true add_datetime_to_context: true '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedResponse' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorResponse' security: - HTTPBearer: [] '/agents/{agent_id}': get: tags: - Agents summary: Get Agent Details description: |- Retrieve detailed configuration and capabilities of a specific agent. **Returns comprehensive agent information including:** - Model configuration and provider details - Complete tool inventory and configurations - Session management settings - Knowledge base and memory configurations - Reasoning capabilities and settings - System prompts and response formatting options operationId: get_agent security: - HTTPBearer: [] parameters: - name: agent_id in: path required: true schema: type: string title: Agent Id responses: '200': description: Agent details retrieved successfully content: application/json: schema: $ref: '#/components/schemas/AgentResponse' example: id: main-agent name: Main Agent db_id: 9e064c70-6821-4840-a333-ce6230908a70 model: name: OpenAIChat model: gpt-4o provider: OpenAI sessions: session_table: agno_sessions knowledge: knowledge_table: main_knowledge system_message: markdown: true add_datetime_to_context: true '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedResponse' '404': description: Agent not found content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorResponse' '/agents/{agent_id}/runs/{run_id}': get: tags: - Agents summary: Get Agent Run description: |- Retrieve the status and output of an agent run. Use this to poll for background run completion. Requires the `session_id` that was returned when the run was created. operationId: get_agent_run security: - HTTPBearer: [] parameters: - name: agent_id in: path required: true schema: type: string title: Agent Id - name: run_id in: path required: true schema: type: string title: Run Id - name: session_id in: query required: true schema: type: string description: Session ID for the run title: Session Id description: Session ID for the run responses: '200': description: Run output retrieved successfully content: application/json: schema: {} '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedResponse' '404': description: Agent or run not found content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorResponse' '/teams/{team_id}/runs': post: tags: - Teams summary: Create Team Run description: |- Execute a team collaboration with multiple agents working together on a task. **Features:** - Text message input with optional session management - Multi-media support: images (PNG, JPEG, WebP), audio (WAV, MP3), video (MP4, WebM, etc.) - Document processing: PDF, CSV, DOCX, TXT, JSON - Real-time streaming responses with Server-Sent Events (SSE) - User and session context preservation **Streaming Response:** When `stream=true`, returns SSE events with `event` and `data` fields. operationId: create_team_run security: - HTTPBearer: [] parameters: - name: team_id in: path required: true schema: type: string title: Team Id requestBody: required: true content: multipart/form-data: schema: $ref: '#/components/schemas/Body_create_team_run' responses: '200': description: Team run executed successfully content: application/json: schema: {} text/event-stream: example: |+ event: RunStarted data: {"content": "Hello!", "run_id": "123..."} '400': description: Invalid request or unsupported file type content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedResponse' '404': description: Team not found content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorResponse' get: tags: - Teams summary: List Team Runs description: |- List runs for a team within a session, optionally filtered by status. Useful for monitoring background runs and viewing run history. operationId: list_team_runs security: - HTTPBearer: [] parameters: - name: team_id in: path required: true schema: type: string title: Team Id - name: session_id in: query required: true schema: type: string description: Session ID to list runs for title: Session Id description: Session ID to list runs for - name: status in: query required: false schema: anyOf: - type: string - type: 'null' description: 'Filter by run status (PENDING, RUNNING, COMPLETED, ERROR)' title: Status description: 'Filter by run status (PENDING, RUNNING, COMPLETED, ERROR)' responses: '200': description: List of runs retrieved successfully content: application/json: schema: {} '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedResponse' '404': description: Team not found content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorResponse' '/teams/{team_id}/runs/{run_id}/cancel': post: tags: - Teams summary: Cancel Team Run description: |- Cancel a currently executing team run. This will attempt to stop the team's execution gracefully. **Note:** Cancellation may not be immediate for all operations. operationId: cancel_team_run security: - HTTPBearer: [] parameters: - name: team_id in: path required: true schema: type: string title: Team Id - name: run_id in: path required: true schema: type: string title: Run Id responses: '200': description: Successful Response content: application/json: schema: {} '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedResponse' '404': description: Team not found content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '500': description: Failed to cancel team run content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorResponse' /teams: get: tags: - Teams summary: List All Teams description: |- Retrieve a comprehensive list of all teams configured in this OS instance. **Returns team information including:** - Team metadata (ID, name, description, execution mode) - Model configuration for team coordination - Team member roster with roles and capabilities - Knowledge sharing and memory configurations operationId: get_teams responses: '200': description: List of teams retrieved successfully content: application/json: schema: items: $ref: '#/components/schemas/TeamResponse' type: array title: Response Get Teams example: - team_id: basic-team name: Basic Team mode: coordinate model: name: OpenAIChat model: gpt-4o provider: OpenAI tools: - name: transfer_task_to_member description: |- Use this function to transfer a task to the selected team member. You must provide a clear and concise description of the task the member should achieve AND the expected output. parameters: type: object properties: member_id: type: string description: '(str) The ID of the member to transfer the task to. Use only the ID of the member, not the ID of the team followed by the ID of the member.' task_description: type: string description: (str) A clear and concise description of the task the member should achieve. expected_output: type: string description: (str) The expected output from the member (optional). additionalProperties: false required: - member_id - task_description members: - agent_id: basic-agent name: Basic Agent model: name: OpenAIChat model: gpt-4o provider: OpenAI gpt-4o memory: app_name: Memory model: name: OpenAIChat model: gpt-4o provider: OpenAI session_table: agno_sessions memory_table: agno_memories enable_agentic_context: false memory: app_name: agno_memories app_url: /memory/1 model: name: OpenAIChat model: gpt-4o provider: OpenAI async_mode: false session_table: agno_sessions memory_table: agno_memories '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedResponse' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorResponse' security: - HTTPBearer: [] '/teams/{team_id}': get: tags: - Teams summary: Get Team Details description: Retrieve detailed configuration and member information for a specific team. operationId: get_team security: - HTTPBearer: [] parameters: - name: team_id in: path required: true schema: type: string title: Team Id responses: '200': description: Team details retrieved successfully content: application/json: schema: $ref: '#/components/schemas/TeamResponse' example: team_id: basic-team name: Basic Team mode: coordinate model: name: OpenAIChat model: gpt-4o provider: OpenAI tools: - name: transfer_task_to_member description: |- Use this function to transfer a task to the selected team member. You must provide a clear and concise description of the task the member should achieve AND the expected output. parameters: type: object properties: member_id: type: string description: '(str) The ID of the member to transfer the task to. Use only the ID of the member, not the ID of the team followed by the ID of the member.' task_description: type: string description: (str) A clear and concise description of the task the member should achieve. expected_output: type: string description: (str) The expected output from the member (optional). additionalProperties: false required: - member_id - task_description members: - agent_id: basic-agent name: Basic Agent model: name: OpenAIChat model: gpt-4o provider: OpenAI gpt-4o memory: app_name: Memory model: name: OpenAIChat model: gpt-4o provider: OpenAI session_table: agno_sessions memory_table: agno_memories enable_agentic_context: false memory: app_name: Memory model: name: OpenAIChat model: gpt-4o provider: OpenAI async_mode: false session_table: agno_sessions memory_table: agno_memories '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedResponse' '404': description: Team not found content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorResponse' '/teams/{team_id}/runs/{run_id}': get: tags: - Teams summary: Get Team Run description: |- Retrieve the status and output of a team run. Use this to poll for background run completion. Requires the `session_id` that was returned when the run was created. operationId: get_team_run security: - HTTPBearer: [] parameters: - name: team_id in: path required: true schema: type: string title: Team Id - name: run_id in: path required: true schema: type: string title: Run Id - name: session_id in: query required: true schema: type: string description: Session ID for the run title: Session Id description: Session ID for the run responses: '200': description: Run output retrieved successfully content: application/json: schema: {} '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedResponse' '404': description: Team or run not found content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorResponse' /workflows: get: tags: - Workflows summary: List All Workflows description: |- Retrieve a comprehensive list of all workflows configured in this OS instance. **Return Information:** - Workflow metadata (ID, name, description) - Input schema requirements - Step sequence and execution flow - Associated agents and teams operationId: get_workflows responses: '200': description: List of workflows retrieved successfully content: application/json: schema: items: $ref: '#/components/schemas/WorkflowSummaryResponse' type: array title: Response Get Workflows example: - id: content-creation-workflow name: Content Creation Workflow description: Automated content creation from blog posts to social media db_id: '123' '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedResponse' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorResponse' security: - HTTPBearer: [] '/workflows/{workflow_id}': get: tags: - Workflows summary: Get Workflow Details description: Retrieve detailed configuration and step information for a specific workflow. operationId: get_workflow security: - HTTPBearer: [] parameters: - name: workflow_id in: path required: true schema: type: string title: Workflow Id responses: '200': description: Workflow details retrieved successfully content: application/json: schema: $ref: '#/components/schemas/WorkflowResponse' example: id: content-creation-workflow name: Content Creation Workflow description: Automated content creation from blog posts to social media db_id: '123' '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedResponse' '404': description: Workflow not found content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorResponse' '/workflows/{workflow_id}/runs': post: tags: - Workflows summary: Execute Workflow description: |- Execute a workflow with the provided input data. Workflows can run in streaming or batch mode. **Execution Modes:** - **Streaming (`stream=true`)**: Real-time step-by-step execution updates via SSE - **Non-Streaming (`stream=false`)**: Complete workflow execution with final result **Workflow Execution Process:** 1. Input validation against workflow schema 2. Sequential or parallel step execution based on workflow design 3. Data flow between steps with transformation 4. Error handling and automatic retries where configured 5. Final result compilation and response **Session Management:** Workflows support session continuity for stateful execution across multiple runs. operationId: create_workflow_run security: - HTTPBearer: [] parameters: - name: workflow_id in: path required: true schema: type: string title: Workflow Id requestBody: required: true content: application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/Body_create_workflow_run' responses: '200': description: Workflow executed successfully content: application/json: schema: {} text/event-stream: example: |+ event: RunStarted data: {"content": "Hello!", "run_id": "123..."} '400': description: Invalid input data or workflow configuration content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedResponse' '404': description: Workflow not found content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '500': description: Workflow execution error content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorResponse' '/workflows/{workflow_id}/runs/{run_id}/cancel': post: tags: - Workflows summary: Cancel Workflow Run description: |- Cancel a currently executing workflow run, stopping all active steps and cleanup. **Note:** Complex workflows with multiple parallel steps may take time to fully cancel. operationId: cancel_workflow_run security: - HTTPBearer: [] parameters: - name: workflow_id in: path required: true schema: type: string title: Workflow Id - name: run_id in: path required: true schema: type: string title: Run Id responses: '200': description: Successful Response content: application/json: schema: {} '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedResponse' '404': description: Workflow or run not found content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '500': description: Failed to cancel workflow run content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorResponse' '/workflows/{workflow_id}/runs/{run_id}': get: tags: - Workflows summary: Get Workflow Run description: |- Retrieve the status and output of a workflow run. Use this to poll for run completion. Requires the `session_id` that was returned when the run was created. operationId: get_workflow_run security: - HTTPBearer: [] parameters: - name: workflow_id in: path required: true schema: type: string title: Workflow Id - name: run_id in: path required: true schema: type: string title: Run Id - name: session_id in: query required: true schema: type: string description: Session ID for the run title: Session Id description: Session ID for the run responses: '200': description: Run output retrieved successfully content: application/json: schema: {} '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedResponse' '404': description: Workflow or run not found content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorResponse' /slack/events: post: tags: - Slack summary: Slack Events description: | Receives incoming Slack events (messages, mentions, thread starts). **URL Verification:** On first setup, Slack sends a `url_verification` challenge. The endpoint echoes back the challenge string. **Event Processing:** Normal events are acknowledged immediately with `{"status": "ok"}` and processed in the background. This prevents Slack's 3-second retry timeout. **Retry Handling:** Events with `X-Slack-Retry-Num` header are duplicates and return 200 without reprocessing. **Setup:** Configure this URL in your [Slack App](https://api.slack.com/apps) under **Event Subscriptions > Request URL**. See the [setup guide](/agent-os/interfaces/slack/setup) for creating a Slack App or use the [manifest](/agent-os/interfaces/slack/setup#2-create-the-slack-app) for quick setup. operationId: slack_events_simple_team parameters: - name: X-Slack-Request-Timestamp in: header required: true schema: type: string description: Unix timestamp when Slack sent the request - name: X-Slack-Signature in: header required: true schema: type: string description: HMAC signature for request verification (v0=hash) - name: X-Slack-Retry-Num in: header required: false schema: type: string description: Retry attempt number (present on retried events) responses: '200': description: Event processed successfully content: application/json: schema: anyOf: - $ref: '#/components/schemas/SlackChallengeResponse' - $ref: '#/components/schemas/SlackEventResponse' title: Response Slack Events Simple Team '400': description: Missing required Slack headers (X-Slack-Request-Timestamp or X-Slack-Signature) '403': description: Invalid Slack signature - signing secret mismatch /slack/interactions: post: tags: - Slack summary: Slack Interactions description: | Handles Slack interactive components for Human-in-the-Loop (HITL) workflows. **Supported Actions:** - `row_approve` - Approve a pending tool call - `row_reject` - Reject a pending tool call - `submit_pause` - Submit form data for a paused workflow **Setup:** Configure this URL in your [Slack App](https://api.slack.com/apps) under **Interactivity & Shortcuts > Request URL**. See the [setup guide](/agent-os/interfaces/slack/setup) for step-by-step instructions or the [HITL guide](/agent-os/interfaces/slack/hitl) for approval workflows. operationId: slack_interactions requestBody: required: true content: application/x-www-form-urlencoded: schema: type: object required: - payload properties: payload: type: string description: URL-encoded JSON interaction payload (Slack sends interactive component data as a single form field) parameters: - name: X-Slack-Request-Timestamp in: header required: true schema: type: string description: Unix timestamp when Slack sent the request - name: X-Slack-Signature in: header required: true schema: type: string description: HMAC signature for request verification (v0=hash) responses: '200': description: Interaction accepted content: application/json: schema: $ref: '#/components/schemas/SlackEventResponse' '400': description: Malformed interaction payload or missing payload field '403': description: Invalid Slack signature - signing secret mismatch /whatsapp/status: get: tags: - Whatsapp summary: Status operationId: status_whatsapp_status_get responses: '200': description: Successful Response content: application/json: schema: {} /whatsapp/webhook: get: tags: - Whatsapp summary: Verify Webhook description: Handle WhatsApp webhook verification operationId: verify_webhook_whatsapp_webhook_get responses: '200': description: Successful Response content: application/json: schema: {} post: tags: - Whatsapp summary: Webhook description: Handle incoming WhatsApp messages operationId: webhook_whatsapp_webhook_post responses: '200': description: Successful Response content: application/json: schema: {} /agui: post: tags: - AGUI summary: Run Agent operationId: run_agent_agui_post requestBody: content: application/json: schema: $ref: '#/components/schemas/RunAgentInput' required: true responses: '200': description: Successful Response content: application/json: schema: {} '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' /status: get: tags: - AGUI summary: Get Status operationId: get_status_status_get responses: '200': description: Successful Response content: application/json: schema: {} '/a2a/agents/{id}/.well-known/agent-card.json': get: tags: - A2A summary: Get Agent Card operationId: get_agent_card_a2a_agents__id___well_known_agent_card_json_get parameters: - name: id in: path required: true schema: type: string title: Id responses: '200': description: Successful Response content: application/json: schema: {} '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' '/a2a/agents/{id}/v1/message:send': post: tags: - A2A summary: Run Message Agent description: 'Send a message to an Agno Agent (non-streaming). The Agent is identified via the path parameter ''{id}''. Optional: Pass user ID via X-User-ID header (recommended) or ''userId'' in params.message.metadata.' operationId: run_message_agent parameters: - name: id in: path required: true schema: type: string title: Id responses: '200': description: Message sent successfully content: application/json: schema: $ref: '#/components/schemas/SendMessageSuccessResponse' example: jsonrpc: '2.0' id: request-123 result: task: id: task-456 context_id: context-789 status: completed history: - message_id: msg-1 role: agent parts: - kind: text text: Response from agent '400': description: Invalid request '404': description: Agent not found '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' '/a2a/agents/{id}/v1/tasks:get': post: tags: - A2A summary: Get Agent Task description: Get the status and result of an agent task by ID. operationId: get_agent_task parameters: - name: id in: path required: true schema: type: string title: Id responses: '200': description: Successful Response content: application/json: schema: {} '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' '/a2a/agents/{id}/v1/tasks:cancel': post: tags: - A2A summary: Cancel Agent Task description: Cancel a running agent task. operationId: cancel_agent_task parameters: - name: id in: path required: true schema: type: string title: Id responses: '200': description: Successful Response content: application/json: schema: {} '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' '/a2a/agents/{id}/v1/message:stream': post: tags: - A2A summary: Stream Message Agent description: 'Stream a message to an Agno Agent (streaming). The Agent is identified via the path parameter ''{id}''. Optional: Pass user ID via X-User-ID header (recommended) or ''userId'' in params.message.metadata. Returns real-time updates as newline-delimited JSON (NDJSON).' operationId: stream_message_agent parameters: - name: id in: path required: true schema: type: string title: Id responses: '200': description: Streaming response with task updates content: application/json: schema: {} text/event-stream: example: |+ event: TaskStatusUpdateEvent data: {"jsonrpc":"2.0","id":"request-123","result":{"taskId":"task-456","status":"working"}} event: Message data: {"jsonrpc":"2.0","id":"request-123","result":{"messageId":"msg-1","role":"agent","parts":[{"kind":"text","text":"Response"}]}} '400': description: Invalid request '404': description: Agent not found '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' '/a2a/teams/{id}/.well-known/agent-card.json': get: tags: - A2A summary: Get Team Card operationId: get_team_card_a2a_teams__id___well_known_agent_card_json_get parameters: - name: id in: path required: true schema: type: string title: Id responses: '200': description: Successful Response content: application/json: schema: {} '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' '/a2a/teams/{id}/v1/message:send': post: tags: - A2A summary: Run Message Team description: 'Send a message to an Agno Team (non-streaming). The Team is identified via the path parameter ''{id}''. Optional: Pass user ID via X-User-ID header (recommended) or ''userId'' in params.message.metadata.' operationId: run_message_team parameters: - name: id in: path required: true schema: type: string title: Id responses: '200': description: Message sent successfully content: application/json: schema: $ref: '#/components/schemas/SendMessageSuccessResponse' example: jsonrpc: '2.0' id: request-123 result: task: id: task-456 context_id: context-789 status: completed history: - message_id: msg-1 role: agent parts: - kind: text text: Response from agent '400': description: Invalid request '404': description: Team not found '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' '/a2a/teams/{id}/v1/tasks:get': post: tags: - A2A summary: Get Team Task description: Get the status and result of a team task by ID. operationId: get_team_task parameters: - name: id in: path required: true schema: type: string title: Id responses: '200': description: Successful Response content: application/json: schema: {} '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' '/a2a/teams/{id}/v1/tasks:cancel': post: tags: - A2A summary: Cancel Team Task description: Cancel a running team task. operationId: cancel_team_task parameters: - name: id in: path required: true schema: type: string title: Id responses: '200': description: Successful Response content: application/json: schema: {} '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' '/a2a/teams/{id}/v1/message:stream': post: tags: - A2A summary: Stream Message Team description: 'Stream a message to an Agno Team (streaming). The Team is identified via the path parameter ''{id}''. Optional: Pass user ID via X-User-ID header (recommended) or ''userId'' in params.message.metadata. Returns real-time updates as newline-delimited JSON (NDJSON).' operationId: stream_message_team parameters: - name: id in: path required: true schema: type: string title: Id responses: '200': description: Streaming response with task updates content: application/json: schema: {} text/event-stream: example: |+ event: TaskStatusUpdateEvent data: {"jsonrpc":"2.0","id":"request-123","result":{"taskId":"task-456","status":"working"}} event: Message data: {"jsonrpc":"2.0","id":"request-123","result":{"messageId":"msg-1","role":"agent","parts":[{"kind":"text","text":"Response"}]}} '400': description: Invalid request '404': description: Team not found '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' '/a2a/workflows/{id}/.well-known/agent-card.json': get: tags: - A2A summary: Get Workflow Card operationId: get_workflow_card_a2a_workflows__id___well_known_agent_card_json_get parameters: - name: id in: path required: true schema: type: string title: Id responses: '200': description: Successful Response content: application/json: schema: {} '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' '/a2a/workflows/{id}/v1/message:send': post: tags: - A2A summary: Run Message Workflow description: 'Send a message to an Agno Workflow (non-streaming). The Workflow is identified via the path parameter ''{id}''. Optional: Pass user ID via X-User-ID header (recommended) or ''userId'' in params.message.metadata.' operationId: run_message_workflow parameters: - name: id in: path required: true schema: type: string title: Id responses: '200': description: Message sent successfully content: application/json: schema: $ref: '#/components/schemas/SendMessageSuccessResponse' example: jsonrpc: '2.0' id: request-123 result: task: id: task-456 context_id: context-789 status: completed history: - message_id: msg-1 role: agent parts: - kind: text text: Response from agent '400': description: Invalid request '404': description: Workflow not found '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' '/a2a/workflows/{id}/v1/message:stream': post: tags: - A2A summary: Stream Message Workflow description: 'Stream a message to an Agno Workflow (streaming). The Workflow is identified via the path parameter ''{id}''. Optional: Pass user ID via X-User-ID header (recommended) or ''userId'' in params.message.metadata. Returns real-time updates as newline-delimited JSON (NDJSON).' operationId: stream_message_workflow parameters: - name: id in: path required: true schema: type: string title: Id responses: '200': description: Streaming response with task updates content: application/json: schema: {} text/event-stream: example: |+ event: TaskStatusUpdateEvent data: {"jsonrpc":"2.0","id":"request-123","result":{"taskId":"task-456","status":"working"}} event: Message data: {"jsonrpc":"2.0","id":"request-123","result":{"messageId":"msg-1","role":"agent","parts":[{"kind":"text","text":"Response"}]}} '400': description: Invalid request '404': description: Workflow not found '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' /a2a/message/send: post: tags: - A2A summary: Send Message description: '[DEPRECATED] Send a message to an Agno Agent, Team, or Workflow. The Agent, Team or Workflow is identified via the ''agentId'' field in params.message or X-Agent-ID header. Optional: Pass user ID via X-User-ID header (recommended) or ''userId'' in params.message.metadata.' operationId: send_message responses: '200': description: Message sent successfully content: application/json: schema: $ref: '#/components/schemas/SendMessageSuccessResponse' example: jsonrpc: '2.0' id: request-123 result: task: id: task-456 context_id: context-789 status: completed history: - message_id: msg-1 role: agent parts: - kind: text text: Response from agent '400': description: Invalid request or unsupported method '404': description: 'Agent, Team, or Workflow not found' /a2a/message/stream: post: tags: - A2A summary: Stream Message description: '[DEPRECATED] Stream a message to an Agno Agent, Team, or Workflow. The Agent, Team or Workflow is identified via the ''agentId'' field in params.message or X-Agent-ID header. Optional: Pass user ID via X-User-ID header (recommended) or ''userId'' in params.message.metadata. Returns real-time updates as newline-delimited JSON (NDJSON).' operationId: stream_message responses: '200': description: Streaming response with task updates content: application/json: schema: {} text/event-stream: example: |+ event: TaskStatusUpdateEvent data: {"jsonrpc":"2.0","id":"request-123","result":{"taskId":"task-456","status":"working"}} event: Message data: {"jsonrpc":"2.0","id":"request-123","result":{"messageId":"msg-1","role":"agent","parts":[{"kind":"text","text":"Response"}]}} '400': description: Invalid request or unsupported method '404': description: 'Agent, Team, or Workflow not found' /sessions: get: tags: - Sessions summary: List Sessions description: 'Retrieve paginated list of sessions with filtering and sorting options. Supports filtering by session type (agent, team, workflow), component, user, and name. Sessions represent conversation histories and execution contexts.' operationId: get_sessions security: - HTTPBearer: [] parameters: - name: type in: query required: false schema: $ref: '#/components/schemas/SessionType' description: 'Type of sessions to retrieve (agent, team, or workflow)' default: agent description: 'Type of sessions to retrieve (agent, team, or workflow)' - name: component_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Filter sessions by component ID (agent/team/workflow ID) title: Component Id description: Filter sessions by component ID (agent/team/workflow ID) - name: user_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Filter sessions by user ID title: User Id description: Filter sessions by user ID - name: session_name in: query required: false schema: anyOf: - type: string - type: 'null' description: Filter sessions by name (partial match) title: Session Name description: Filter sessions by name (partial match) - name: limit in: query required: false schema: anyOf: - type: integer minimum: 1 - type: 'null' description: Number of sessions to return per page default: 20 title: Limit description: Number of sessions to return per page - name: page in: query required: false schema: anyOf: - type: integer minimum: 0 - type: 'null' description: Page number for pagination default: 1 title: Page description: Page number for pagination - name: sort_by in: query required: false schema: anyOf: - type: string - type: 'null' description: Field to sort sessions by default: created_at title: Sort By description: Field to sort sessions by - name: sort_order in: query required: false schema: anyOf: - $ref: '#/components/schemas/SortOrder' - type: 'null' description: Sort order (asc or desc) default: desc title: Sort Order description: Sort order (asc or desc) - name: db_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Database ID to query sessions from title: Db Id description: Database ID to query sessions from - name: table in: query required: false schema: anyOf: - type: string - type: 'null' description: The database table to use title: Table description: The database table to use responses: '200': description: Sessions retrieved successfully content: application/json: schema: $ref: '#/components/schemas/PaginatedResponse_SessionSchema_' example: session_example: summary: Example session response value: data: - session_id: 6f6cfbfd-9643-479a-ae47-b8f32eb4d710 session_name: What tools do you have? session_state: {} created_at: '2025-09-05T16:02:09Z' updated_at: '2025-09-05T16:02:09Z' '400': description: Invalid session type or filter parameters content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedResponse' '404': description: Not found content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' '422': description: Validation error in query parameters content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorResponse' post: tags: - Sessions summary: Create New Session description: 'Create a new empty session with optional configuration. Useful for pre-creating sessions with specific session_state, metadata, or other properties before running any agent/team/workflow interactions. The session can later be used by providing its session_id in run requests.' operationId: create_session security: - HTTPBearer: [] parameters: - name: type in: query required: false schema: $ref: '#/components/schemas/SessionType' description: 'Type of session to create (agent, team, or workflow)' default: agent description: 'Type of session to create (agent, team, or workflow)' - name: db_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Database ID to create session in title: Db Id description: Database ID to create session in requestBody: content: application/json: schema: $ref: '#/components/schemas/CreateSessionRequest' description: Session configuration data default: {} responses: '201': description: Session created successfully content: application/json: schema: anyOf: - $ref: '#/components/schemas/AgentSessionDetailSchema' - $ref: '#/components/schemas/TeamSessionDetailSchema' - $ref: '#/components/schemas/WorkflowSessionDetailSchema' title: Response Create Session examples: agent_session_example: summary: Example created agent session value: user_id: user-123 agent_session_id: new-session-id session_id: new-session-id session_name: New Session session_state: key: value metadata: key: value agent_id: agent-1 created_at: '2025-10-21T12:00:00Z' updated_at: '2025-10-21T12:00:00Z' '400': description: Invalid request parameters content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedResponse' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' '422': description: Validation error content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '500': description: Failed to create session content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorResponse' delete: tags: - Sessions summary: Delete Multiple Sessions description: Delete multiple sessions by their IDs in a single operation. This action cannot be undone and will permanently remove all specified sessions and their runs. operationId: delete_sessions security: - HTTPBearer: [] parameters: - name: user_id in: query required: false schema: anyOf: - type: string - type: 'null' description: User ID to scope deletion to title: User Id description: User ID to scope deletion to - name: db_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Database ID to use for deletion title: Db Id description: Database ID to use for deletion - name: table in: query required: false schema: anyOf: - type: string - type: 'null' description: Table to use for deletion title: Table description: Table to use for deletion requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/DeleteSessionRequest' responses: '204': description: Sessions deleted successfully '400': description: Invalid request - session IDs and types length mismatch content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedResponse' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '500': description: Failed to delete sessions content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorResponse' '/sessions/{session_id}': get: tags: - Sessions summary: Get Session by ID description: 'Retrieve detailed information about a specific session including metadata, configuration, and run history. Response schema varies based on session type (agent, team, or workflow).' operationId: get_session_by_id security: - HTTPBearer: [] parameters: - name: session_id in: path required: true schema: type: string description: Session ID to retrieve title: Session Id description: Session ID to retrieve - name: type in: query required: false schema: $ref: '#/components/schemas/SessionType' description: 'Session type (agent, team, or workflow)' default: agent description: 'Session type (agent, team, or workflow)' - name: user_id in: query required: false schema: anyOf: - type: string - type: 'null' description: User ID to query session from title: User Id description: User ID to query session from - name: db_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Database ID to query session from title: Db Id description: Database ID to query session from - name: table in: query required: false schema: anyOf: - type: string - type: 'null' description: Table to query session from title: Table description: Table to query session from responses: '200': description: Session details retrieved successfully content: application/json: schema: anyOf: - $ref: '#/components/schemas/AgentSessionDetailSchema' - $ref: '#/components/schemas/TeamSessionDetailSchema' - $ref: '#/components/schemas/WorkflowSessionDetailSchema' title: Response Get Session By Id examples: agent_session_example: summary: Example agent session response value: user_id: '123' agent_session_id: 6f6cfbfd-9643-479a-ae47-b8f32eb4d710 session_id: 6f6cfbfd-9643-479a-ae47-b8f32eb4d710 session_name: What tools do you have? session_summary: summary: The user and assistant engaged in a conversation about the tools the agent has available. updated_at: '2025-09-05T18:02:12.269392' session_state: {} agent_id: basic-agent total_tokens: 160 agent_data: name: Basic Agent agent_id: basic-agent model: provider: OpenAI name: OpenAIChat id: gpt-4o metrics: input_tokens: 134 output_tokens: 26 total_tokens: 160 audio_input_tokens: 0 audio_output_tokens: 0 audio_total_tokens: 0 cache_read_tokens: 0 cache_write_tokens: 0 reasoning_tokens: 0 chat_history: - content: |- - Use markdown to format your answers. - The current time is 2025-09-05 18:02:09.171627. You have access to memories from previous interactions with the user that you can use: - User really likes Digimon and Japan. - User really likes Japan. - User likes coffee. Note: this information is from previous interactions and may be updated in this conversation. You should always prefer information from this conversation over the past memories. from_history: false stop_after_tool_call: false role: system created_at: 1757088129 - content: What tools do you have? from_history: false stop_after_tool_call: false role: user created_at: 1757088129 - content: 'I don''t have access to external tools or the internet. However, I can assist you with a wide range of topics by providing information, answering questions, and offering suggestions based on the knowledge I''ve been trained on. If there''s anything specific you need help with, feel free to ask!' from_history: false stop_after_tool_call: false role: assistant metrics: input_tokens: 134 output_tokens: 26 total_tokens: 160 created_at: 1757088129 created_at: '2025-09-05T16:02:09Z' updated_at: '2025-09-05T16:02:09Z' '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedResponse' '404': description: Session not found content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' '422': description: Invalid session type content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorResponse' delete: tags: - Sessions summary: Delete Session description: Permanently delete a specific session and all its associated runs. This action cannot be undone and will remove all conversation history. operationId: delete_session security: - HTTPBearer: [] parameters: - name: session_id in: path required: true schema: type: string description: Session ID to delete title: Session Id description: Session ID to delete - name: user_id in: query required: false schema: anyOf: - type: string - type: 'null' description: User ID to scope deletion to title: User Id description: User ID to scope deletion to - name: db_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Database ID to use for deletion title: Db Id description: Database ID to use for deletion - name: table in: query required: false schema: anyOf: - type: string - type: 'null' description: Table to use for deletion title: Table description: Table to use for deletion responses: '204': description: Successful Response '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedResponse' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '500': description: Failed to delete session content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorResponse' patch: tags: - Sessions summary: Update Session description: 'Update session properties such as session_name, session_state, metadata, or summary. Use this endpoint to modify the session name, update state, add metadata, or update the session summary.' operationId: update_session security: - HTTPBearer: [] parameters: - name: session_id in: path required: true schema: type: string description: Session ID to update title: Session Id description: Session ID to update - name: type in: query required: false schema: $ref: '#/components/schemas/SessionType' description: 'Session type (agent, team, or workflow)' default: agent description: 'Session type (agent, team, or workflow)' - name: user_id in: query required: false schema: anyOf: - type: string - type: 'null' description: User ID title: User Id description: User ID - name: db_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Database ID to use for update operation title: Db Id description: Database ID to use for update operation - name: table in: query required: false schema: anyOf: - type: string - type: 'null' description: Table to use for update operation title: Table description: Table to use for update operation requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/UpdateSessionRequest' description: Session update data responses: '200': description: Session updated successfully content: application/json: schema: anyOf: - $ref: '#/components/schemas/AgentSessionDetailSchema' - $ref: '#/components/schemas/TeamSessionDetailSchema' - $ref: '#/components/schemas/WorkflowSessionDetailSchema' title: Response Update Session examples: update_summary: summary: Update session summary value: summary: summary: The user discussed project planning with the agent. updated_at: '2025-10-21T14:30:00Z' update_metadata: summary: Update session metadata value: metadata: tags: - planning - project priority: high update_session_name: summary: Update session name value: session_name: Updated Session Name update_session_state: summary: Update session state value: session_state: step: completed context: Project planning finished progress: 100 '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedResponse' '404': description: Session not found content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' '422': description: Invalid request content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '500': description: Failed to update session content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorResponse' '/sessions/{session_id}/runs': get: tags: - Sessions summary: Get Session Runs description: Retrieve all runs (executions) for a specific session with optional timestamp filtering. Runs represent individual interactions or executions within a session. Response schema varies based on session type. operationId: get_session_runs security: - HTTPBearer: [] parameters: - name: session_id in: path required: true schema: type: string description: Session ID to get runs from title: Session Id description: Session ID to get runs from - name: type in: query required: false schema: $ref: '#/components/schemas/SessionType' description: 'Session type (agent, team, or workflow)' default: agent description: 'Session type (agent, team, or workflow)' - name: user_id in: query required: false schema: anyOf: - type: string - type: 'null' description: User ID to query runs from title: User Id description: User ID to query runs from - name: created_after in: query required: false schema: anyOf: - type: integer - type: 'null' description: Filter runs created after this Unix timestamp (epoch time in seconds) title: Created After description: Filter runs created after this Unix timestamp (epoch time in seconds) - name: created_before in: query required: false schema: anyOf: - type: integer - type: 'null' description: Filter runs created before this Unix timestamp (epoch time in seconds) title: Created Before description: Filter runs created before this Unix timestamp (epoch time in seconds) - name: db_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Database ID to query runs from title: Db Id description: Database ID to query runs from - name: table in: query required: false schema: anyOf: - type: string - type: 'null' description: Table to query runs from title: Table description: Table to query runs from responses: '200': description: Session runs retrieved successfully content: application/json: schema: type: array items: anyOf: - $ref: '#/components/schemas/RunSchema' - $ref: '#/components/schemas/TeamRunSchema' - $ref: '#/components/schemas/WorkflowRunSchema' title: Response Get Session Runs examples: completed_run: summary: Example completed run value: run_id: fcdf50f0-7c32-4593-b2ef-68a558774340 parent_run_id: 80056af0-c7a5-4d69-b6a2-c3eba9f040e0 agent_id: basic-agent user_id: '' run_input: Which tools do you have access to? content: 'I don''t have access to external tools or the internet. However, I can assist you with a wide range of topics by providing information, answering questions, and offering suggestions based on the knowledge I''ve been trained on. If there''s anything specific you need help with, feel free to ask!' run_response_format: text reasoning_content: '' metrics: input_tokens: 82 output_tokens: 56 total_tokens: 138 time_to_first_token: 0.047505500027909875 duration: 4.840060166025069 messages: - content: |- - Use markdown to format your answers. - The current time is 2025-09-08 17:52:10.101003. You have the capability to retain memories from previous interactions with the user, but have not had any interactions with the user yet. from_history: false stop_after_tool_call: false role: system created_at: 1757346730 - content: Which tools do you have access to? from_history: false stop_after_tool_call: false role: user created_at: 1757346730 - content: 'I don''t have access to external tools or the internet. However, I can assist you with a wide range of topics by providing information, answering questions, and offering suggestions based on the knowledge I''ve been trained on. If there''s anything specific you need help with, feel free to ask!' from_history: false stop_after_tool_call: false role: assistant metrics: input_tokens: 82 output_tokens: 56 total_tokens: 138 created_at: 1757346730 events: - created_at: 1757346730 event: RunStarted agent_id: basic-agent agent_name: Basic Agent run_id: fcdf50f0-7c32-4593-b2ef-68a558774340 session_id: 80056af0-c7a5-4d69-b6a2-c3eba9f040e0 model: gpt-4o model_provider: OpenAI - created_at: 1757346733 event: MemoryUpdateStarted agent_id: basic-agent agent_name: Basic Agent run_id: fcdf50f0-7c32-4593-b2ef-68a558774340 session_id: 80056af0-c7a5-4d69-b6a2-c3eba9f040e0 - created_at: 1757346734 event: MemoryUpdateCompleted agent_id: basic-agent agent_name: Basic Agent run_id: fcdf50f0-7c32-4593-b2ef-68a558774340 session_id: 80056af0-c7a5-4d69-b6a2-c3eba9f040e0 - created_at: 1757346734 event: RunCompleted agent_id: basic-agent agent_name: Basic Agent run_id: fcdf50f0-7c32-4593-b2ef-68a558774340 session_id: 80056af0-c7a5-4d69-b6a2-c3eba9f040e0 content: 'I don''t have access to external tools or the internet. However, I can assist you with a wide range of topics by providing information, answering questions, and offering suggestions based on the knowledge I''ve been trained on. If there''s anything specific you need help with, feel free to ask!' content_type: str metrics: input_tokens: 82 output_tokens: 56 total_tokens: 138 time_to_first_token: 0.047505500027909875 duration: 4.840060166025069 created_at: '2025-09-08T15:52:10Z' '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedResponse' '404': description: Session not found or has no runs content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' '422': description: Invalid session type content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorResponse' '/sessions/{session_id}/runs/{run_id}': get: tags: - Sessions summary: Get Run by ID description: 'Retrieve a specific run by its ID from a session. Response schema varies based on the run type (agent run, team run, or workflow run).' operationId: get_session_run security: - HTTPBearer: [] parameters: - name: session_id in: path required: true schema: type: string description: Session ID to get run from title: Session Id description: Session ID to get run from - name: run_id in: path required: true schema: type: string description: Run ID to retrieve title: Run Id description: Run ID to retrieve - name: type in: query required: false schema: $ref: '#/components/schemas/SessionType' description: 'Session type (agent, team, or workflow)' default: agent description: 'Session type (agent, team, or workflow)' - name: user_id in: query required: false schema: anyOf: - type: string - type: 'null' description: User ID to query run from title: User Id description: User ID to query run from - name: db_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Database ID to query run from title: Db Id description: Database ID to query run from - name: table in: query required: false schema: anyOf: - type: string - type: 'null' description: Table to query run from title: Table description: Table to query run from responses: '200': description: Run retrieved successfully content: application/json: schema: anyOf: - $ref: '#/components/schemas/RunSchema' - $ref: '#/components/schemas/TeamRunSchema' - $ref: '#/components/schemas/WorkflowRunSchema' title: Response Get Session Run examples: agent_run: summary: Example agent run value: run_id: fcdf50f0-7c32-4593-b2ef-68a558774340 parent_run_id: 80056af0-c7a5-4d69-b6a2-c3eba9f040e0 agent_id: basic-agent user_id: user_123 run_input: Which tools do you have access to? content: I don't have access to external tools. created_at: 1728499200 '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedResponse' '404': description: Session or run not found content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' '422': description: Invalid session type content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorResponse' '/sessions/{session_id}/rename': post: tags: - Sessions summary: Rename Session description: Update the name of an existing session. Useful for organizing and categorizing sessions with meaningful names for better identification and management. operationId: rename_session security: - HTTPBearer: [] parameters: - name: session_id in: path required: true schema: type: string description: Session ID to rename title: Session Id description: Session ID to rename - name: type in: query required: false schema: $ref: '#/components/schemas/SessionType' description: 'Session type (agent, team, or workflow)' default: agent description: 'Session type (agent, team, or workflow)' - name: user_id in: query required: false schema: anyOf: - type: string - type: 'null' description: User ID to scope rename to title: User Id description: User ID to scope rename to - name: db_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Database ID to use for rename operation title: Db Id description: Database ID to use for rename operation - name: table in: query required: false schema: anyOf: - type: string - type: 'null' description: Table to use for rename operation title: Table description: Table to use for rename operation requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/Body_rename_session' responses: '200': description: Session renamed successfully content: application/json: schema: anyOf: - $ref: '#/components/schemas/AgentSessionDetailSchema' - $ref: '#/components/schemas/TeamSessionDetailSchema' - $ref: '#/components/schemas/WorkflowSessionDetailSchema' title: Response Rename Session examples: agent_session_example: summary: Example agent session response value: user_id: '123' agent_session_id: 6f6cfbfd-9643-479a-ae47-b8f32eb4d710 session_id: 6f6cfbfd-9643-479a-ae47-b8f32eb4d710 session_name: What tools do you have? session_summary: summary: The user and assistant engaged in a conversation about the tools the agent has available. updated_at: '2025-09-05T18:02:12.269392' session_state: {} agent_id: basic-agent total_tokens: 160 agent_data: name: Basic Agent agent_id: basic-agent model: provider: OpenAI name: OpenAIChat id: gpt-4o metrics: input_tokens: 134 output_tokens: 26 total_tokens: 160 audio_input_tokens: 0 audio_output_tokens: 0 audio_total_tokens: 0 cache_read_tokens: 0 cache_write_tokens: 0 reasoning_tokens: 0 chat_history: - content: |- - Use markdown to format your answers. - The current time is 2025-09-05 18:02:09.171627. You have access to memories from previous interactions with the user that you can use: - User really likes Digimon and Japan. - User really likes Japan. - User likes coffee. Note: this information is from previous interactions and may be updated in this conversation. You should always prefer information from this conversation over the past memories. from_history: false stop_after_tool_call: false role: system created_at: 1757088129 - content: What tools do you have? from_history: false stop_after_tool_call: false role: user created_at: 1757088129 - content: 'I don''t have access to external tools or the internet. However, I can assist you with a wide range of topics by providing information, answering questions, and offering suggestions based on the knowledge I''ve been trained on. If there''s anything specific you need help with, feel free to ask!' from_history: false stop_after_tool_call: false role: assistant metrics: input_tokens: 134 output_tokens: 26 total_tokens: 160 created_at: 1757088129 created_at: '2025-09-05T16:02:09Z' updated_at: '2025-09-05T16:02:09Z' '400': description: Invalid session name content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedResponse' '404': description: Session not found content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' '422': description: Invalid session type or validation error content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorResponse' /memories: post: tags: - Memory summary: Create Memory description: Create a new user memory with content and associated topics. Memories are used to store contextual information for users across conversations. operationId: create_memory security: - HTTPBearer: [] parameters: - name: db_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Database ID to use for memory storage title: Db Id description: Database ID to use for memory storage - name: table in: query required: false schema: anyOf: - type: string - type: 'null' description: Table to use for memory storage title: Table description: Table to use for memory storage requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/UserMemoryCreateSchema' responses: '200': description: Memory created successfully content: application/json: schema: $ref: '#/components/schemas/UserMemorySchema' example: memory_id: mem-123 memory: User prefers technical explanations with code examples topics: - preferences - communication_style - technical user_id: user-456 created_at: '2024-01-15T10:30:00Z' updated_at: '2024-01-15T10:30:00Z' '400': description: Invalid request data content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedResponse' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' '422': description: Validation error in payload content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '500': description: Failed to create memory content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorResponse' delete: tags: - Memory summary: Delete Multiple Memories description: Delete multiple user memories by their IDs in a single operation. This action cannot be undone and all specified memories will be permanently removed. operationId: delete_memories security: - HTTPBearer: [] parameters: - name: db_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Database ID to use for deletion title: Db Id description: Database ID to use for deletion - name: table in: query required: false schema: anyOf: - type: string - type: 'null' description: Table to use for deletion title: Table description: Table to use for deletion requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/DeleteMemoriesRequest' responses: '204': description: Memories deleted successfully '400': description: Invalid request - empty memory_ids list content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedResponse' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '500': description: Failed to delete memories content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorResponse' get: tags: - Memory summary: List Memories description: 'Retrieve paginated list of user memories with filtering and search capabilities. Filter by user, agent, team, topics, or search within memory content.' operationId: get_memories security: - HTTPBearer: [] parameters: - name: user_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Filter memories by user ID title: User Id description: Filter memories by user ID - name: agent_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Filter memories by agent ID title: Agent Id description: Filter memories by agent ID - name: team_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Filter memories by team ID title: Team Id description: Filter memories by team ID - name: search_content in: query required: false schema: anyOf: - type: string - type: 'null' description: Fuzzy search within memory content title: Search Content description: Fuzzy search within memory content - name: limit in: query required: false schema: anyOf: - type: integer minimum: 1 - type: 'null' description: Number of memories to return per page default: 20 title: Limit description: Number of memories to return per page - name: page in: query required: false schema: anyOf: - type: integer minimum: 0 - type: 'null' description: Page number for pagination default: 1 title: Page description: Page number for pagination - name: sort_by in: query required: false schema: anyOf: - type: string - type: 'null' description: Field to sort memories by default: updated_at title: Sort By description: Field to sort memories by - name: sort_order in: query required: false schema: anyOf: - $ref: '#/components/schemas/SortOrder' - type: 'null' description: Sort order (asc or desc) default: desc title: Sort Order description: Sort order (asc or desc) - name: db_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Database ID to query memories from title: Db Id description: Database ID to query memories from - name: table in: query required: false schema: anyOf: - type: string - type: 'null' description: The database table to use title: Table description: The database table to use - name: topics in: query required: false schema: anyOf: - type: array items: type: string - type: 'null' description: Comma-separated list of topics to filter by examples: - 'preferences,technical,communication_style' title: Topics description: Comma-separated list of topics to filter by responses: '200': description: Memories retrieved successfully content: application/json: schema: $ref: '#/components/schemas/PaginatedResponse_UserMemorySchema_' example: data: - memory_id: f9361a69-2997-40c7-ae4e-a5861d434047 memory: User likes coffee. topics: - preferences user_id: '123' updated_at: '2025-09-01T07:53:17Z' '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedResponse' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorResponse' '/memories/{memory_id}': delete: tags: - Memory summary: Delete Memory description: Permanently delete a specific user memory. This action cannot be undone. operationId: delete_memory security: - HTTPBearer: [] parameters: - name: memory_id in: path required: true schema: type: string description: Memory ID to delete title: Memory Id description: Memory ID to delete - name: user_id in: query required: false schema: anyOf: - type: string - type: 'null' description: User ID to delete memory for title: User Id description: User ID to delete memory for - name: db_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Database ID to use for deletion title: Db Id description: Database ID to use for deletion - name: table in: query required: false schema: anyOf: - type: string - type: 'null' description: Table to use for deletion title: Table description: Table to use for deletion responses: '204': description: Memory deleted successfully '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedResponse' '404': description: Memory not found content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '500': description: Failed to delete memory content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorResponse' get: tags: - Memory summary: Get Memory by ID description: Retrieve detailed information about a specific user memory by its ID. operationId: get_memory security: - HTTPBearer: [] parameters: - name: memory_id in: path required: true schema: type: string description: Memory ID to retrieve title: Memory Id description: Memory ID to retrieve - name: user_id in: query required: false schema: anyOf: - type: string - type: 'null' description: User ID to query memory for title: User Id description: User ID to query memory for - name: db_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Database ID to query memory from title: Db Id description: Database ID to query memory from - name: table in: query required: false schema: anyOf: - type: string - type: 'null' description: Table to query memory from title: Table description: Table to query memory from responses: '200': description: Memory retrieved successfully content: application/json: schema: $ref: '#/components/schemas/UserMemorySchema' example: memory_id: f9361a69-2997-40c7-ae4e-a5861d434047 memory: User likes coffee. topics: - preferences user_id: '123' updated_at: '2025-09-01T07:53:17Z' '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedResponse' '404': description: Memory not found content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorResponse' patch: tags: - Memory summary: Update Memory description: Update an existing user memory's content and topics. Replaces the entire memory content and topic list with the provided values. operationId: update_memory security: - HTTPBearer: [] parameters: - name: memory_id in: path required: true schema: type: string description: Memory ID to update title: Memory Id description: Memory ID to update - name: db_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Database ID to use for update title: Db Id description: Database ID to use for update - name: table in: query required: false schema: anyOf: - type: string - type: 'null' description: Table to use for update title: Table description: Table to use for update requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/UserMemoryCreateSchema' responses: '200': description: Memory updated successfully content: application/json: schema: $ref: '#/components/schemas/UserMemorySchema' example: memory_id: f9361a69-2997-40c7-ae4e-a5861d434047 memory: User likes coffee. topics: - preferences user_id: '123' updated_at: '2025-09-01T07:53:17Z' '400': description: Invalid request data content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedResponse' '404': description: Memory not found content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' '422': description: Validation error in payload content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '500': description: Failed to update memory content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorResponse' /memory_topics: get: tags: - Memory summary: Get Memory Topics description: Retrieve all unique topics associated with memories in the system. Useful for filtering and categorizing memories by topic. operationId: get_memory_topics security: - HTTPBearer: [] parameters: - name: user_id in: query required: false schema: anyOf: - type: string - type: 'null' description: User ID to filter topics for title: User Id description: User ID to filter topics for - name: db_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Database ID to query topics from title: Db Id description: Database ID to query topics from - name: table in: query required: false schema: anyOf: - type: string - type: 'null' description: Table to query topics from title: Table description: Table to query topics from responses: '200': description: Memory topics retrieved successfully content: application/json: schema: type: array items: type: string title: Response Get Memory Topics example: - preferences - communication_style - technical - industry - compliance - code_examples - requirements - healthcare - finance '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedResponse' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorResponse' /user_memory_stats: get: tags: - Memory summary: Get User Memory Statistics description: Retrieve paginated statistics about memory usage by user. Provides insights into user engagement and memory distribution across users. operationId: get_user_memory_stats security: - HTTPBearer: [] parameters: - name: limit in: query required: false schema: anyOf: - type: integer minimum: 1 - type: 'null' description: Number of user statistics to return per page default: 20 title: Limit description: Number of user statistics to return per page - name: page in: query required: false schema: anyOf: - type: integer minimum: 0 - type: 'null' description: Page number for pagination default: 1 title: Page description: Page number for pagination - name: user_id in: query required: false schema: anyOf: - type: string - type: 'null' description: User ID to filter statistics for title: User Id description: User ID to filter statistics for - name: db_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Database ID to query statistics from title: Db Id description: Database ID to query statistics from - name: table in: query required: false schema: anyOf: - type: string - type: 'null' description: Table to query statistics from title: Table description: Table to query statistics from responses: '200': description: User memory statistics retrieved successfully content: application/json: schema: $ref: '#/components/schemas/PaginatedResponse_UserStatsSchema_' example: data: - user_id: '123' total_memories: 3 last_memory_updated_at: '2025-09-01T07:53:17Z' '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedResponse' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '500': description: Failed to retrieve user statistics content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorResponse' /optimize-memories: post: tags: - Memory summary: Optimize User Memories description: 'Optimize all memories for a given user using the default summarize strategy. This operation combines all memories into a single comprehensive summary, achieving maximum token reduction while preserving all key information. To use a custom model, specify the model parameter in ''provider:model_id'' format (e.g., ''openai:gpt-4o-mini'', ''anthropic:claude-3-5-sonnet-20241022''). If not specified, uses MemoryManager''s default model (gpt-4o). Set apply=false to preview optimization results without saving to database.' operationId: optimize_memories security: - HTTPBearer: [] parameters: - name: db_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Database ID to use for optimization title: Db Id description: Database ID to use for optimization - name: table in: query required: false schema: anyOf: - type: string - type: 'null' description: Table to use for optimization title: Table description: Table to use for optimization requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/OptimizeMemoriesRequest' responses: '200': description: Memories optimized successfully content: application/json: schema: $ref: '#/components/schemas/OptimizeMemoriesResponse' example: memories: - memory_id: f9361a69-2997-40c7-ae4e-a5861d434047 memory: 'User has a 3-year-old golden retriever named Max who loves fetch and walks. Lives in San Francisco''s Mission district, works as a product manager in tech. Enjoys hiking Bay Area trails, trying new restaurants (especially Japanese, Thai, Mexican), and learning piano for 1.5 years.' topics: - pets - location - work - hobbies - food_preferences user_id: user2 updated_at: '2025-11-18T10:30:00Z' memories_before: 4 memories_after: 1 tokens_before: 450 tokens_after: 180 tokens_saved: 270 reduction_percentage: 60 '400': description: Bad request - User ID is required or invalid model string format content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedResponse' '404': description: No memories found for user content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '500': description: Failed to optimize memories content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorResponse' /eval-runs: get: tags: - Evals summary: List Evaluation Runs description: 'Retrieve paginated evaluation runs with filtering and sorting options. Filter by agent, team, workflow, model, or evaluation type.' operationId: get_eval_runs security: - HTTPBearer: [] parameters: - name: agent_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Agent ID title: Agent Id description: Agent ID - name: team_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Team ID title: Team Id description: Team ID - name: workflow_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Workflow ID title: Workflow Id description: Workflow ID - name: model_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Model ID title: Model Id description: Model ID - name: type in: query required: false schema: anyOf: - $ref: '#/components/schemas/EvalFilterType' - type: 'null' description: Filter type title: Type description: Filter type - name: limit in: query required: false schema: anyOf: - type: integer minimum: 1 - type: 'null' description: Number of eval runs to return default: 20 title: Limit description: Number of eval runs to return - name: page in: query required: false schema: anyOf: - type: integer minimum: 0 - type: 'null' description: Page number default: 1 title: Page description: Page number - name: sort_by in: query required: false schema: anyOf: - type: string - type: 'null' description: Field to sort by default: created_at title: Sort By description: Field to sort by - name: sort_order in: query required: false schema: anyOf: - $ref: '#/components/schemas/SortOrder' - type: 'null' description: Sort order (asc or desc) default: desc title: Sort Order description: Sort order (asc or desc) - name: db_id in: query required: false schema: anyOf: - type: string - type: 'null' description: The ID of the database to use title: Db Id description: The ID of the database to use - name: table in: query required: false schema: anyOf: - type: string - type: 'null' description: The database table to use title: Table description: The database table to use - name: eval_types in: query required: false schema: anyOf: - type: string - type: 'null' description: 'Comma-separated eval types (accuracy,agent_as_judge,performance,reliability)' examples: - 'accuracy,agent_as_judge,performance,reliability' title: Eval Types description: 'Comma-separated eval types (accuracy,agent_as_judge,performance,reliability)' responses: '200': description: Evaluation runs retrieved successfully content: application/json: schema: $ref: '#/components/schemas/PaginatedResponse_EvalSchema_' example: data: - id: a03fa2f4-900d-482d-afe0-470d4cd8d1f4 agent_id: basic-agent model_id: gpt-4o model_provider: OpenAI name: 'Test ' eval_type: reliability eval_data: eval_status: PASSED failed_tool_calls: [] passed_tool_calls: - multiply eval_input: expected_tool_calls: - multiply created_at: '2025-08-27T15:41:59Z' updated_at: '2025-08-27T15:41:59Z' '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedResponse' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorResponse' delete: tags: - Evals summary: Delete Evaluation Runs description: Delete multiple evaluation runs by their IDs. This action cannot be undone. operationId: delete_eval_runs security: - HTTPBearer: [] parameters: - name: db_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Database ID to use for deletion title: Db Id description: Database ID to use for deletion - name: table in: query required: false schema: anyOf: - type: string - type: 'null' description: Table to use for deletion title: Table description: Table to use for deletion requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/DeleteEvalRunsRequest' responses: '204': description: Successful Response '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedResponse' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '500': description: Failed to delete evaluation runs content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorResponse' post: tags: - Evals summary: Execute Evaluation description: 'Run evaluation tests on agents or teams. Supports accuracy, agent-as-judge, performance, and reliability evaluations. Requires either agent_id or team_id, but not both.' operationId: run_eval security: - HTTPBearer: [] parameters: - name: db_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Database ID to use for evaluation title: Db Id description: Database ID to use for evaluation - name: table in: query required: false schema: anyOf: - type: string - type: 'null' description: Table to use for evaluation title: Table description: Table to use for evaluation requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/EvalRunInput' responses: '200': description: Evaluation executed successfully content: application/json: schema: $ref: '#/components/schemas/EvalSchema' example: id: f2b2d72f-e9e2-4f0e-8810-0a7e1ff58614 agent_id: basic-agent model_id: gpt-4o model_provider: OpenAI eval_type: reliability eval_data: eval_status: PASSED failed_tool_calls: [] passed_tool_calls: - multiply created_at: '2025-08-27T15:41:59Z' updated_at: '2025-08-27T15:41:59Z' '400': description: Invalid request - provide either agent_id or team_id content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedResponse' '404': description: Agent or team not found content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorResponse' '/eval-runs/{eval_run_id}': get: tags: - Evals summary: Get Evaluation Run description: Retrieve detailed results and metrics for a specific evaluation run. operationId: get_eval_run security: - HTTPBearer: [] parameters: - name: eval_run_id in: path required: true schema: type: string title: Eval Run Id - name: db_id in: query required: false schema: anyOf: - type: string - type: 'null' description: The ID of the database to use title: Db Id description: The ID of the database to use - name: table in: query required: false schema: anyOf: - type: string - type: 'null' description: Table to query eval run from title: Table description: Table to query eval run from responses: '200': description: Evaluation run details retrieved successfully content: application/json: schema: $ref: '#/components/schemas/EvalSchema' example: id: a03fa2f4-900d-482d-afe0-470d4cd8d1f4 agent_id: basic-agent model_id: gpt-4o model_provider: OpenAI name: 'Test ' eval_type: reliability eval_data: eval_status: PASSED failed_tool_calls: [] passed_tool_calls: - multiply eval_input: expected_tool_calls: - multiply created_at: '2025-08-27T15:41:59Z' updated_at: '2025-08-27T15:41:59Z' '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedResponse' '404': description: Evaluation run not found content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorResponse' patch: tags: - Evals summary: Update Evaluation Run description: Update the name or other properties of an existing evaluation run. operationId: update_eval_run security: - HTTPBearer: [] parameters: - name: eval_run_id in: path required: true schema: type: string title: Eval Run Id - name: db_id in: query required: false schema: anyOf: - type: string - type: 'null' description: The ID of the database to use title: Db Id description: The ID of the database to use - name: table in: query required: false schema: anyOf: - type: string - type: 'null' description: Table to use for rename operation title: Table description: Table to use for rename operation requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/UpdateEvalRunRequest' responses: '200': description: Evaluation run updated successfully content: application/json: schema: $ref: '#/components/schemas/EvalSchema' example: id: a03fa2f4-900d-482d-afe0-470d4cd8d1f4 agent_id: basic-agent model_id: gpt-4o model_provider: OpenAI name: 'Test ' eval_type: reliability eval_data: eval_status: PASSED failed_tool_calls: [] passed_tool_calls: - multiply eval_input: expected_tool_calls: - multiply created_at: '2025-08-27T15:41:59Z' updated_at: '2025-08-27T15:41:59Z' '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedResponse' '404': description: Evaluation run not found content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '500': description: Failed to update evaluation run content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorResponse' /metrics: get: tags: - Metrics summary: Get AgentOS Metrics description: 'Retrieve AgentOS metrics and analytics data for a specified date range. If no date range is specified, returns all available metrics.' operationId: get_metrics security: - HTTPBearer: [] parameters: - name: starting_date in: query required: false schema: anyOf: - type: string format: date - type: 'null' description: Starting date for metrics range (YYYY-MM-DD format) title: Starting Date description: Starting date for metrics range (YYYY-MM-DD format) - name: ending_date in: query required: false schema: anyOf: - type: string format: date - type: 'null' description: Ending date for metrics range (YYYY-MM-DD format) title: Ending Date description: Ending date for metrics range (YYYY-MM-DD format) - name: db_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Database ID to query metrics from title: Db Id description: Database ID to query metrics from - name: table in: query required: false schema: anyOf: - type: string - type: 'null' description: The database table to use title: Table description: The database table to use responses: '200': description: Metrics retrieved successfully content: application/json: schema: $ref: '#/components/schemas/MetricsResponse' example: metrics: - id: 7bf39658-a00a-484c-8a28-67fd8a9ddb2a agent_runs_count: 5 agent_sessions_count: 5 team_runs_count: 0 team_sessions_count: 0 workflow_runs_count: 0 workflow_sessions_count: 0 users_count: 1 token_metrics: input_tokens: 448 output_tokens: 148 total_tokens: 596 audio_tokens: 0 input_audio_tokens: 0 output_audio_tokens: 0 cached_tokens: 0 cache_write_tokens: 0 reasoning_tokens: 0 model_metrics: - model_id: gpt-4o model_provider: OpenAI count: 5 date: '2025-07-31T00:00:00Z' created_at: '2025-07-31T12:38:52Z' updated_at: '2025-07-31T12:49:01Z' '400': description: Invalid date range parameters content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedResponse' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '500': description: Failed to retrieve metrics content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorResponse' /metrics/refresh: post: tags: - Metrics summary: Refresh Metrics description: Manually trigger recalculation of system metrics from raw data. This operation analyzes system activity logs and regenerates aggregated metrics. Useful for ensuring metrics are up-to-date or after system maintenance. operationId: refresh_metrics security: - HTTPBearer: [] parameters: - name: db_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Database ID to use for metrics calculation title: Db Id description: Database ID to use for metrics calculation - name: table in: query required: false schema: anyOf: - type: string - type: 'null' description: Table to use for metrics calculation title: Table description: Table to use for metrics calculation responses: '200': description: Metrics refreshed successfully content: application/json: schema: type: array items: $ref: '#/components/schemas/DayAggregatedMetrics' title: Response Refresh Metrics example: - id: e77c9531-818b-47a5-99cd-59fed61e5403 agent_runs_count: 2 agent_sessions_count: 2 team_runs_count: 0 team_sessions_count: 0 workflow_runs_count: 0 workflow_sessions_count: 0 users_count: 1 token_metrics: input_tokens: 256 output_tokens: 441 total_tokens: 697 audio_total_tokens: 0 audio_input_tokens: 0 audio_output_tokens: 0 cache_read_tokens: 0 cache_write_tokens: 0 reasoning_tokens: 0 model_metrics: - model_id: gpt-4o model_provider: OpenAI count: 2 date: '2025-08-12T00:00:00Z' created_at: '2025-08-12T08:01:47Z' updated_at: '2025-08-12T08:01:47Z' '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedResponse' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '500': description: Failed to refresh metrics content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorResponse' /knowledge/content: post: tags: - Knowledge summary: Upload Content description: 'Upload content to the knowledge base. Supports file uploads, text content, or URLs. Content is processed asynchronously in the background. Supports custom readers and chunking strategies.' operationId: upload_content security: - HTTPBearer: [] parameters: - name: db_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Database ID to use for content storage title: Db Id description: Database ID to use for content storage - name: knowledge_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Knowledge base ID to upload to title: Knowledge Id description: Knowledge base ID to upload to requestBody: content: multipart/form-data: schema: $ref: '#/components/schemas/Body_upload_content' responses: '202': description: Content upload accepted for processing content: application/json: schema: $ref: '#/components/schemas/ContentResponseSchema' example: id: content-123 name: example-document.pdf description: Sample document for processing metadata: category: documentation priority: high status: processing '400': description: Invalid request - malformed metadata or missing content content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedResponse' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' '422': description: Validation error in form data content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorResponse' get: tags: - Knowledge summary: List Content description: 'Retrieve paginated list of all content in the knowledge base with filtering and sorting options. Filter by status, content type, or metadata properties.' operationId: get_content security: - HTTPBearer: [] parameters: - name: limit in: query required: false schema: anyOf: - type: integer minimum: 1 - type: 'null' description: Number of content entries to return default: 20 title: Limit description: Number of content entries to return - name: page in: query required: false schema: anyOf: - type: integer minimum: 0 - type: 'null' description: Page number default: 1 title: Page description: Page number - name: sort_by in: query required: false schema: anyOf: - type: string - type: 'null' description: Field to sort by default: created_at title: Sort By description: Field to sort by - name: sort_order in: query required: false schema: anyOf: - $ref: '#/components/schemas/SortOrder' - type: 'null' description: Sort order (asc or desc) default: desc title: Sort Order description: Sort order (asc or desc) - name: db_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Database ID to use title: Db Id description: Database ID to use - name: knowledge_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Knowledge base ID to use title: Knowledge Id description: Knowledge base ID to use responses: '200': description: Content list retrieved successfully content: application/json: schema: $ref: '#/components/schemas/PaginatedResponse_ContentResponseSchema_' example: data: - id: 3c2fc685-d451-4d47-b0c0-b9a544c672b7 name: example.pdf description: '' type: application/pdf size: '251261' metadata: {} access_count: 1 status: completed status_message: '' created_at: '2025-09-08T15:22:53Z' updated_at: '2025-09-08T15:22:54Z' meta: page: 1 limit: 20 total_pages: 1 total_count: 2 '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedResponse' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorResponse' delete: tags: - Knowledge summary: Delete All Content description: Permanently remove all content from the knowledge base. This is a destructive operation that cannot be undone. Use with extreme caution. operationId: delete_all_content security: - HTTPBearer: [] parameters: - name: db_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Database ID to use title: Db Id description: Database ID to use - name: knowledge_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Knowledge base ID to use title: Knowledge Id description: Knowledge base ID to use responses: '200': description: Successful Response content: application/json: schema: {} '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedResponse' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '500': description: Failed to delete all content content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorResponse' /knowledge/remote-content: post: tags: - Knowledge summary: Upload Remote Content description: 'Upload content from a remote source (S3, GCS, SharePoint, GitHub) to the knowledge base. Content is processed asynchronously in the background.' operationId: upload_remote_content security: - HTTPBearer: [] parameters: - name: db_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Database ID to use for content storage title: Db Id description: Database ID to use for content storage - name: knowledge_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Knowledge base ID to upload to title: Knowledge Id description: Knowledge base ID to upload to requestBody: required: true content: application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/Body_upload_remote_content' responses: '202': description: Remote content upload accepted for processing content: application/json: schema: $ref: '#/components/schemas/ContentResponseSchema' example: id: content-456 name: reports/q1-2024.pdf description: Q1 Report from S3 metadata: source: s3-docs status: processing '400': description: Invalid request - unknown config or missing path content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedResponse' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' '422': description: Validation error in request body content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorResponse' '/knowledge/content/{content_id}': patch: tags: - Knowledge summary: Update Content description: 'Update content properties such as name, description, metadata, or processing configuration. Allows modification of existing content without re-uploading.' operationId: update_content security: - HTTPBearer: [] parameters: - name: content_id in: path required: true schema: type: string description: Content ID title: Content Id description: Content ID - name: db_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Database ID to use title: Db Id description: Database ID to use - name: knowledge_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Knowledge base ID to use title: Knowledge Id description: Knowledge base ID to use requestBody: content: application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/Body_update_content' responses: '200': description: Content updated successfully content: application/json: schema: $ref: '#/components/schemas/ContentResponseSchema' example: id: 3c2fc685-d451-4d47-b0c0-b9a544c672b7 name: example.pdf description: '' type: application/pdf size: '251261' metadata: {} access_count: 1 status: completed status_message: '' created_at: '2025-09-08T15:22:53Z' updated_at: '2025-09-08T15:22:54Z' '400': description: Invalid request - malformed metadata or invalid reader_id content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedResponse' '404': description: Content not found content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorResponse' get: tags: - Knowledge summary: Get Content by ID description: Retrieve detailed information about a specific content item including processing status and metadata. operationId: get_content_by_id security: - HTTPBearer: [] parameters: - name: content_id in: path required: true schema: type: string title: Content Id - name: db_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Database ID to use title: Db Id description: Database ID to use - name: knowledge_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Knowledge base ID to use title: Knowledge Id description: Knowledge base ID to use responses: '200': description: Content details retrieved successfully content: application/json: schema: $ref: '#/components/schemas/ContentResponseSchema' example: id: 3c2fc685-d451-4d47-b0c0-b9a544c672b7 name: example.pdf description: '' type: application/pdf size: '251261' metadata: {} access_count: 1 status: completed status_message: '' created_at: '2025-09-08T15:22:53Z' updated_at: '2025-09-08T15:22:54Z' '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedResponse' '404': description: Content not found content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorResponse' delete: tags: - Knowledge summary: Delete Content by ID description: Permanently remove a specific content item from the knowledge base. This action cannot be undone. operationId: delete_content_by_id security: - HTTPBearer: [] parameters: - name: content_id in: path required: true schema: type: string title: Content Id - name: db_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Database ID to use title: Db Id description: Database ID to use - name: knowledge_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Knowledge base ID to use title: Knowledge Id description: Knowledge base ID to use responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ContentResponseSchema' '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedResponse' '404': description: Content not found content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '500': description: Failed to delete content content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorResponse' '/knowledge/content/{content_id}/status': get: tags: - Knowledge summary: Get Content Status description: Retrieve the current processing status of a content item. Useful for monitoring asynchronous content processing progress and identifying any processing errors. operationId: get_content_status security: - HTTPBearer: [] parameters: - name: content_id in: path required: true schema: type: string title: Content Id - name: db_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Database ID to use title: Db Id description: Database ID to use - name: knowledge_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Knowledge base ID to use title: Knowledge Id description: Knowledge base ID to use responses: '200': description: Content status retrieved successfully content: application/json: schema: $ref: '#/components/schemas/ContentStatusResponse' examples: completed: summary: Example completed content status value: status: completed status_message: '' '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedResponse' '404': description: Content not found content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorResponse' /knowledge/search: post: tags: - Knowledge summary: Search Knowledge description: 'Search the knowledge base for relevant documents using query, filters and search type.' operationId: search_knowledge requestBody: content: application/json: schema: $ref: '#/components/schemas/VectorSearchRequestSchema' required: true responses: '200': description: Search results retrieved successfully content: application/json: schema: $ref: '#/components/schemas/PaginatedResponse_VectorSearchResult_' example: data: - id: doc_123 content: 'Jordan Mitchell - Software Engineer with skills in JavaScript, React, Python' name: cv_1 meta_data: page: 1 chunk: 1 usage: total_tokens: 14 reranking_score: 0.95 content_id: content_456 meta: page: 1 limit: 20 total_pages: 2 total_count: 35 '400': description: Invalid search parameters '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedResponse' '404': description: No documents found '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorResponse' security: - HTTPBearer: [] /knowledge/config: get: tags: - Knowledge summary: Get Config description: 'Retrieve available readers, chunkers, and configuration options for content processing. This endpoint provides metadata about supported file types, processing strategies, and filters.' operationId: get_knowledge_config security: - HTTPBearer: [] parameters: - name: db_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Database ID to use title: Db Id description: Database ID to use - name: knowledge_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Knowledge base ID to use title: Knowledge Id description: Knowledge base ID to use responses: '200': description: Knowledge configuration retrieved successfully content: application/json: schema: $ref: '#/components/schemas/ConfigResponseSchema' example: readers: website: id: website name: WebsiteReader description: Reads website files chunkers: - AgenticChunker - DocumentChunker - RecursiveChunker - SemanticChunker - FixedSizeChunker firecrawl: id: firecrawl name: FirecrawlReader description: Reads firecrawl files chunkers: - SemanticChunker - FixedSizeChunker - AgenticChunker - DocumentChunker - RecursiveChunker youtube: id: youtube name: YoutubeReader description: Reads youtube files chunkers: - RecursiveChunker - AgenticChunker - DocumentChunker - SemanticChunker - FixedSizeChunker web_search: id: web_search name: WebSearchReader description: Reads web_search files chunkers: - AgenticChunker - DocumentChunker - RecursiveChunker - SemanticChunker - FixedSizeChunker arxiv: id: arxiv name: ArxivReader description: Reads arxiv files chunkers: - FixedSizeChunker - AgenticChunker - DocumentChunker - RecursiveChunker - SemanticChunker csv: id: csv name: CsvReader description: Reads csv files chunkers: - RowChunker - FixedSizeChunker - AgenticChunker - DocumentChunker - RecursiveChunker docx: id: docx name: DocxReader description: Reads docx files chunkers: - DocumentChunker - FixedSizeChunker - SemanticChunker - AgenticChunker - RecursiveChunker gcs: id: gcs name: GcsReader description: Reads gcs files chunkers: - FixedSizeChunker - AgenticChunker - DocumentChunker - RecursiveChunker - SemanticChunker json: id: json name: JsonReader description: Reads json files chunkers: - FixedSizeChunker - AgenticChunker - DocumentChunker - RecursiveChunker - SemanticChunker markdown: id: markdown name: MarkdownReader description: Reads markdown files chunkers: - MarkdownChunker - DocumentChunker - AgenticChunker - RecursiveChunker - SemanticChunker - FixedSizeChunker pdf: id: pdf name: PdfReader description: Reads pdf files chunkers: - DocumentChunker - FixedSizeChunker - AgenticChunker - SemanticChunker - RecursiveChunker text: id: text name: TextReader description: Reads text files chunkers: - CodeChunker - FixedSizeChunker - AgenticChunker - DocumentChunker - RecursiveChunker - SemanticChunker readersForType: url: - url - website - firecrawl - youtube - web_search - gcs youtube: - youtube text: - web_search topic: - arxiv file: - csv - gcs .csv: - csv - field_labeled_csv .xlsx: - excel .xls: - excel application/vnd.openxmlformats-officedocument.spreadsheetml.sheet: - excel application/vnd.ms-excel: - excel .docx: - docx .doc: - docx .json: - json .md: - markdown .pdf: - pdf .txt: - text chunkers: AgenticChunker: key: AgenticChunker name: AgenticChunker description: Chunking strategy that uses an LLM to determine natural breakpoints in the text metadata: chunk_size: 5000 CodeChunker: key: CodeChunker name: CodeChunker description: 'The CodeChunker splits code into chunks based on its structure, leveraging Abstract Syntax Trees (ASTs) to create contextually relevant segments' metadata: chunk_size: 2048 DocumentChunker: key: DocumentChunker name: DocumentChunker description: A chunking strategy that splits text based on document structure like paragraphs and sections metadata: chunk_size: 5000 chunk_overlap: 0 FixedSizeChunker: key: FixedSizeChunker name: FixedSizeChunker description: Chunking strategy that splits text into fixed-size chunks with optional overlap metadata: chunk_size: 5000 chunk_overlap: 0 MarkdownChunker: key: MarkdownChunker name: MarkdownChunker description: 'A chunking strategy that splits markdown based on structure like headers, paragraphs and sections' metadata: chunk_size: 5000 chunk_overlap: 0 RecursiveChunker: key: RecursiveChunker name: RecursiveChunker description: Chunking strategy that recursively splits text into chunks by finding natural break points metadata: chunk_size: 5000 chunk_overlap: 0 RowChunker: key: RowChunker name: RowChunker description: RowChunking chunking strategy metadata: {} SemanticChunker: key: SemanticChunker name: SemanticChunker description: Chunking strategy that splits text into semantic chunks using chonkie metadata: chunk_size: 5000 vector_dbs: - id: vector_db_1 name: Vector DB 1 description: Vector DB 1 description search_types: - vector - keyword - hybrid filters: - filter_tag_1 - filter_tag2 '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedResponse' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorResponse' '/knowledge/{knowledge_id}/sources': get: tags: - Knowledge summary: List Content Sources description: 'List all registered content sources (S3, GCS, SharePoint, GitHub) for the knowledge base.' operationId: list_content_sources security: - HTTPBearer: [] parameters: - name: knowledge_id in: path required: true schema: type: string description: ID of the knowledge base title: Knowledge Id description: ID of the knowledge base - name: db_id in: query required: false schema: anyOf: - type: string - type: 'null' description: The ID of the database to use title: Db Id description: The ID of the database to use responses: '200': description: Content sources retrieved successfully content: application/json: schema: type: array items: $ref: '#/components/schemas/RemoteContentSourceSchema' title: Response List Content Sources example: - id: company-s3 name: Company Documents type: s3 prefix: documents/ '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedResponse' '404': description: Knowledge base not found content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorResponse' '/knowledge/{knowledge_id}/sources/{source_id}/files': get: tags: - Knowledge summary: List Files in Source description: List available files and folders in a specific content source. Supports pagination and folder navigation. operationId: list_source_files security: - HTTPBearer: [] parameters: - name: knowledge_id in: path required: true schema: type: string description: ID of the knowledge base title: Knowledge Id description: ID of the knowledge base - name: source_id in: path required: true schema: type: string description: ID of the content source title: Source Id description: ID of the content source - name: prefix in: query required: false schema: anyOf: - type: string - type: 'null' description: Path prefix to filter files title: Prefix description: Path prefix to filter files - name: limit in: query required: false schema: type: integer maximum: 1000 minimum: 1 description: Number of files per page default: 100 title: Limit description: Number of files per page - name: page in: query required: false schema: type: integer minimum: 1 description: Page number (1-indexed) default: 1 title: Page description: Page number (1-indexed) - name: delimiter in: query required: false schema: type: string description: Folder delimiter (enables folder grouping) default: / title: Delimiter description: Folder delimiter (enables folder grouping) - name: db_id in: query required: false schema: anyOf: - type: string - type: 'null' description: The ID of the database to use title: Db Id description: The ID of the database to use responses: '200': description: Files listed successfully content: application/json: schema: $ref: '#/components/schemas/SourceFilesResponseSchema' example: source_id: company-s3 source_name: Company Documents prefix: reports/ folders: - prefix: reports/2024/ name: '2024' is_empty: false files: - key: reports/annual-summary.pdf name: annual-summary.pdf size: 102400 last_modified: '2024-01-15T10:30:00Z' content_type: application/pdf meta: page: 1 limit: 100 total_pages: 1 total_count: 1 '400': description: Unsupported source type content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedResponse' '404': description: Knowledge base or content source not found content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorResponse' /traces: get: tags: - Traces - Traces summary: List Traces description: |- Retrieve a paginated list of execution traces with optional filtering. **Traces provide observability into:** - Agent execution flows - Model invocations and token usage - Tool calls and their results - Errors and performance bottlenecks **Filtering Options:** - By run, session, user, or agent ID - By status (OK, ERROR) - By time range **Pagination:** - Use `page` (1-indexed) and `limit` parameters - Response includes pagination metadata (total_pages, total_count, etc.) **Response Format:** Returns summary information for each trace. Use GET `/traces/{trace_id}` for detailed hierarchy. operationId: get_traces security: - HTTPBearer: [] parameters: - name: run_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Filter by run ID title: Run Id description: Filter by run ID - name: session_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Filter by session ID title: Session Id description: Filter by session ID - name: user_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Filter by user ID title: User Id description: Filter by user ID - name: agent_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Filter by agent ID title: Agent Id description: Filter by agent ID - name: team_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Filter by team ID title: Team Id description: Filter by team ID - name: workflow_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Filter by workflow ID title: Workflow Id description: Filter by workflow ID - name: status in: query required: false schema: anyOf: - type: string - type: 'null' description: 'Filter by status (OK, ERROR)' title: Status description: 'Filter by status (OK, ERROR)' - name: start_time in: query required: false schema: anyOf: - type: string - type: 'null' description: 'Filter traces starting after this time (ISO 8601 format with timezone, e.g., ''2025-11-19T10:00:00Z'' or ''2025-11-19T15:30:00+05:30''). Times are converted to UTC for comparison.' title: Start Time description: 'Filter traces starting after this time (ISO 8601 format with timezone, e.g., ''2025-11-19T10:00:00Z'' or ''2025-11-19T15:30:00+05:30''). Times are converted to UTC for comparison.' - name: end_time in: query required: false schema: anyOf: - type: string - type: 'null' description: 'Filter traces ending before this time (ISO 8601 format with timezone, e.g., ''2025-11-19T11:00:00Z'' or ''2025-11-19T16:30:00+05:30''). Times are converted to UTC for comparison.' title: End Time description: 'Filter traces ending before this time (ISO 8601 format with timezone, e.g., ''2025-11-19T11:00:00Z'' or ''2025-11-19T16:30:00+05:30''). Times are converted to UTC for comparison.' - name: page in: query required: false schema: type: integer minimum: 0 description: Page number (1-indexed) default: 1 title: Page description: Page number (1-indexed) - name: limit in: query required: false schema: type: integer minimum: 1 description: Number of traces per page default: 20 title: Limit description: Number of traces per page - name: db_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Database ID to query traces from title: Db Id description: Database ID to query traces from responses: '200': description: List of traces retrieved successfully content: application/json: schema: $ref: '#/components/schemas/PaginatedResponse_TraceSummary_' example: data: - trace_id: a1b2c3d4 name: Stock_Price_Agent.run status: OK duration: 1.2s start_time: '2025-11-19T10:30:00.000000+00:00' total_spans: 4 error_count: 0 input: What is the stock price of NVDA? run_id: run123 session_id: session456 user_id: user789 agent_id: agent_stock created_at: '2025-11-19T10:30:00+00:00' meta: page: 1 limit: 20 total_pages: 5 total_count: 95 '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedResponse' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorResponse' /traces/filter-schema: get: tags: - Traces - Traces summary: Get Trace Filter Schema description: |- Returns the available filterable fields, their types, valid operators, and enum values. The frontend uses this to dynamically build the filter bar UI: - Field dropdown populated from `fields[].key` - Operator dropdown changes per field type - Value input shows autocomplete for enum fields (e.g., status) - Logical operators (AND, OR) for combining clauses operationId: get_traces_filter_schema responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/FilterSchemaResponse' '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedResponse' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorResponse' security: - HTTPBearer: [] '/traces/{trace_id}': get: tags: - Traces - Traces summary: Get Trace or Span Detail description: |- Retrieve detailed trace information with hierarchical span tree, or a specific span within the trace. **Without span_id parameter:** Returns the full trace with hierarchical span tree: - Trace metadata (ID, status, duration, context) - Hierarchical tree of all spans - Each span includes timing, status, and type-specific metadata **With span_id parameter:** Returns details for a specific span within the trace: - Span metadata (ID, name, type, timing) - Status and error information - Type-specific attributes (model, tokens, tool params, etc.) **Span Hierarchy (full trace):** The `tree` field contains root spans, each with potential `children`. This recursive structure represents the execution flow: ``` Agent.run (root) ├─ LLM.invoke ├─ Tool.execute │ └─ LLM.invoke (nested) └─ LLM.invoke ``` **Span Types:** - `AGENT`: Agent execution with input/output - `LLM`: Model invocations with tokens and prompts - `TOOL`: Tool calls with parameters and results operationId: get_trace security: - HTTPBearer: [] parameters: - name: trace_id in: path required: true schema: type: string title: Trace Id - name: span_id in: query required: false schema: anyOf: - type: string - type: 'null' description: 'Optional: Span ID to retrieve specific span' title: Span Id description: 'Optional: Span ID to retrieve specific span' - name: run_id in: query required: false schema: anyOf: - type: string - type: 'null' description: 'Optional: Run ID to retrieve trace for' title: Run Id description: 'Optional: Run ID to retrieve trace for' - name: db_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Database ID to query trace from title: Db Id description: Database ID to query trace from responses: '200': description: Trace or span detail retrieved successfully content: application/json: schema: anyOf: - $ref: '#/components/schemas/TraceDetail' - $ref: '#/components/schemas/TraceNode' title: Response Get Trace examples: full_trace: summary: Full trace with hierarchy (no span_id) value: trace_id: a1b2c3d4 name: Stock_Price_Agent.run status: OK duration: 1.2s start_time: '2025-11-19T10:30:00.000000+00:00' end_time: '2025-11-19T10:30:01.200000+00:00' total_spans: 4 error_count: 0 input: What is Tesla stock price? output: The current price of Tesla (TSLA) is $245.67. run_id: run123 session_id: session456 user_id: user789 agent_id: stock_agent created_at: '2025-11-19T10:30:00+00:00' tree: - id: span1 name: Stock_Price_Agent.run type: AGENT duration: 1.2s status: OK spans: [] single_span: summary: Single span detail (with span_id) value: id: span2 name: gpt-4o-mini.invoke type: LLM duration: 800ms status: OK metadata: model: gpt-4o-mini input_tokens: 120 '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedResponse' '404': description: Trace or span not found content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorResponse' /trace_session_stats: get: tags: - Traces - Traces summary: Get Trace Statistics by Session description: |- Retrieve aggregated trace statistics grouped by session ID with pagination. **Provides insights into:** - Total traces per session - First and last trace timestamps per session - Associated user and agent information **Filtering Options:** - By user ID - By agent ID **Use Cases:** - Monitor session-level activity - Track conversation flows - Identify high-activity sessions - Analyze user engagement patterns operationId: get_trace_stats security: - HTTPBearer: [] parameters: - name: user_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Filter by user ID title: User Id description: Filter by user ID - name: agent_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Filter by agent ID title: Agent Id description: Filter by agent ID - name: team_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Filter by team ID title: Team Id description: Filter by team ID - name: workflow_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Filter by workflow ID title: Workflow Id description: Filter by workflow ID - name: start_time in: query required: false schema: anyOf: - type: string - type: 'null' description: 'Filter sessions with traces created after this time (ISO 8601 format with timezone, e.g., ''2025-11-19T10:00:00Z'' or ''2025-11-19T15:30:00+05:30''). Times are converted to UTC for comparison.' title: Start Time description: 'Filter sessions with traces created after this time (ISO 8601 format with timezone, e.g., ''2025-11-19T10:00:00Z'' or ''2025-11-19T15:30:00+05:30''). Times are converted to UTC for comparison.' - name: end_time in: query required: false schema: anyOf: - type: string - type: 'null' description: 'Filter sessions with traces created before this time (ISO 8601 format with timezone, e.g., ''2025-11-19T11:00:00Z'' or ''2025-11-19T16:30:00+05:30''). Times are converted to UTC for comparison.' title: End Time description: 'Filter sessions with traces created before this time (ISO 8601 format with timezone, e.g., ''2025-11-19T11:00:00Z'' or ''2025-11-19T16:30:00+05:30''). Times are converted to UTC for comparison.' - name: page in: query required: false schema: type: integer minimum: 1 description: Page number (1-indexed) default: 1 title: Page description: Page number (1-indexed) - name: limit in: query required: false schema: type: integer minimum: 1 description: Number of sessions per page default: 20 title: Limit description: Number of sessions per page - name: db_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Database ID to query statistics from title: Db Id description: Database ID to query statistics from responses: '200': description: Trace statistics retrieved successfully content: application/json: schema: $ref: '#/components/schemas/PaginatedResponse_TraceSessionStats_' example: data: - session_id: 37029bc6-1794-4ba8-a629-1efedc53dcad user_id: kaustubh@agno.com agent_id: hackernews-agent total_traces: 5 first_trace_at: '2025-11-19T10:15:16+00:00' last_trace_at: '2025-11-19T10:21:30+00:00' meta: page: 1 limit: 20 total_pages: 3 total_count: 45 '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedResponse' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '500': description: Failed to retrieve statistics content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorResponse' /traces/search: post: tags: - Traces - Traces summary: Search Traces with Advanced Filters description: |- Search traces using the FilterExpr DSL for complex, composable queries. **Group By Mode:** - `run` (default): Returns `PaginatedResponse[TraceDetail]` with full span trees - `session`: Returns `PaginatedResponse[TraceSessionStats]` with aggregated session stats **Supported Operators:** - Comparison: `EQ`, `NEQ`, `GT`, `GTE`, `LT`, `LTE` - Inclusion: `IN` - String matching: `CONTAINS` (case-insensitive substring), `STARTSWITH` (prefix) - Logical: `AND`, `OR`, `NOT` **Filterable Fields:** trace_id, name, status, start_time, end_time, duration_ms, run_id, session_id, user_id, agent_id, team_id, workflow_id, created_at **Example Request Body (runs):** ```json { "filter": {"op": "EQ", "key": "status", "value": "OK"}, "group_by": "run", "page": 1, "limit": 20 } ``` **Example Request Body (sessions):** ```json { "filter": {"op": "CONTAINS", "key": "agent_id", "value": "stock"}, "group_by": "session", "page": 1, "limit": 20 } ``` operationId: search_traces security: - HTTPBearer: [] parameters: - name: db_id in: query required: false schema: anyOf: - type: string - type: 'null' description: Database ID to query traces from title: Db Id description: Database ID to query traces from requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/TraceSearchRequest' responses: '200': description: Successful Response content: application/json: schema: anyOf: - $ref: '#/components/schemas/PaginatedResponse_TraceDetail_' - $ref: '#/components/schemas/PaginatedResponse_TraceSessionStats_' title: Response Search Traces '400': description: Invalid filter expression content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedResponse' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorResponse' /databases/all/migrate: post: tags: - Database summary: Migrate All Databases description: 'Migrate all database schemas to the given target version. If a target version is not provided, all databases will be migrated to the latest version.' operationId: migrate_all_databases security: - HTTPBearer: [] parameters: - name: target_version in: query required: false schema: anyOf: - type: string - type: 'null' title: Target Version responses: '200': description: All databases migrated successfully content: application/json: schema: {} example: message: All databases migrated successfully to version 3.0.0 '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedResponse' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '500': description: Failed to migrate databases content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorResponse' '/databases/{db_id}/migrate': post: tags: - Database summary: Migrate Database description: 'Migrate the given database schema to the given target version. If a target version is not provided, the database will be migrated to the latest version.' operationId: migrate_database security: - HTTPBearer: [] parameters: - name: db_id in: path required: true schema: type: string title: Db Id - name: target_version in: query required: false schema: anyOf: - type: string - type: 'null' title: Target Version responses: '200': description: Database migrated successfully content: application/json: schema: {} example: message: Database migrated successfully to version 3.0.0 '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedResponse' '404': description: Database not found content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '500': description: Failed to migrate database content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorResponse' /components: get: tags: - Components summary: List Components description: Retrieve a paginated list of components with optional filtering by type. operationId: list_components security: - HTTPBearer: [] parameters: - name: component_type in: query required: false schema: anyOf: - $ref: '#/components/schemas/ComponentType' - type: 'null' description: 'Filter by type: agent, team, workflow' title: Component Type description: 'Filter by type: agent, team, workflow' - name: page in: query required: false schema: type: integer minimum: 1 description: Page number default: 1 title: Page description: Page number - name: limit in: query required: false schema: type: integer maximum: 100 minimum: 1 description: Items per page default: 20 title: Limit description: Items per page responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/PaginatedResponse_ComponentResponse_' '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedResponse' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorResponse' post: tags: - Components summary: Create Component description: 'Create a new component (agent, team, or workflow) with initial config.' operationId: create_component security: - HTTPBearer: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ComponentCreate' responses: '201': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ComponentResponse' '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedResponse' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorResponse' '/components/{component_id}': get: tags: - Components summary: Get Component description: Retrieve a component by ID. operationId: get_component security: - HTTPBearer: [] parameters: - name: component_id in: path required: true schema: type: string description: Component ID title: Component Id description: Component ID responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ComponentResponse' '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedResponse' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorResponse' patch: tags: - Components summary: Update Component description: Partially update a component by ID. operationId: update_component security: - HTTPBearer: [] parameters: - name: component_id in: path required: true schema: type: string description: Component ID title: Component Id description: Component ID requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ComponentUpdate' description: Component fields to update responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ComponentResponse' '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedResponse' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorResponse' delete: tags: - Components summary: Delete Component description: Delete a component by ID. operationId: delete_component security: - HTTPBearer: [] parameters: - name: component_id in: path required: true schema: type: string description: Component ID title: Component Id description: Component ID responses: '204': description: Successful Response '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedResponse' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorResponse' '/components/{component_id}/configs': get: tags: - Components summary: List Configs description: List all configs for a component. operationId: list_configs security: - HTTPBearer: [] parameters: - name: component_id in: path required: true schema: type: string description: Component ID title: Component Id description: Component ID - name: include_config in: query required: false schema: type: boolean description: Include full config blob default: true title: Include Config description: Include full config blob responses: '200': description: Successful Response content: application/json: schema: type: array items: $ref: '#/components/schemas/ComponentConfigResponse' title: Response List Configs '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedResponse' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorResponse' post: tags: - Components summary: Create Config Version description: Create a new config version for a component. operationId: create_config security: - HTTPBearer: [] parameters: - name: component_id in: path required: true schema: type: string description: Component ID title: Component Id description: Component ID requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ConfigCreate' description: Config data responses: '201': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ComponentConfigResponse' '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedResponse' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorResponse' '/components/{component_id}/configs/{version}': patch: tags: - Components summary: Update Draft Config description: Update an existing draft config. Cannot update published configs. operationId: update_config security: - HTTPBearer: [] parameters: - name: component_id in: path required: true schema: type: string description: Component ID title: Component Id description: Component ID - name: version in: path required: true schema: type: integer description: Version number title: Version description: Version number requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ConfigUpdate' description: Config fields to update responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ComponentConfigResponse' '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedResponse' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorResponse' get: tags: - Components summary: Get Config Version description: Get a specific config version by number. operationId: get_config security: - HTTPBearer: [] parameters: - name: component_id in: path required: true schema: type: string description: Component ID title: Component Id description: Component ID - name: version in: path required: true schema: type: integer description: Version number title: Version description: Version number responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ComponentConfigResponse' '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedResponse' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorResponse' delete: tags: - Components summary: Delete Config Version description: Delete a specific draft config version. Cannot delete published or current configs. operationId: delete_config security: - HTTPBearer: [] parameters: - name: component_id in: path required: true schema: type: string description: Component ID title: Component Id description: Component ID - name: version in: path required: true schema: type: integer description: Version number title: Version description: Version number responses: '204': description: Successful Response '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedResponse' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorResponse' '/components/{component_id}/configs/current': get: tags: - Components summary: Get Current Config description: Get the current config version for a component. operationId: get_current_config security: - HTTPBearer: [] parameters: - name: component_id in: path required: true schema: type: string description: Component ID title: Component Id description: Component ID responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ComponentConfigResponse' '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedResponse' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorResponse' '/components/{component_id}/configs/{version}/set-current': post: tags: - Components summary: Set Current Config Version description: Set a published config version as current (for rollback). operationId: set_current_config security: - HTTPBearer: [] parameters: - name: component_id in: path required: true schema: type: string description: Component ID title: Component Id description: Component ID - name: version in: path required: true schema: type: integer description: Version number title: Version description: Version number responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ComponentResponse' '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedResponse' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorResponse' /schedules: get: tags: - Schedules summary: List Schedules operationId: list_schedules_schedules_get security: - HTTPBearer: [] parameters: - name: enabled in: query required: false schema: anyOf: - type: boolean - type: 'null' title: Enabled - name: limit in: query required: false schema: type: integer maximum: 1000 minimum: 1 default: 100 title: Limit - name: page in: query required: false schema: type: integer minimum: 1 default: 1 title: Page responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/PaginatedResponse_ScheduleResponse_' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' post: tags: - Schedules summary: Create Schedule operationId: create_schedule_schedules_post security: - HTTPBearer: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ScheduleCreate' responses: '201': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ScheduleResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' '/schedules/{schedule_id}': get: tags: - Schedules summary: Get Schedule operationId: get_schedule_schedules__schedule_id__get security: - HTTPBearer: [] parameters: - name: schedule_id in: path required: true schema: type: string title: Schedule Id responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ScheduleResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' patch: tags: - Schedules summary: Update Schedule operationId: update_schedule_schedules__schedule_id__patch security: - HTTPBearer: [] parameters: - name: schedule_id in: path required: true schema: type: string title: Schedule Id requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ScheduleUpdate' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ScheduleResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' delete: tags: - Schedules summary: Delete Schedule operationId: delete_schedule_schedules__schedule_id__delete security: - HTTPBearer: [] parameters: - name: schedule_id in: path required: true schema: type: string title: Schedule Id responses: '204': description: Successful Response '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' '/schedules/{schedule_id}/enable': post: tags: - Schedules summary: Enable Schedule operationId: enable_schedule_schedules__schedule_id__enable_post security: - HTTPBearer: [] parameters: - name: schedule_id in: path required: true schema: type: string title: Schedule Id responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ScheduleStateResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' '/schedules/{schedule_id}/disable': post: tags: - Schedules summary: Disable Schedule operationId: disable_schedule_schedules__schedule_id__disable_post security: - HTTPBearer: [] parameters: - name: schedule_id in: path required: true schema: type: string title: Schedule Id responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ScheduleStateResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' '/schedules/{schedule_id}/trigger': post: tags: - Schedules summary: Trigger Schedule operationId: trigger_schedule_schedules__schedule_id__trigger_post security: - HTTPBearer: [] parameters: - name: schedule_id in: path required: true schema: type: string title: Schedule Id responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ScheduleRunResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' '/schedules/{schedule_id}/runs': get: tags: - Schedules summary: List Schedule Runs operationId: list_schedule_runs_schedules__schedule_id__runs_get security: - HTTPBearer: [] parameters: - name: schedule_id in: path required: true schema: type: string title: Schedule Id - name: limit in: query required: false schema: type: integer maximum: 1000 minimum: 1 default: 100 title: Limit - name: page in: query required: false schema: type: integer minimum: 1 default: 1 title: Page responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/PaginatedResponse_ScheduleRunResponse_' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' '/schedules/{schedule_id}/runs/{run_id}': get: tags: - Schedules summary: Get Schedule Run operationId: get_schedule_run_schedules__schedule_id__runs__run_id__get security: - HTTPBearer: [] parameters: - name: schedule_id in: path required: true schema: type: string title: Schedule Id - name: run_id in: path required: true schema: type: string title: Run Id responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ScheduleRunResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' /approvals: get: tags: - Approvals summary: List Approvals operationId: list_approvals_approvals_get security: - HTTPBearer: [] parameters: - name: status in: query required: false schema: anyOf: - enum: - pending - approved - rejected - expired - cancelled type: string - type: 'null' title: Status - name: source_type in: query required: false schema: anyOf: - type: string - type: 'null' title: Source Type - name: approval_type in: query required: false schema: anyOf: - enum: - required - audit type: string - type: 'null' title: Approval Type - name: pause_type in: query required: false schema: anyOf: - type: string - type: 'null' title: Pause Type - name: agent_id in: query required: false schema: anyOf: - type: string - type: 'null' title: Agent Id - name: team_id in: query required: false schema: anyOf: - type: string - type: 'null' title: Team Id - name: workflow_id in: query required: false schema: anyOf: - type: string - type: 'null' title: Workflow Id - name: user_id in: query required: false schema: anyOf: - type: string - type: 'null' title: User Id - name: schedule_id in: query required: false schema: anyOf: - type: string - type: 'null' title: Schedule Id - name: run_id in: query required: false schema: anyOf: - type: string - type: 'null' title: Run Id - name: limit in: query required: false schema: type: integer maximum: 1000 minimum: 1 default: 100 title: Limit - name: page in: query required: false schema: type: integer minimum: 1 default: 1 title: Page responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/PaginatedResponse_ApprovalResponse_' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' /approvals/count: get: tags: - Approvals summary: Get Approval Count operationId: get_approval_count_approvals_count_get security: - HTTPBearer: [] parameters: - name: user_id in: query required: false schema: anyOf: - type: string - type: 'null' title: User Id responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ApprovalCountResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' '/approvals/{approval_id}/status': get: tags: - Approvals summary: Get Approval Status operationId: get_approval_status_approvals__approval_id__status_get security: - HTTPBearer: [] parameters: - name: approval_id in: path required: true schema: type: string title: Approval Id responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ApprovalStatusResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' '/approvals/{approval_id}': get: tags: - Approvals summary: Get Approval operationId: get_approval_approvals__approval_id__get security: - HTTPBearer: [] parameters: - name: approval_id in: path required: true schema: type: string title: Approval Id responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ApprovalResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' delete: tags: - Approvals summary: Delete Approval operationId: delete_approval_approvals__approval_id__delete security: - HTTPBearer: [] parameters: - name: approval_id in: path required: true schema: type: string title: Approval Id responses: '204': description: Successful Response '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' '/approvals/{approval_id}/resolve': post: tags: - Approvals summary: Resolve Approval operationId: resolve_approval_approvals__approval_id__resolve_post security: - HTTPBearer: [] parameters: - name: approval_id in: path required: true schema: type: string title: Approval Id requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ApprovalResolve' responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/ApprovalResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' /registry: get: tags: - Registry summary: List Registry description: List all resources in the registry with optional filtering. operationId: list_registry security: - HTTPBearer: [] parameters: - name: resource_type in: query required: false schema: anyOf: - $ref: '#/components/schemas/RegistryResourceType' - type: 'null' description: Filter by resource type title: Resource Type description: Filter by resource type - name: name in: query required: false schema: anyOf: - type: string - type: 'null' description: Filter by name (partial match) title: Name description: Filter by name (partial match) - name: page in: query required: false schema: type: integer minimum: 1 description: Page number default: 1 title: Page description: Page number - name: limit in: query required: false schema: type: integer maximum: 100 minimum: 1 description: Items per page default: 20 title: Limit description: Items per page responses: '200': description: Successful Response content: application/json: schema: $ref: '#/components/schemas/PaginatedResponse_RegistryContentResponse_' '400': description: Bad Request content: application/json: schema: $ref: '#/components/schemas/BadRequestResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthenticatedResponse' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/NotFoundResponse' '422': description: Validation Error content: application/json: schema: $ref: '#/components/schemas/ValidationErrorResponse' '500': description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/InternalServerErrorResponse' components: schemas: ActivityMessage: properties: id: type: string title: Id role: type: string const: activity title: Role default: activity activityType: type: string title: Activitytype content: additionalProperties: true type: object title: Content additionalProperties: true type: object required: - id - activityType - content title: ActivityMessage description: An activity progress message emitted between chat messages. AgentResponse: properties: id: anyOf: - type: string - type: 'null' title: Id name: anyOf: - type: string - type: 'null' title: Name db_id: anyOf: - type: string - type: 'null' title: Db Id description: anyOf: - type: string - type: 'null' title: Description role: anyOf: - type: string - type: 'null' title: Role model: anyOf: - $ref: '#/components/schemas/ModelResponse' - type: 'null' tools: anyOf: - additionalProperties: true type: object - type: 'null' title: Tools sessions: anyOf: - additionalProperties: true type: object - type: 'null' title: Sessions knowledge: anyOf: - additionalProperties: true type: object - type: 'null' title: Knowledge memory: anyOf: - additionalProperties: true type: object - type: 'null' title: Memory reasoning: anyOf: - additionalProperties: true type: object - type: 'null' title: Reasoning default_tools: anyOf: - additionalProperties: true type: object - type: 'null' title: Default Tools system_message: anyOf: - additionalProperties: true type: object - type: 'null' title: System Message extra_messages: anyOf: - additionalProperties: true type: object - type: 'null' title: Extra Messages response_settings: anyOf: - additionalProperties: true type: object - type: 'null' title: Response Settings introduction: anyOf: - type: string - type: 'null' title: Introduction streaming: anyOf: - additionalProperties: true type: object - type: 'null' title: Streaming metadata: anyOf: - additionalProperties: true type: object - type: 'null' title: Metadata input_schema: anyOf: - additionalProperties: true type: object - type: 'null' title: Input Schema is_component: type: boolean title: Is Component default: false current_version: anyOf: - type: integer - type: 'null' title: Current Version stage: anyOf: - type: string - type: 'null' title: Stage type: object title: AgentResponse AgentSessionDetailSchema: properties: user_id: anyOf: - type: string - type: 'null' title: User Id description: User ID associated with the session agent_session_id: type: string title: Agent Session Id description: Unique agent session identifier session_id: type: string title: Session Id description: Session identifier session_name: type: string title: Session Name description: Human-readable session name session_summary: anyOf: - additionalProperties: true type: object - type: 'null' title: Session Summary description: Summary of session interactions session_state: anyOf: - additionalProperties: true type: object - type: 'null' title: Session State description: Current state of the session agent_id: anyOf: - type: string - type: 'null' title: Agent Id description: Agent ID used in this session total_tokens: anyOf: - type: integer - type: 'null' title: Total Tokens description: Total tokens used in this session agent_data: anyOf: - additionalProperties: true type: object - type: 'null' title: Agent Data description: Agent-specific data metrics: anyOf: - additionalProperties: true type: object - type: 'null' title: Metrics description: Session metrics metadata: anyOf: - additionalProperties: true type: object - type: 'null' title: Metadata description: Additional metadata chat_history: anyOf: - items: additionalProperties: true type: object type: array - type: 'null' title: Chat History description: Complete chat history created_at: anyOf: - type: string format: date-time - type: 'null' title: Created At description: Session creation timestamp updated_at: anyOf: - type: string format: date-time - type: 'null' title: Updated At description: Last update timestamp type: object required: - agent_session_id - session_id - session_name title: AgentSessionDetailSchema AgentSummaryResponse: properties: id: anyOf: - type: string - type: 'null' title: Id description: Unique identifier for the agent name: anyOf: - type: string - type: 'null' title: Name description: Name of the agent description: anyOf: - type: string - type: 'null' title: Description description: Description of the agent db_id: anyOf: - type: string - type: 'null' title: Db Id description: Database identifier type: object title: AgentSummaryResponse ApprovalCountResponse: properties: count: type: integer title: Count type: object required: - count title: ApprovalCountResponse description: Response model for pending approval count. ApprovalResolve: properties: status: type: string pattern: ^(approved|rejected)$ title: Status resolved_by: anyOf: - type: string maxLength: 255 - type: 'null' title: Resolved By resolution_data: anyOf: - additionalProperties: true type: object - type: 'null' title: Resolution Data type: object required: - status title: ApprovalResolve description: Request body for resolving (approve/reject) an approval. ApprovalResponse: properties: id: type: string title: Id run_id: type: string title: Run Id session_id: type: string title: Session Id status: type: string title: Status source_type: type: string title: Source Type approval_type: anyOf: - type: string - type: 'null' title: Approval Type pause_type: anyOf: - type: string - type: 'null' title: Pause Type tool_name: anyOf: - type: string - type: 'null' title: Tool Name tool_args: anyOf: - additionalProperties: true type: object - type: 'null' title: Tool Args expires_at: anyOf: - type: integer - type: 'null' title: Expires At agent_id: anyOf: - type: string - type: 'null' title: Agent Id team_id: anyOf: - type: string - type: 'null' title: Team Id workflow_id: anyOf: - type: string - type: 'null' title: Workflow Id user_id: anyOf: - type: string - type: 'null' title: User Id schedule_id: anyOf: - type: string - type: 'null' title: Schedule Id schedule_run_id: anyOf: - type: string - type: 'null' title: Schedule Run Id source_name: anyOf: - type: string - type: 'null' title: Source Name requirements: anyOf: - items: additionalProperties: true type: object type: array - type: 'null' title: Requirements context: anyOf: - additionalProperties: true type: object - type: 'null' title: Context resolution_data: anyOf: - additionalProperties: true type: object - type: 'null' title: Resolution Data resolved_by: anyOf: - type: string - type: 'null' title: Resolved By resolved_at: anyOf: - type: integer - type: 'null' title: Resolved At created_at: anyOf: - type: integer - type: 'null' title: Created At updated_at: anyOf: - type: integer - type: 'null' title: Updated At run_status: anyOf: - $ref: '#/components/schemas/RunStatus' - type: 'null' type: object required: - id - run_id - session_id - status - source_type title: ApprovalResponse description: Response model for a single approval. ApprovalStatusResponse: properties: approval_id: type: string title: Approval Id status: type: string title: Status run_id: type: string title: Run Id resolved_at: anyOf: - type: integer - type: 'null' title: Resolved At resolved_by: anyOf: - type: string - type: 'null' title: Resolved By type: object required: - approval_id - status - run_id title: ApprovalStatusResponse description: Lightweight response model for polling approval status. Artifact: properties: artifactId: type: string title: Artifactid description: anyOf: - type: string - type: 'null' title: Description extensions: anyOf: - items: type: string type: array - type: 'null' title: Extensions metadata: anyOf: - additionalProperties: true type: object - type: 'null' title: Metadata name: anyOf: - type: string - type: 'null' title: Name parts: items: $ref: '#/components/schemas/Part' type: array title: Parts type: object required: - artifactId - parts title: Artifact description: 'Represents a file, data structure, or other resource generated by an agent during a task.' AssistantMessage: properties: id: type: string title: Id role: type: string const: assistant title: Role default: assistant content: anyOf: - type: string - type: 'null' title: Content name: anyOf: - type: string - type: 'null' title: Name encryptedValue: anyOf: - type: string - type: 'null' title: Encryptedvalue toolCalls: anyOf: - items: $ref: '#/components/schemas/ToolCall' type: array - type: 'null' title: Toolcalls additionalProperties: true type: object required: - id title: AssistantMessage description: An assistant message. BadRequestResponse: properties: detail: type: string title: Detail description: Error detail message error_code: anyOf: - type: string - type: 'null' title: Error Code description: Error code for categorization type: object required: - detail title: BadRequestResponse example: detail: Bad request error_code: BAD_REQUEST BinaryInputContent: properties: type: type: string const: binary title: Type default: binary mimeType: type: string title: Mimetype id: anyOf: - type: string - type: 'null' title: Id url: anyOf: - type: string - type: 'null' title: Url data: anyOf: - type: string - type: 'null' title: Data filename: anyOf: - type: string - type: 'null' title: Filename additionalProperties: true type: object required: - mimeType title: BinaryInputContent description: A binary payload reference in a multimodal user message. Body_continue_agent_run: properties: tools: type: string title: Tools default: '' session_id: anyOf: - type: string - type: 'null' title: Session Id user_id: anyOf: - type: string - type: 'null' title: User Id stream: type: boolean title: Stream default: true type: object title: Body_continue_agent_run Body_create_agent_run: properties: message: type: string title: Message stream: type: boolean title: Stream default: true session_id: anyOf: - type: string - type: 'null' title: Session Id user_id: anyOf: - type: string - type: 'null' title: User Id files: anyOf: - items: type: string contentMediaType: application/octet-stream type: array - type: 'null' title: Files version: anyOf: - type: string - type: 'null' title: Version background: type: boolean title: Background default: false type: object required: - message title: Body_create_agent_run Body_create_team_run: properties: message: type: string title: Message stream: type: boolean title: Stream default: true monitor: type: boolean title: Monitor default: true session_id: anyOf: - type: string - type: 'null' title: Session Id user_id: anyOf: - type: string - type: 'null' title: User Id files: anyOf: - items: type: string contentMediaType: application/octet-stream type: array - type: 'null' title: Files version: anyOf: - type: integer - type: 'null' title: Version background: type: boolean title: Background default: false type: object required: - message title: Body_create_team_run Body_create_workflow_run: properties: message: type: string title: Message stream: type: boolean title: Stream default: true session_id: anyOf: - type: string - type: 'null' title: Session Id user_id: anyOf: - type: string - type: 'null' title: User Id version: anyOf: - type: integer - type: 'null' title: Version type: object required: - message title: Body_create_workflow_run Body_rename_session: properties: session_name: type: string title: Session Name description: New name for the session type: object required: - session_name title: Body_rename_session Body_update_content: properties: name: anyOf: - type: string - type: 'null' title: Name description: Content name description: anyOf: - type: string - type: 'null' title: Description description: Content description metadata: anyOf: - type: string - type: 'null' title: Metadata description: Content metadata as JSON string reader_id: anyOf: - type: string - type: 'null' title: Reader Id description: ID of the reader to use for processing type: object title: Body_update_content Body_upload_content: properties: name: anyOf: - type: string - type: 'null' title: Name description: Content name (auto-generated from file/URL if not provided) description: anyOf: - type: string - type: 'null' title: Description description: Content description for context url: anyOf: - type: string - type: 'null' title: Url description: URL to fetch content from (JSON array or single URL string) metadata: anyOf: - type: string - type: 'null' title: Metadata description: JSON metadata object for additional content properties file: anyOf: - type: string contentMediaType: application/octet-stream - type: 'null' title: File description: File to upload for processing text_content: anyOf: - type: string - type: 'null' title: Text Content description: Raw text content to process reader_id: anyOf: - type: string - type: 'null' title: Reader Id description: ID of the reader to use for content processing chunker: anyOf: - type: string - type: 'null' title: Chunker description: Chunking strategy to apply during processing chunk_size: anyOf: - type: integer - type: 'null' title: Chunk Size description: Chunk size to use for processing chunk_overlap: anyOf: - type: integer - type: 'null' title: Chunk Overlap description: Chunk overlap to use for processing type: object title: Body_upload_content Body_upload_remote_content: properties: config_id: type: string title: Config Id description: ID of the configured remote content source (from /knowledge/config) path: type: string title: Path description: Path to file or folder in the remote source name: anyOf: - type: string - type: 'null' title: Name description: Content name (auto-generated if not provided) description: anyOf: - type: string - type: 'null' title: Description description: Content description metadata: anyOf: - type: string - type: 'null' title: Metadata description: JSON metadata object reader_id: anyOf: - type: string - type: 'null' title: Reader Id description: ID of the reader to use for processing chunker: anyOf: - type: string - type: 'null' title: Chunker description: Chunking strategy to apply chunk_size: anyOf: - type: integer - type: 'null' title: Chunk Size description: Chunk size for processing chunk_overlap: anyOf: - type: integer - type: 'null' title: Chunk Overlap description: Chunk overlap for processing type: object required: - config_id - path title: Body_upload_remote_content ChatConfig: properties: quick_prompts: additionalProperties: items: type: string type: array type: object title: Quick Prompts type: object required: - quick_prompts title: ChatConfig description: Configuration for the Chat page of the AgentOS ChunkerSchema: properties: key: type: string title: Key name: anyOf: - type: string - type: 'null' title: Name description: anyOf: - type: string - type: 'null' title: Description metadata: anyOf: - additionalProperties: true type: object - type: 'null' title: Metadata type: object required: - key title: ChunkerSchema ComponentConfigResponse: properties: component_id: type: string title: Component Id version: type: integer title: Version label: anyOf: - type: string - type: 'null' title: Label stage: type: string title: Stage config: additionalProperties: true type: object title: Config notes: anyOf: - type: string - type: 'null' title: Notes created_at: type: integer title: Created At updated_at: anyOf: - type: integer - type: 'null' title: Updated At type: object required: - component_id - version - stage - config - created_at title: ComponentConfigResponse ComponentCreate: properties: name: type: string title: Name description: Display name component_id: anyOf: - type: string - type: 'null' title: Component Id description: Unique identifier for the entity. Auto-generated from name if not provided. component_type: $ref: '#/components/schemas/ComponentType' description: 'Type of entity: agent, team, or workflow' description: anyOf: - type: string - type: 'null' title: Description description: Optional description metadata: anyOf: - additionalProperties: true type: object - type: 'null' title: Metadata description: Optional metadata config: anyOf: - additionalProperties: true type: object - type: 'null' title: Config description: Optional configuration label: anyOf: - type: string - type: 'null' title: Label description: 'Optional label (e.g., ''stable'')' stage: type: string title: Stage description: 'Stage: ''draft'' or ''published''' default: draft notes: anyOf: - type: string - type: 'null' title: Notes description: Optional notes set_current: type: boolean title: Set Current description: Set as current version default: true type: object required: - name - component_type title: ComponentCreate ComponentResponse: properties: component_id: type: string title: Component Id component_type: $ref: '#/components/schemas/ComponentType' name: anyOf: - type: string - type: 'null' title: Name description: anyOf: - type: string - type: 'null' title: Description current_version: anyOf: - type: integer - type: 'null' title: Current Version metadata: anyOf: - additionalProperties: true type: object - type: 'null' title: Metadata created_at: type: integer title: Created At updated_at: anyOf: - type: integer - type: 'null' title: Updated At type: object required: - component_id - component_type - created_at title: ComponentResponse ComponentType: type: string enum: - agent - team - workflow title: ComponentType ComponentUpdate: properties: name: anyOf: - type: string - type: 'null' title: Name description: anyOf: - type: string - type: 'null' title: Description component_type: anyOf: - type: string - type: 'null' title: Component Type metadata: anyOf: - additionalProperties: true type: object - type: 'null' title: Metadata current_version: anyOf: - type: integer - type: 'null' title: Current Version type: object title: ComponentUpdate ConfigCreate: properties: config: additionalProperties: true type: object title: Config description: The configuration data version: anyOf: - type: integer - type: 'null' title: Version description: Optional version number label: anyOf: - type: string - type: 'null' title: Label description: 'Optional label (e.g., ''stable'')' stage: type: string title: Stage description: 'Stage: ''draft'' or ''published''' default: draft notes: anyOf: - type: string - type: 'null' title: Notes description: Optional notes links: anyOf: - items: additionalProperties: true type: object type: array - type: 'null' title: Links description: Optional links to child components set_current: type: boolean title: Set Current description: Set as current version default: true type: object required: - config title: ConfigCreate ConfigResponse: properties: os_id: type: string title: Os Id description: Unique identifier for the OS instance name: anyOf: - type: string - type: 'null' title: Name description: Name of the OS instance description: anyOf: - type: string - type: 'null' title: Description description: Description of the OS instance available_models: anyOf: - items: type: string type: array - type: 'null' title: Available Models description: List of available models os_database: anyOf: - type: string - type: 'null' title: Os Database description: ID of the database used for the OS instance databases: items: type: string type: array title: Databases description: List of database IDs used by the components of the OS instance chat: anyOf: - $ref: '#/components/schemas/ChatConfig' - type: 'null' description: Chat configuration session: anyOf: - $ref: '#/components/schemas/SessionConfig' - type: 'null' description: Session configuration metrics: anyOf: - $ref: '#/components/schemas/MetricsConfig' - type: 'null' description: Metrics configuration memory: anyOf: - $ref: '#/components/schemas/MemoryConfig' - type: 'null' description: Memory configuration knowledge: anyOf: - $ref: '#/components/schemas/KnowledgeConfig' - type: 'null' description: Knowledge configuration evals: anyOf: - $ref: '#/components/schemas/EvalsConfig' - type: 'null' description: Evaluations configuration traces: anyOf: - $ref: '#/components/schemas/TracesConfig' - type: 'null' description: Traces configuration agents: items: $ref: '#/components/schemas/AgentSummaryResponse' type: array title: Agents description: List of registered agents teams: items: $ref: '#/components/schemas/TeamSummaryResponse' type: array title: Teams description: List of registered teams workflows: items: $ref: '#/components/schemas/WorkflowSummaryResponse' type: array title: Workflows description: List of registered workflows interfaces: items: $ref: '#/components/schemas/InterfaceResponse' type: array title: Interfaces description: List of available interfaces type: object required: - os_id - databases - agents - teams - workflows - interfaces title: ConfigResponse description: Response schema for the general config endpoint ConfigResponseSchema: properties: readers: anyOf: - additionalProperties: $ref: '#/components/schemas/ReaderSchema' type: object - type: 'null' title: Readers description: Available content readers readersForType: anyOf: - additionalProperties: items: type: string type: array type: object - type: 'null' title: Readersfortype description: Mapping of content types to reader IDs chunkers: anyOf: - additionalProperties: $ref: '#/components/schemas/ChunkerSchema' type: object - type: 'null' title: Chunkers description: Available chunking strategies filters: anyOf: - items: type: string type: array - type: 'null' title: Filters description: Available filter tags vector_dbs: anyOf: - items: $ref: '#/components/schemas/VectorDbSchema' type: array - type: 'null' title: Vector Dbs description: Configured vector databases remote_content_sources: anyOf: - items: $ref: '#/components/schemas/RemoteContentSourceSchema' type: array - type: 'null' title: Remote Content Sources description: 'Configured remote content sources (S3, GCS, SharePoint, GitHub)' type: object title: ConfigResponseSchema ConfigUpdate: properties: config: anyOf: - additionalProperties: true type: object - type: 'null' title: Config label: anyOf: - type: string - type: 'null' title: Label stage: anyOf: - type: string - type: 'null' title: Stage notes: anyOf: - type: string - type: 'null' title: Notes links: anyOf: - items: additionalProperties: true type: object type: array - type: 'null' title: Links type: object title: ConfigUpdate ContentResponseSchema: properties: id: type: string title: Id description: Unique identifier for the content name: anyOf: - type: string - type: 'null' title: Name description: Name of the content description: anyOf: - type: string - type: 'null' title: Description description: Description of the content type: anyOf: - type: string - type: 'null' title: Type description: MIME type of the content size: anyOf: - type: string - type: 'null' title: Size description: Size of the content in bytes linked_to: anyOf: - type: string - type: 'null' title: Linked To description: ID of related content if linked metadata: anyOf: - additionalProperties: true type: object - type: 'null' title: Metadata description: Additional metadata as key-value pairs access_count: anyOf: - type: integer minimum: 0 - type: 'null' title: Access Count description: Number of times content has been accessed status: anyOf: - $ref: '#/components/schemas/ContentStatus' - type: 'null' description: Processing status of the content status_message: anyOf: - type: string - type: 'null' title: Status Message description: Status message or error details created_at: anyOf: - type: string format: date-time - type: 'null' title: Created At description: Timestamp when content was created updated_at: anyOf: - type: string format: date-time - type: 'null' title: Updated At description: Timestamp when content was last updated type: object required: - id title: ContentResponseSchema ContentStatus: type: string enum: - processing - completed - failed title: ContentStatus description: Enumeration of possible content processing statuses. ContentStatusResponse: properties: id: anyOf: - type: string - type: 'null' title: Id description: Content ID status: $ref: '#/components/schemas/ContentStatus' description: Current processing status of the content status_message: type: string title: Status Message description: Status message or error details default: '' type: object required: - status title: ContentStatusResponse description: Response model for content status endpoint. Context: properties: description: type: string title: Description value: type: string title: Value additionalProperties: true type: object required: - description - value title: Context description: Additional context for the agent. CreateSessionRequest: properties: session_id: anyOf: - type: string - type: 'null' title: Session Id description: Optional session ID (generated if not provided) session_name: anyOf: - type: string - type: 'null' title: Session Name description: Name for the session session_state: anyOf: - additionalProperties: true type: object - type: 'null' title: Session State description: Initial session state metadata: anyOf: - additionalProperties: true type: object - type: 'null' title: Metadata description: Additional metadata user_id: anyOf: - type: string - type: 'null' title: User Id description: User ID associated with the session agent_id: anyOf: - type: string - type: 'null' title: Agent Id description: Agent ID if this is an agent session team_id: anyOf: - type: string - type: 'null' title: Team Id description: Team ID if this is a team session workflow_id: anyOf: - type: string - type: 'null' title: Workflow Id description: Workflow ID if this is a workflow session type: object title: CreateSessionRequest DataPart: properties: data: additionalProperties: true type: object title: Data kind: type: string const: data title: Kind default: data metadata: anyOf: - additionalProperties: true type: object - type: 'null' title: Metadata type: object required: - data title: DataPart description: 'Represents a structured data segment (e.g., JSON) within a message or artifact.' DatabaseConfig_EvalsDomainConfig_: properties: db_id: type: string title: Db Id domain_config: anyOf: - $ref: '#/components/schemas/EvalsDomainConfig' - type: 'null' tables: anyOf: - items: type: string type: array - type: 'null' title: Tables type: object required: - db_id title: 'DatabaseConfig[EvalsDomainConfig]' DatabaseConfig_MemoryDomainConfig_: properties: db_id: type: string title: Db Id domain_config: anyOf: - $ref: '#/components/schemas/MemoryDomainConfig' - type: 'null' tables: anyOf: - items: type: string type: array - type: 'null' title: Tables type: object required: - db_id title: 'DatabaseConfig[MemoryDomainConfig]' DatabaseConfig_MetricsDomainConfig_: properties: db_id: type: string title: Db Id domain_config: anyOf: - $ref: '#/components/schemas/MetricsDomainConfig' - type: 'null' tables: anyOf: - items: type: string type: array - type: 'null' title: Tables type: object required: - db_id title: 'DatabaseConfig[MetricsDomainConfig]' DatabaseConfig_SessionDomainConfig_: properties: db_id: type: string title: Db Id domain_config: anyOf: - $ref: '#/components/schemas/SessionDomainConfig' - type: 'null' tables: anyOf: - items: type: string type: array - type: 'null' title: Tables type: object required: - db_id title: 'DatabaseConfig[SessionDomainConfig]' DatabaseConfig_TracesDomainConfig_: properties: db_id: type: string title: Db Id domain_config: anyOf: - $ref: '#/components/schemas/TracesDomainConfig' - type: 'null' tables: anyOf: - items: type: string type: array - type: 'null' title: Tables type: object required: - db_id title: 'DatabaseConfig[TracesDomainConfig]' DayAggregatedMetrics: properties: id: type: string title: Id description: Unique identifier for the metrics record agent_runs_count: type: integer minimum: 0 title: Agent Runs Count description: Total number of agent runs agent_sessions_count: type: integer minimum: 0 title: Agent Sessions Count description: Total number of agent sessions team_runs_count: type: integer minimum: 0 title: Team Runs Count description: Total number of team runs team_sessions_count: type: integer minimum: 0 title: Team Sessions Count description: Total number of team sessions workflow_runs_count: type: integer minimum: 0 title: Workflow Runs Count description: Total number of workflow runs workflow_sessions_count: type: integer minimum: 0 title: Workflow Sessions Count description: Total number of workflow sessions users_count: type: integer minimum: 0 title: Users Count description: Total number of unique users token_metrics: additionalProperties: true type: object title: Token Metrics description: 'Token usage metrics (input, output, cached, etc.)' model_metrics: items: additionalProperties: true type: object type: array title: Model Metrics description: 'Metrics grouped by model (model_id, provider, count)' date: type: string format: date-time title: Date description: Date for which these metrics are aggregated created_at: type: string format: date-time title: Created At description: Timestamp when metrics were created updated_at: type: string format: date-time title: Updated At description: Timestamp when metrics were last updated type: object required: - id - agent_runs_count - agent_sessions_count - team_runs_count - team_sessions_count - workflow_runs_count - workflow_sessions_count - users_count - token_metrics - model_metrics - date - created_at - updated_at title: DayAggregatedMetrics description: Aggregated metrics for a given day DeleteEvalRunsRequest: properties: eval_run_ids: items: type: string type: array minItems: 1 title: Eval Run Ids description: List of evaluation run IDs to delete type: object required: - eval_run_ids title: DeleteEvalRunsRequest DeleteMemoriesRequest: properties: memory_ids: items: type: string type: array minItems: 1 title: Memory Ids description: List of memory IDs to delete user_id: anyOf: - type: string - type: 'null' title: User Id description: User ID to filter memories for deletion type: object required: - memory_ids title: DeleteMemoriesRequest DeleteSessionRequest: properties: session_ids: items: type: string type: array minItems: 1 title: Session Ids description: List of session IDs to delete session_types: items: $ref: '#/components/schemas/SessionType' type: array minItems: 1 title: Session Types description: Types of sessions to delete type: object required: - session_ids - session_types title: DeleteSessionRequest DeveloperMessage: properties: id: type: string title: Id role: type: string const: developer title: Role default: developer content: type: string title: Content name: anyOf: - type: string - type: 'null' title: Name encryptedValue: anyOf: - type: string - type: 'null' title: Encryptedvalue additionalProperties: true type: object required: - id - content title: DeveloperMessage description: A developer message. EvalFilterType: type: string enum: - agent - team - workflow title: EvalFilterType EvalRunInput: properties: agent_id: anyOf: - type: string - type: 'null' title: Agent Id description: Agent ID to evaluate team_id: anyOf: - type: string - type: 'null' title: Team Id description: Team ID to evaluate model_id: anyOf: - type: string - type: 'null' title: Model Id description: Model ID to use for evaluation model_provider: anyOf: - type: string - type: 'null' title: Model Provider description: Model provider name eval_type: $ref: '#/components/schemas/EvalType' description: 'Type of evaluation to run (accuracy, performance, or reliability)' input: type: string minLength: 1 title: Input description: Input text/query for the evaluation additional_guidelines: anyOf: - type: string - type: 'null' title: Additional Guidelines description: Additional guidelines for the evaluation additional_context: anyOf: - type: string - type: 'null' title: Additional Context description: Additional context for the evaluation num_iterations: type: integer maximum: 100 minimum: 1 title: Num Iterations description: Number of times to run the evaluation default: 1 name: anyOf: - type: string - type: 'null' title: Name description: Name for this evaluation run expected_output: anyOf: - type: string - type: 'null' title: Expected Output description: Expected output for accuracy evaluation criteria: anyOf: - type: string - type: 'null' title: Criteria description: Evaluation criteria for agent-as-judge evaluation scoring_strategy: anyOf: - type: string enum: - numeric - binary - type: 'null' title: Scoring Strategy description: 'Scoring strategy: ''numeric'' (1-10 with threshold) or ''binary'' (PASS/FAIL)' default: binary threshold: anyOf: - type: integer maximum: 10 minimum: 1 - type: 'null' title: Threshold description: 'Score threshold for pass/fail (1-10), only used with numeric scoring' default: 7 warmup_runs: type: integer maximum: 10 minimum: 0 title: Warmup Runs description: Number of warmup runs before measuring performance default: 0 expected_tool_calls: anyOf: - items: type: string type: array - type: 'null' title: Expected Tool Calls description: Expected tool calls for reliability evaluation type: object required: - eval_type - input title: EvalRunInput EvalSchema: properties: id: type: string title: Id description: Unique identifier for the evaluation run agent_id: anyOf: - type: string - type: 'null' title: Agent Id description: Agent ID that was evaluated model_id: anyOf: - type: string - type: 'null' title: Model Id description: Model ID used in evaluation model_provider: anyOf: - type: string - type: 'null' title: Model Provider description: Model provider name team_id: anyOf: - type: string - type: 'null' title: Team Id description: Team ID that was evaluated workflow_id: anyOf: - type: string - type: 'null' title: Workflow Id description: Workflow ID that was evaluated name: anyOf: - type: string - type: 'null' title: Name description: Name of the evaluation run evaluated_component_name: anyOf: - type: string - type: 'null' title: Evaluated Component Name description: Name of the evaluated component eval_type: $ref: '#/components/schemas/EvalType' description: 'Type of evaluation (accuracy, performance, or reliability)' eval_data: additionalProperties: true type: object title: Eval Data description: Evaluation results and metrics eval_input: anyOf: - additionalProperties: true type: object - type: 'null' title: Eval Input description: Input parameters used for the evaluation created_at: anyOf: - type: string format: date-time - type: 'null' title: Created At description: Timestamp when evaluation was created updated_at: anyOf: - type: string format: date-time - type: 'null' title: Updated At description: Timestamp when evaluation was last updated type: object required: - id - eval_type - eval_data title: EvalSchema EvalType: type: string enum: - accuracy - agent_as_judge - performance - reliability title: EvalType EvalsConfig: properties: display_name: anyOf: - type: string - type: 'null' title: Display Name available_models: anyOf: - items: type: string type: array - type: 'null' title: Available Models dbs: anyOf: - items: $ref: '#/components/schemas/DatabaseConfig_EvalsDomainConfig_' type: array - type: 'null' title: Dbs type: object title: EvalsConfig description: Configuration for the Evals domain of the AgentOS EvalsDomainConfig: properties: display_name: anyOf: - type: string - type: 'null' title: Display Name available_models: anyOf: - items: type: string type: array - type: 'null' title: Available Models type: object title: EvalsDomainConfig description: Configuration for the Evals domain of the AgentOS FilePart: properties: file: anyOf: - $ref: '#/components/schemas/FileWithBytes' - $ref: '#/components/schemas/FileWithUri' title: File kind: type: string const: file title: Kind default: file metadata: anyOf: - additionalProperties: true type: object - type: 'null' title: Metadata type: object required: - file title: FilePart description: |- Represents a file segment within a message or artifact. The file content can be provided either directly as bytes or as a URI. FileWithBytes: properties: bytes: type: string title: Bytes mimeType: anyOf: - type: string - type: 'null' title: Mimetype name: anyOf: - type: string - type: 'null' title: Name type: object required: - bytes title: FileWithBytes description: Represents a file with its content provided directly as a base64-encoded string. FileWithUri: properties: mimeType: anyOf: - type: string - type: 'null' title: Mimetype name: anyOf: - type: string - type: 'null' title: Name uri: type: string title: Uri type: object required: - uri title: FileWithUri description: Represents a file with its content located at a specific URI. FilterFieldSchema: properties: key: type: string title: Key description: Column/field name used in filter expressions label: type: string title: Label description: Human-readable display label for the UI type: type: string title: Type description: 'Field data type: string, number, datetime, enum' operators: items: type: string type: array title: Operators description: List of valid filter operators for this field values: anyOf: - items: type: string type: array - type: 'null' title: Values description: Allowed enum values (for autocomplete/dropdown) type: object required: - key - label - type - operators title: FilterFieldSchema description: Schema describing a single filterable field for the frontend filter bar. FilterSchemaResponse: properties: fields: items: $ref: '#/components/schemas/FilterFieldSchema' type: array title: Fields description: Available filterable fields logical_operators: items: type: string type: array title: Logical Operators description: Logical operators for combining filter clauses default: - AND - OR type: object required: - fields title: FilterSchemaResponse description: 'Response for the filter schema endpoint. Tells the FE what fields, operators, and values are available.' FunctionCall: properties: name: type: string title: Name arguments: type: string title: Arguments additionalProperties: true type: object required: - name - arguments title: FunctionCall description: Name and arguments of a function call. HTTPValidationError: properties: detail: items: $ref: '#/components/schemas/ValidationError' type: array title: Detail type: object title: HTTPValidationError HealthResponse: properties: status: type: string title: Status description: Health status of the service instantiated_at: type: string format: date-time title: Instantiated At description: Timestamp when service was instantiated type: object required: - status - instantiated_at title: HealthResponse example: instantiated_at: '2025-06-10T12:00:00Z' status: ok InterfaceResponse: properties: type: type: string title: Type description: Type of the interface version: type: string title: Version description: Version of the interface route: type: string title: Route description: API route path type: object required: - type - version - route title: InterfaceResponse InternalServerErrorResponse: properties: detail: type: string title: Detail description: Error detail message error_code: anyOf: - type: string - type: 'null' title: Error Code description: Error code for categorization type: object required: - detail title: InternalServerErrorResponse example: detail: Internal server error error_code: INTERNAL_SERVER_ERROR KnowledgeConfig: properties: display_name: anyOf: - type: string - type: 'null' title: Display Name dbs: anyOf: - items: $ref: '#/components/schemas/KnowledgeDatabaseConfig' type: array - type: 'null' title: Dbs knowledge_instances: anyOf: - items: $ref: '#/components/schemas/KnowledgeInstanceConfig' type: array - type: 'null' title: Knowledge Instances type: object title: KnowledgeConfig description: Configuration for the Knowledge domain of the AgentOS KnowledgeDatabaseConfig: properties: db_id: type: string title: Db Id domain_config: anyOf: - $ref: '#/components/schemas/KnowledgeDomainConfig' - type: 'null' tables: items: type: string type: array title: Tables default: [] type: object required: - db_id title: KnowledgeDatabaseConfig description: Configuration for a knowledge database with its tables KnowledgeDomainConfig: properties: display_name: anyOf: - type: string - type: 'null' title: Display Name type: object title: KnowledgeDomainConfig description: Configuration for the Knowledge domain of the AgentOS KnowledgeInstanceConfig: properties: id: type: string title: Id name: type: string title: Name description: anyOf: - type: string - type: 'null' title: Description db_id: type: string title: Db Id table: type: string title: Table type: object required: - id - name - db_id - table title: KnowledgeInstanceConfig description: Configuration for a single knowledge instance MemoryConfig: properties: display_name: anyOf: - type: string - type: 'null' title: Display Name dbs: anyOf: - items: $ref: '#/components/schemas/DatabaseConfig_MemoryDomainConfig_' type: array - type: 'null' title: Dbs type: object title: MemoryConfig description: Configuration for the Memory domain of the AgentOS MemoryDomainConfig: properties: display_name: anyOf: - type: string - type: 'null' title: Display Name type: object title: MemoryDomainConfig description: Configuration for the Memory domain of the AgentOS Message: properties: contextId: anyOf: - type: string - type: 'null' title: Contextid extensions: anyOf: - items: type: string type: array - type: 'null' title: Extensions kind: type: string const: message title: Kind default: message messageId: type: string title: Messageid metadata: anyOf: - additionalProperties: true type: object - type: 'null' title: Metadata parts: items: $ref: '#/components/schemas/Part' type: array title: Parts referenceTaskIds: anyOf: - items: type: string type: array - type: 'null' title: Referencetaskids role: $ref: '#/components/schemas/Role' taskId: anyOf: - type: string - type: 'null' title: Taskid type: object required: - messageId - parts - role title: Message description: Represents a single message in the conversation between a user and an agent. Meta: properties: limit: type: integer minimum: 1 title: Limit description: Number of results per page default: 20 page: type: integer minimum: 1 title: Page description: Page number default: 1 type: object title: Meta description: Inline metadata schema for pagination. MetricsConfig: properties: display_name: anyOf: - type: string - type: 'null' title: Display Name dbs: anyOf: - items: $ref: '#/components/schemas/DatabaseConfig_MetricsDomainConfig_' type: array - type: 'null' title: Dbs type: object title: MetricsConfig description: Configuration for the Metrics domain of the AgentOS MetricsDomainConfig: properties: display_name: anyOf: - type: string - type: 'null' title: Display Name type: object title: MetricsDomainConfig description: Configuration for the Metrics domain of the AgentOS MetricsResponse: properties: metrics: items: $ref: '#/components/schemas/DayAggregatedMetrics' type: array title: Metrics description: List of daily aggregated metrics updated_at: anyOf: - type: string format: date-time - type: 'null' title: Updated At description: Timestamp of the most recent metrics update type: object required: - metrics title: MetricsResponse Model: properties: id: anyOf: - type: string - type: 'null' title: Id description: Model identifier provider: anyOf: - type: string - type: 'null' title: Provider description: Model provider name type: object title: Model ModelResponse: properties: name: anyOf: - type: string - type: 'null' title: Name description: Name of the model model: anyOf: - type: string - type: 'null' title: Model description: Model identifier provider: anyOf: - type: string - type: 'null' title: Provider description: Model provider name type: object title: ModelResponse NotFoundResponse: properties: detail: type: string title: Detail description: Error detail message error_code: anyOf: - type: string - type: 'null' title: Error Code description: Error code for categorization type: object required: - detail title: NotFoundResponse example: detail: Not found error_code: NOT_FOUND OptimizeMemoriesRequest: properties: user_id: type: string title: User Id description: User ID to optimize memories for model: anyOf: - type: string - type: 'null' title: Model description: 'Model to use for optimization in format ''provider:model_id'' (e.g., ''openai:gpt-4o-mini'', ''anthropic:claude-3-5-sonnet-20241022'', ''google:gemini-2.0-flash-exp''). If not specified, uses MemoryManager''s default model (gpt-4o).' apply: type: boolean title: Apply description: 'If True, apply optimization changes to database. If False, return preview only without saving.' default: true type: object required: - user_id title: OptimizeMemoriesRequest description: Schema for memory optimization request OptimizeMemoriesResponse: properties: memories: items: $ref: '#/components/schemas/UserMemorySchema' type: array title: Memories description: List of optimized memory objects memories_before: type: integer minimum: 0 title: Memories Before description: Number of memories before optimization memories_after: type: integer minimum: 0 title: Memories After description: Number of memories after optimization tokens_before: type: integer minimum: 0 title: Tokens Before description: Token count before optimization tokens_after: type: integer minimum: 0 title: Tokens After description: Token count after optimization tokens_saved: type: integer minimum: 0 title: Tokens Saved description: Number of tokens saved through optimization reduction_percentage: type: number maximum: 100 minimum: 0 title: Reduction Percentage description: Percentage of token reduction achieved type: object required: - memories - memories_before - memories_after - tokens_before - tokens_after - tokens_saved - reduction_percentage title: OptimizeMemoriesResponse description: Schema for memory optimization response PaginatedResponse_ApprovalResponse_: properties: data: items: $ref: '#/components/schemas/ApprovalResponse' type: array title: Data description: List of items for the current page meta: $ref: '#/components/schemas/PaginationInfo' description: Pagination metadata type: object required: - data - meta title: 'PaginatedResponse[ApprovalResponse]' PaginatedResponse_ComponentResponse_: properties: data: items: $ref: '#/components/schemas/ComponentResponse' type: array title: Data description: List of items for the current page meta: $ref: '#/components/schemas/PaginationInfo' description: Pagination metadata type: object required: - data - meta title: 'PaginatedResponse[ComponentResponse]' PaginatedResponse_ContentResponseSchema_: properties: data: items: $ref: '#/components/schemas/ContentResponseSchema' type: array title: Data description: List of items for the current page meta: $ref: '#/components/schemas/PaginationInfo' description: Pagination metadata type: object required: - data - meta title: 'PaginatedResponse[ContentResponseSchema]' PaginatedResponse_EvalSchema_: properties: data: items: $ref: '#/components/schemas/EvalSchema' type: array title: Data description: List of items for the current page meta: $ref: '#/components/schemas/PaginationInfo' description: Pagination metadata type: object required: - data - meta title: 'PaginatedResponse[EvalSchema]' PaginatedResponse_RegistryContentResponse_: properties: data: items: $ref: '#/components/schemas/RegistryContentResponse' type: array title: Data description: List of items for the current page meta: $ref: '#/components/schemas/PaginationInfo' description: Pagination metadata type: object required: - data - meta title: 'PaginatedResponse[RegistryContentResponse]' PaginatedResponse_ScheduleResponse_: properties: data: items: $ref: '#/components/schemas/ScheduleResponse' type: array title: Data description: List of items for the current page meta: $ref: '#/components/schemas/PaginationInfo' description: Pagination metadata type: object required: - data - meta title: 'PaginatedResponse[ScheduleResponse]' PaginatedResponse_ScheduleRunResponse_: properties: data: items: $ref: '#/components/schemas/ScheduleRunResponse' type: array title: Data description: List of items for the current page meta: $ref: '#/components/schemas/PaginationInfo' description: Pagination metadata type: object required: - data - meta title: 'PaginatedResponse[ScheduleRunResponse]' PaginatedResponse_SessionSchema_: properties: data: items: $ref: '#/components/schemas/SessionSchema' type: array title: Data description: List of items for the current page meta: $ref: '#/components/schemas/PaginationInfo' description: Pagination metadata type: object required: - data - meta title: 'PaginatedResponse[SessionSchema]' PaginatedResponse_TraceDetail_: properties: data: items: $ref: '#/components/schemas/TraceDetail' type: array title: Data description: List of items for the current page meta: $ref: '#/components/schemas/PaginationInfo' description: Pagination metadata type: object required: - data - meta title: 'PaginatedResponse[TraceDetail]' PaginatedResponse_TraceSessionStats_: properties: data: items: $ref: '#/components/schemas/TraceSessionStats' type: array title: Data description: List of items for the current page meta: $ref: '#/components/schemas/PaginationInfo' description: Pagination metadata type: object required: - data - meta title: 'PaginatedResponse[TraceSessionStats]' PaginatedResponse_TraceSummary_: properties: data: items: $ref: '#/components/schemas/TraceSummary' type: array title: Data description: List of items for the current page meta: $ref: '#/components/schemas/PaginationInfo' description: Pagination metadata type: object required: - data - meta title: 'PaginatedResponse[TraceSummary]' PaginatedResponse_UserMemorySchema_: properties: data: items: $ref: '#/components/schemas/UserMemorySchema' type: array title: Data description: List of items for the current page meta: $ref: '#/components/schemas/PaginationInfo' description: Pagination metadata type: object required: - data - meta title: 'PaginatedResponse[UserMemorySchema]' PaginatedResponse_UserStatsSchema_: properties: data: items: $ref: '#/components/schemas/UserStatsSchema' type: array title: Data description: List of items for the current page meta: $ref: '#/components/schemas/PaginationInfo' description: Pagination metadata type: object required: - data - meta title: 'PaginatedResponse[UserStatsSchema]' PaginatedResponse_VectorSearchResult_: properties: data: items: $ref: '#/components/schemas/VectorSearchResult' type: array title: Data description: List of items for the current page meta: $ref: '#/components/schemas/PaginationInfo' description: Pagination metadata type: object required: - data - meta title: 'PaginatedResponse[VectorSearchResult]' PaginationInfo: properties: page: type: integer minimum: 0 title: Page description: Current page number (0-indexed) default: 0 limit: type: integer minimum: 1 title: Limit description: Number of items per page default: 20 total_pages: type: integer minimum: 0 title: Total Pages description: Total number of pages default: 0 total_count: type: integer minimum: 0 title: Total Count description: Total count of items default: 0 search_time_ms: type: number minimum: 0 title: Search Time Ms description: Search execution time in milliseconds default: 0 type: object title: PaginationInfo Part: anyOf: - $ref: '#/components/schemas/TextPart' - $ref: '#/components/schemas/FilePart' - $ref: '#/components/schemas/DataPart' title: Part ReaderSchema: properties: id: type: string title: Id description: Unique identifier for the reader name: anyOf: - type: string - type: 'null' title: Name description: Name of the reader description: anyOf: - type: string - type: 'null' title: Description description: Description of the reader's capabilities chunkers: anyOf: - items: type: string type: array - type: 'null' title: Chunkers description: List of supported chunking strategies type: object required: - id title: ReaderSchema ReasoningMessage: properties: id: type: string title: Id role: type: string const: reasoning title: Role default: reasoning content: type: string title: Content encryptedValue: anyOf: - type: string - type: 'null' title: Encryptedvalue additionalProperties: true type: object required: - id - content title: ReasoningMessage description: A reasoning message containing the agent's internal reasoning process. RegistryContentResponse: properties: name: type: string title: Name type: $ref: '#/components/schemas/RegistryResourceType' id: anyOf: - type: string - type: 'null' title: Id description: anyOf: - type: string - type: 'null' title: Description metadata: anyOf: - additionalProperties: true type: object - type: 'null' title: Metadata type: object required: - name - type title: RegistryContentResponse RegistryResourceType: type: string enum: - tool - model - db - vector_db - schema - function - agent - team title: RegistryResourceType description: Types of resources that can be stored in a registry. RemoteContentSourceSchema: properties: id: type: string title: Id description: Unique identifier for the content source name: type: string title: Name description: Display name for the content source type: type: string title: Type description: 'Type of content source (s3, gcs, sharepoint, github, azureblob)' metadata: anyOf: - additionalProperties: true type: object - type: 'null' title: Metadata description: Custom metadata for the content source prefix: anyOf: - type: string - type: 'null' title: Prefix description: Default path prefix for this source type: object required: - id - name - type title: RemoteContentSourceSchema description: Schema for remote content source configuration. Role: type: string enum: - agent - user title: Role description: 'Identifies the sender of the message. `user` for the client, `agent` for the service.' RunAgentInput: properties: threadId: type: string title: Threadid runId: type: string title: Runid parentRunId: anyOf: - type: string - type: 'null' title: Parentrunid state: title: State messages: items: oneOf: - $ref: '#/components/schemas/DeveloperMessage' - $ref: '#/components/schemas/SystemMessage' - $ref: '#/components/schemas/AssistantMessage' - $ref: '#/components/schemas/UserMessage' - $ref: '#/components/schemas/ToolMessage' - $ref: '#/components/schemas/ActivityMessage' - $ref: '#/components/schemas/ReasoningMessage' discriminator: propertyName: role mapping: activity: '#/components/schemas/ActivityMessage' assistant: '#/components/schemas/AssistantMessage' developer: '#/components/schemas/DeveloperMessage' reasoning: '#/components/schemas/ReasoningMessage' system: '#/components/schemas/SystemMessage' tool: '#/components/schemas/ToolMessage' user: '#/components/schemas/UserMessage' type: array title: Messages tools: items: $ref: '#/components/schemas/Tool' type: array title: Tools context: items: $ref: '#/components/schemas/Context' type: array title: Context forwardedProps: title: Forwardedprops additionalProperties: true type: object required: - threadId - runId - state - messages - tools - context - forwardedProps title: RunAgentInput description: Input for running an agent. RunSchema: properties: run_id: type: string title: Run Id description: Unique identifier for the run parent_run_id: anyOf: - type: string - type: 'null' title: Parent Run Id description: Parent run ID if this is a nested run agent_id: anyOf: - type: string - type: 'null' title: Agent Id description: Agent ID that executed this run user_id: anyOf: - type: string - type: 'null' title: User Id description: User ID associated with the run status: anyOf: - type: string - type: 'null' title: Status description: 'Run status (PENDING, RUNNING, COMPLETED, ERROR, etc.)' run_input: anyOf: - type: string - type: 'null' title: Run Input description: Input provided to the run content: anyOf: - type: string - additionalProperties: true type: object - type: 'null' title: Content description: Output content from the run run_response_format: anyOf: - type: string - type: 'null' title: Run Response Format description: Format of the response (text/json) reasoning_content: anyOf: - type: string - type: 'null' title: Reasoning Content description: Reasoning content if reasoning was enabled reasoning_steps: anyOf: - items: additionalProperties: true type: object type: array - type: 'null' title: Reasoning Steps description: List of reasoning steps metrics: anyOf: - additionalProperties: true type: object - type: 'null' title: Metrics description: Performance and usage metrics messages: anyOf: - items: additionalProperties: true type: object type: array - type: 'null' title: Messages description: Message history for the run tools: anyOf: - items: additionalProperties: true type: object type: array - type: 'null' title: Tools description: Tools used in the run events: anyOf: - items: additionalProperties: true type: object type: array - type: 'null' title: Events description: Events generated during the run created_at: anyOf: - type: string format: date-time - type: 'null' title: Created At description: Run creation timestamp references: anyOf: - items: additionalProperties: true type: object type: array - type: 'null' title: References description: References cited in the run citations: anyOf: - additionalProperties: true type: object - type: 'null' title: Citations description: 'Citations from the model (e.g., from Gemini grounding/search)' reasoning_messages: anyOf: - items: additionalProperties: true type: object type: array - type: 'null' title: Reasoning Messages description: Reasoning process messages session_state: anyOf: - additionalProperties: true type: object - type: 'null' title: Session State description: Session state at the end of the run images: anyOf: - items: additionalProperties: true type: object type: array - type: 'null' title: Images description: Images included in the run videos: anyOf: - items: additionalProperties: true type: object type: array - type: 'null' title: Videos description: Videos included in the run audio: anyOf: - items: additionalProperties: true type: object type: array - type: 'null' title: Audio description: Audio files included in the run files: anyOf: - items: additionalProperties: true type: object type: array - type: 'null' title: Files description: Files included in the run response_audio: anyOf: - additionalProperties: true type: object - type: 'null' title: Response Audio description: Audio response if generated input_media: anyOf: - additionalProperties: true type: object - type: 'null' title: Input Media description: Input media attachments type: object required: - run_id title: RunSchema RunStatus: type: string enum: - PENDING - RUNNING - COMPLETED - PAUSED - CANCELLED - ERROR title: RunStatus description: State of the main run response ScheduleCreate: properties: name: type: string maxLength: 255 title: Name cron_expr: type: string maxLength: 128 title: Cron Expr endpoint: type: string maxLength: 512 title: Endpoint method: type: string maxLength: 10 title: Method default: POST description: anyOf: - type: string maxLength: 1024 - type: 'null' title: Description payload: anyOf: - additionalProperties: true type: object - type: 'null' title: Payload timezone: type: string maxLength: 64 title: Timezone default: UTC timeout_seconds: type: integer maximum: 86400 minimum: 1 title: Timeout Seconds default: 3600 max_retries: type: integer maximum: 10 minimum: 0 title: Max Retries default: 0 retry_delay_seconds: type: integer maximum: 3600 minimum: 1 title: Retry Delay Seconds default: 60 type: object required: - name - cron_expr - endpoint title: ScheduleCreate ScheduleResponse: properties: id: type: string title: Id name: type: string title: Name description: anyOf: - type: string - type: 'null' title: Description method: type: string title: Method endpoint: type: string title: Endpoint payload: anyOf: - additionalProperties: true type: object - type: 'null' title: Payload cron_expr: type: string title: Cron Expr timezone: type: string title: Timezone timeout_seconds: type: integer title: Timeout Seconds max_retries: type: integer title: Max Retries retry_delay_seconds: type: integer title: Retry Delay Seconds enabled: type: boolean title: Enabled next_run_at: anyOf: - type: integer - type: 'null' title: Next Run At created_at: anyOf: - type: integer - type: 'null' title: Created At updated_at: anyOf: - type: integer - type: 'null' title: Updated At type: object required: - id - name - method - endpoint - cron_expr - timezone - timeout_seconds - max_retries - retry_delay_seconds - enabled title: ScheduleResponse ScheduleRunResponse: properties: id: type: string title: Id schedule_id: type: string title: Schedule Id attempt: type: integer title: Attempt triggered_at: anyOf: - type: integer - type: 'null' title: Triggered At completed_at: anyOf: - type: integer - type: 'null' title: Completed At status: type: string title: Status status_code: anyOf: - type: integer - type: 'null' title: Status Code run_id: anyOf: - type: string - type: 'null' title: Run Id session_id: anyOf: - type: string - type: 'null' title: Session Id error: anyOf: - type: string - type: 'null' title: Error input: anyOf: - additionalProperties: true type: object - type: 'null' title: Input output: anyOf: - additionalProperties: true type: object - type: 'null' title: Output requirements: anyOf: - items: additionalProperties: true type: object type: array - type: 'null' title: Requirements created_at: anyOf: - type: integer - type: 'null' title: Created At type: object required: - id - schedule_id - attempt - status title: ScheduleRunResponse ScheduleStateResponse: properties: id: type: string title: Id name: type: string title: Name enabled: type: boolean title: Enabled next_run_at: anyOf: - type: integer - type: 'null' title: Next Run At updated_at: anyOf: - type: integer - type: 'null' title: Updated At type: object required: - id - name - enabled title: ScheduleStateResponse description: Trimmed response for state-changing operations (enable/disable). ScheduleUpdate: properties: name: anyOf: - type: string maxLength: 255 - type: 'null' title: Name cron_expr: anyOf: - type: string maxLength: 128 - type: 'null' title: Cron Expr endpoint: anyOf: - type: string maxLength: 512 - type: 'null' title: Endpoint method: anyOf: - type: string maxLength: 10 - type: 'null' title: Method description: anyOf: - type: string maxLength: 1024 - type: 'null' title: Description payload: anyOf: - additionalProperties: true type: object - type: 'null' title: Payload timezone: anyOf: - type: string maxLength: 64 - type: 'null' title: Timezone timeout_seconds: anyOf: - type: integer maximum: 86400 minimum: 1 - type: 'null' title: Timeout Seconds max_retries: anyOf: - type: integer maximum: 10 minimum: 0 - type: 'null' title: Max Retries retry_delay_seconds: anyOf: - type: integer maximum: 3600 minimum: 1 - type: 'null' title: Retry Delay Seconds type: object title: ScheduleUpdate SendMessageSuccessResponse: properties: id: anyOf: - type: string - type: integer - type: 'null' title: Id jsonrpc: type: string const: '2.0' title: Jsonrpc default: '2.0' result: anyOf: - $ref: '#/components/schemas/Task' - $ref: '#/components/schemas/Message' title: Result type: object required: - result title: SendMessageSuccessResponse description: Represents a successful JSON-RPC response for the `message/send` method. SessionConfig: properties: display_name: anyOf: - type: string - type: 'null' title: Display Name dbs: anyOf: - items: $ref: '#/components/schemas/DatabaseConfig_SessionDomainConfig_' type: array - type: 'null' title: Dbs type: object title: SessionConfig description: Configuration for the Session domain of the AgentOS SessionDomainConfig: properties: display_name: anyOf: - type: string - type: 'null' title: Display Name type: object title: SessionDomainConfig description: Configuration for the Session domain of the AgentOS SessionSchema: properties: session_id: type: string title: Session Id description: Unique identifier for the session session_name: type: string title: Session Name description: Human-readable name for the session session_state: anyOf: - additionalProperties: true type: object - type: 'null' title: Session State description: Current state data of the session created_at: anyOf: - type: string format: date-time - type: 'null' title: Created At description: Timestamp when session was created updated_at: anyOf: - type: string format: date-time - type: 'null' title: Updated At description: Timestamp when session was last updated type: object required: - session_id - session_name title: SessionSchema SessionType: type: string enum: - agent - team - workflow title: SessionType SlackChallengeResponse: properties: challenge: type: string title: Challenge description: Challenge string to echo back to Slack type: object required: - challenge title: SlackChallengeResponse SlackEventResponse: properties: status: type: string title: Status default: ok type: object title: SlackEventResponse SortOrder: type: string enum: - asc - desc title: SortOrder SourceFileSchema: properties: key: type: string title: Key description: Full path/key of the file name: type: string title: Name description: Display name (filename) size: anyOf: - type: integer - type: 'null' title: Size description: File size in bytes last_modified: anyOf: - type: string format: date-time - type: 'null' title: Last Modified description: ISO 8601 timestamp of last modification content_type: anyOf: - type: string - type: 'null' title: Content Type description: MIME type of the file type: object required: - key - name title: SourceFileSchema description: Schema for a file in a content source. SourceFilesResponseSchema: properties: source_id: type: string title: Source Id description: ID of the content source source_name: type: string title: Source Name description: Name of the content source prefix: anyOf: - type: string - type: 'null' title: Prefix description: Prefix filter that was applied folders: items: $ref: '#/components/schemas/SourceFolderSchema' type: array title: Folders description: Subfolders at this level files: items: $ref: '#/components/schemas/SourceFileSchema' type: array title: Files description: List of files at this level meta: $ref: '#/components/schemas/PaginationInfo' description: Pagination metadata type: object required: - source_id - source_name - meta title: SourceFilesResponseSchema description: Response schema for listing files in a content source. SourceFolderSchema: properties: prefix: type: string title: Prefix description: Full prefix to use for navigating into this folder name: type: string title: Name description: Display name of the folder is_empty: type: boolean title: Is Empty description: Whether the folder contains any files default: false type: object required: - prefix - name title: SourceFolderSchema description: Schema for a folder in a content source. SystemMessage: properties: id: type: string title: Id role: type: string const: system title: Role default: system content: type: string title: Content name: anyOf: - type: string - type: 'null' title: Name encryptedValue: anyOf: - type: string - type: 'null' title: Encryptedvalue additionalProperties: true type: object required: - id - content title: SystemMessage description: A system message. Task: properties: artifacts: anyOf: - items: $ref: '#/components/schemas/Artifact' type: array - type: 'null' title: Artifacts contextId: type: string title: Contextid history: anyOf: - items: $ref: '#/components/schemas/Message' type: array - type: 'null' title: History id: type: string title: Id kind: type: string const: task title: Kind default: task metadata: anyOf: - additionalProperties: true type: object - type: 'null' title: Metadata status: $ref: '#/components/schemas/TaskStatus' type: object required: - contextId - id - status title: Task description: 'Represents a single, stateful operation or conversation between a client and an agent.' TaskState: type: string enum: - submitted - working - input-required - completed - canceled - failed - rejected - auth-required - unknown title: TaskState description: Defines the lifecycle states of a Task. TaskStatus: properties: message: anyOf: - $ref: '#/components/schemas/Message' - type: 'null' state: $ref: '#/components/schemas/TaskState' timestamp: anyOf: - type: string - type: 'null' title: Timestamp examples: - '2023-10-27T10:00:00Z' type: object required: - state title: TaskStatus description: Represents the status of a task at a specific point in time. TeamResponse: properties: id: anyOf: - type: string - type: 'null' title: Id name: anyOf: - type: string - type: 'null' title: Name db_id: anyOf: - type: string - type: 'null' title: Db Id description: anyOf: - type: string - type: 'null' title: Description role: anyOf: - type: string - type: 'null' title: Role mode: anyOf: - type: string - type: 'null' title: Mode model: anyOf: - $ref: '#/components/schemas/ModelResponse' - type: 'null' tools: anyOf: - additionalProperties: true type: object - type: 'null' title: Tools sessions: anyOf: - additionalProperties: true type: object - type: 'null' title: Sessions knowledge: anyOf: - additionalProperties: true type: object - type: 'null' title: Knowledge memory: anyOf: - additionalProperties: true type: object - type: 'null' title: Memory reasoning: anyOf: - additionalProperties: true type: object - type: 'null' title: Reasoning default_tools: anyOf: - additionalProperties: true type: object - type: 'null' title: Default Tools system_message: anyOf: - additionalProperties: true type: object - type: 'null' title: System Message response_settings: anyOf: - additionalProperties: true type: object - type: 'null' title: Response Settings introduction: anyOf: - type: string - type: 'null' title: Introduction streaming: anyOf: - additionalProperties: true type: object - type: 'null' title: Streaming members: anyOf: - items: anyOf: - $ref: '#/components/schemas/AgentResponse' - $ref: '#/components/schemas/TeamResponse' type: array - type: 'null' title: Members metadata: anyOf: - additionalProperties: true type: object - type: 'null' title: Metadata input_schema: anyOf: - additionalProperties: true type: object - type: 'null' title: Input Schema is_component: type: boolean title: Is Component default: false current_version: anyOf: - type: integer - type: 'null' title: Current Version stage: anyOf: - type: string - type: 'null' title: Stage type: object title: TeamResponse TeamRunSchema: properties: run_id: type: string title: Run Id description: Unique identifier for the team run parent_run_id: anyOf: - type: string - type: 'null' title: Parent Run Id description: Parent run ID if this is a nested run team_id: anyOf: - type: string - type: 'null' title: Team Id description: Team ID that executed this run status: anyOf: - type: string - type: 'null' title: Status description: 'Run status (PENDING, RUNNING, COMPLETED, ERROR, etc.)' content: anyOf: - type: string - additionalProperties: true type: object - type: 'null' title: Content description: Output content from the team run reasoning_content: anyOf: - type: string - type: 'null' title: Reasoning Content description: Reasoning content if reasoning was enabled reasoning_steps: anyOf: - items: additionalProperties: true type: object type: array - type: 'null' title: Reasoning Steps description: List of reasoning steps run_input: anyOf: - type: string - type: 'null' title: Run Input description: Input provided to the run run_response_format: anyOf: - type: string - type: 'null' title: Run Response Format description: Format of the response (text/json) metrics: anyOf: - additionalProperties: true type: object - type: 'null' title: Metrics description: Performance and usage metrics tools: anyOf: - items: additionalProperties: true type: object type: array - type: 'null' title: Tools description: Tools used in the run messages: anyOf: - items: additionalProperties: true type: object type: array - type: 'null' title: Messages description: Message history for the run events: anyOf: - items: additionalProperties: true type: object type: array - type: 'null' title: Events description: Events generated during the run created_at: anyOf: - type: string format: date-time - type: 'null' title: Created At description: Run creation timestamp references: anyOf: - items: additionalProperties: true type: object type: array - type: 'null' title: References description: References cited in the run citations: anyOf: - additionalProperties: true type: object - type: 'null' title: Citations description: 'Citations from the model (e.g., from Gemini grounding/search)' reasoning_messages: anyOf: - items: additionalProperties: true type: object type: array - type: 'null' title: Reasoning Messages description: Reasoning process messages session_state: anyOf: - additionalProperties: true type: object - type: 'null' title: Session State description: Session state at the end of the run input_media: anyOf: - additionalProperties: true type: object - type: 'null' title: Input Media description: Input media attachments images: anyOf: - items: additionalProperties: true type: object type: array - type: 'null' title: Images description: Images included in the run videos: anyOf: - items: additionalProperties: true type: object type: array - type: 'null' title: Videos description: Videos included in the run audio: anyOf: - items: additionalProperties: true type: object type: array - type: 'null' title: Audio description: Audio files included in the run files: anyOf: - items: additionalProperties: true type: object type: array - type: 'null' title: Files description: Files included in the run response_audio: anyOf: - additionalProperties: true type: object - type: 'null' title: Response Audio description: Audio response if generated type: object required: - run_id title: TeamRunSchema TeamSessionDetailSchema: properties: session_id: type: string title: Session Id description: Unique session identifier session_name: type: string title: Session Name description: Human-readable session name user_id: anyOf: - type: string - type: 'null' title: User Id description: User ID associated with the session team_id: anyOf: - type: string - type: 'null' title: Team Id description: Team ID used in this session session_summary: anyOf: - additionalProperties: true type: object - type: 'null' title: Session Summary description: Summary of team interactions session_state: anyOf: - additionalProperties: true type: object - type: 'null' title: Session State description: Current state of the session metrics: anyOf: - additionalProperties: true type: object - type: 'null' title: Metrics description: Session metrics team_data: anyOf: - additionalProperties: true type: object - type: 'null' title: Team Data description: Team-specific data metadata: anyOf: - additionalProperties: true type: object - type: 'null' title: Metadata description: Additional metadata chat_history: anyOf: - items: additionalProperties: true type: object type: array - type: 'null' title: Chat History description: Complete chat history created_at: anyOf: - type: string format: date-time - type: 'null' title: Created At description: Session creation timestamp updated_at: anyOf: - type: string format: date-time - type: 'null' title: Updated At description: Last update timestamp total_tokens: anyOf: - type: integer - type: 'null' title: Total Tokens description: Total tokens used in this session type: object required: - session_id - session_name title: TeamSessionDetailSchema TeamSummaryResponse: properties: id: anyOf: - type: string - type: 'null' title: Id description: Unique identifier for the team name: anyOf: - type: string - type: 'null' title: Name description: Name of the team description: anyOf: - type: string - type: 'null' title: Description description: Description of the team db_id: anyOf: - type: string - type: 'null' title: Db Id description: Database identifier mode: anyOf: - type: string - type: 'null' title: Mode description: 'Team execution mode (coordinate, route, broadcast, tasks)' type: object title: TeamSummaryResponse TextInputContent: properties: type: type: string const: text title: Type default: text text: type: string title: Text additionalProperties: true type: object required: - text title: TextInputContent description: A text fragment in a multimodal user message. TextPart: properties: kind: type: string const: text title: Kind default: text metadata: anyOf: - additionalProperties: true type: object - type: 'null' title: Metadata text: type: string title: Text type: object required: - text title: TextPart description: Represents a text segment within a message or artifact. Tool: properties: name: type: string title: Name description: type: string title: Description parameters: title: Parameters additionalProperties: true type: object required: - name - description - parameters title: Tool description: A tool definition. ToolCall: properties: id: type: string title: Id type: type: string const: function title: Type default: function function: $ref: '#/components/schemas/FunctionCall' encryptedValue: anyOf: - type: string - type: 'null' title: Encryptedvalue additionalProperties: true type: object required: - id - function title: ToolCall description: 'A tool call, modelled after OpenAI tool calls.' ToolMessage: properties: id: type: string title: Id role: type: string const: tool title: Role default: tool content: type: string title: Content toolCallId: type: string title: Toolcallid error: anyOf: - type: string - type: 'null' title: Error encryptedValue: anyOf: - type: string - type: 'null' title: Encryptedvalue additionalProperties: true type: object required: - id - content - toolCallId title: ToolMessage description: A tool result message. TraceDetail: properties: trace_id: type: string title: Trace Id description: Unique trace identifier name: type: string title: Name description: Trace name (usually root span name) status: type: string title: Status description: 'Overall status (OK, ERROR)' duration: type: string title: Duration description: Human-readable total duration start_time: type: string format: date-time title: Start Time description: Trace start time (Pydantic auto-serializes to ISO 8601) end_time: type: string format: date-time title: End Time description: Trace end time (Pydantic auto-serializes to ISO 8601) total_spans: type: integer title: Total Spans description: Total number of spans in this trace error_count: type: integer title: Error Count description: Number of spans with errors input: anyOf: - type: string - type: 'null' title: Input description: Input to the agent/workflow output: anyOf: - type: string - type: 'null' title: Output description: Output from the agent/workflow error: anyOf: - type: string - type: 'null' title: Error description: Error message if status is ERROR run_id: anyOf: - type: string - type: 'null' title: Run Id description: Associated run ID session_id: anyOf: - type: string - type: 'null' title: Session Id description: Associated session ID user_id: anyOf: - type: string - type: 'null' title: User Id description: Associated user ID agent_id: anyOf: - type: string - type: 'null' title: Agent Id description: Associated agent ID team_id: anyOf: - type: string - type: 'null' title: Team Id description: Associated team ID workflow_id: anyOf: - type: string - type: 'null' title: Workflow Id description: Associated workflow ID created_at: type: string format: date-time title: Created At description: Time when trace was created (Pydantic auto-serializes to ISO 8601) tree: items: $ref: '#/components/schemas/TraceNode' type: array title: Tree description: Hierarchical tree of spans (root nodes) type: object required: - trace_id - name - status - duration - start_time - end_time - total_spans - error_count - created_at - tree title: TraceDetail description: Detailed trace information with hierarchical span tree TraceNode: properties: id: type: string title: Id description: Span ID name: type: string title: Name description: 'Span name (e.g., ''agent.run'', ''llm.invoke'')' type: type: string title: Type description: 'Span kind (AGENT, TEAM, WORKFLOW, LLM, TOOL)' duration: type: string title: Duration description: 'Human-readable duration (e.g., ''123ms'', ''1.5s'')' start_time: type: string format: date-time title: Start Time description: Start time (Pydantic auto-serializes to ISO 8601) end_time: type: string format: date-time title: End Time description: End time (Pydantic auto-serializes to ISO 8601) status: type: string title: Status description: 'Status code (OK, ERROR)' input: anyOf: - type: string - type: 'null' title: Input description: Input to the span output: anyOf: - type: string - type: 'null' title: Output description: Output from the span error: anyOf: - type: string - type: 'null' title: Error description: Error message if status is ERROR spans: anyOf: - items: $ref: '#/components/schemas/TraceNode' type: array - type: 'null' title: Spans description: Child spans in the trace hierarchy step_type: anyOf: - type: string - type: 'null' title: Step Type description: 'Workflow step type (Step, Condition, function, Agent, Team)' metadata: anyOf: - additionalProperties: true type: object - type: 'null' title: Metadata description: Additional span attributes and data extra_data: anyOf: - additionalProperties: true type: object - type: 'null' title: Extra Data description: Flexible field for custom attributes and additional data type: object required: - id - name - type - duration - start_time - end_time - status title: TraceNode description: Recursive node structure for rendering trace hierarchy in the frontend TraceSearchGroupBy: type: string enum: - run - session title: TraceSearchGroupBy description: Grouping options for trace search results. TraceSearchRequest: properties: filter: anyOf: - additionalProperties: true type: object - type: 'null' title: Filter description: 'FilterExpr DSL as JSON dict. Supports operators: EQ, NEQ, GT, GTE, LT, LTE, IN, CONTAINS, STARTSWITH, AND, OR, NOT.' group_by: $ref: '#/components/schemas/TraceSearchGroupBy' description: 'Grouping mode: ''run'' returns individual TraceDetail, ''session'' returns aggregated TraceSessionStats.' default: run page: type: integer minimum: 1 title: Page description: Page number (1-indexed) default: 1 limit: type: integer maximum: 100 minimum: 1 title: Limit description: Number of traces per page (max 100) default: 20 type: object title: TraceSearchRequest description: |- Request body for POST /traces/search with advanced filtering. The filter field accepts a FilterExpr DSL dict supporting composable queries with AND/OR/NOT logic and operators like EQ, NEQ, GT, GTE, LT, LTE, IN, CONTAINS, STARTSWITH. Example for run grouping (default): { "filter": { "op": "AND", "conditions": [ {"op": "EQ", "key": "status", "value": "OK"}, {"op": "CONTAINS", "key": "user_id", "value": "admin"} ] }, "group_by": "run", "page": 1, "limit": 20 } Example for session grouping: { "filter": {"op": "EQ", "key": "agent_id", "value": "my-agent"}, "group_by": "session", "page": 1, "limit": 20 } TraceSessionStats: properties: session_id: type: string title: Session Id description: Session identifier user_id: anyOf: - type: string - type: 'null' title: User Id description: User ID associated with the session agent_id: anyOf: - type: string - type: 'null' title: Agent Id description: Agent ID(s) used in the session team_id: anyOf: - type: string - type: 'null' title: Team Id description: Team ID associated with the session workflow_id: anyOf: - type: string - type: 'null' title: Workflow Id description: Workflow ID associated with the session total_traces: type: integer title: Total Traces description: Total number of traces in this session first_trace_at: type: string format: date-time title: First Trace At description: Time of first trace (Pydantic auto-serializes to ISO 8601) last_trace_at: type: string format: date-time title: Last Trace At description: Time of last trace (Pydantic auto-serializes to ISO 8601) type: object required: - session_id - total_traces - first_trace_at - last_trace_at title: TraceSessionStats description: Aggregated trace statistics grouped by session TraceSummary: properties: trace_id: type: string title: Trace Id description: Unique trace identifier name: type: string title: Name description: Trace name (usually root span name) status: type: string title: Status description: 'Overall status (OK, ERROR, UNSET)' duration: type: string title: Duration description: Human-readable total duration start_time: type: string format: date-time title: Start Time description: Trace start time (Pydantic auto-serializes to ISO 8601) end_time: type: string format: date-time title: End Time description: Trace end time (Pydantic auto-serializes to ISO 8601) total_spans: type: integer title: Total Spans description: Total number of spans in this trace error_count: type: integer title: Error Count description: Number of spans with errors input: anyOf: - type: string - type: 'null' title: Input description: Input to the agent run_id: anyOf: - type: string - type: 'null' title: Run Id description: Associated run ID session_id: anyOf: - type: string - type: 'null' title: Session Id description: Associated session ID user_id: anyOf: - type: string - type: 'null' title: User Id description: Associated user ID agent_id: anyOf: - type: string - type: 'null' title: Agent Id description: Associated agent ID team_id: anyOf: - type: string - type: 'null' title: Team Id description: Associated team ID workflow_id: anyOf: - type: string - type: 'null' title: Workflow Id description: Associated workflow ID created_at: type: string format: date-time title: Created At description: Time when trace was created (Pydantic auto-serializes to ISO 8601) type: object required: - trace_id - name - status - duration - start_time - end_time - total_spans - error_count - created_at title: TraceSummary description: Summary information for trace list view TracesConfig: properties: display_name: anyOf: - type: string - type: 'null' title: Display Name dbs: anyOf: - items: $ref: '#/components/schemas/DatabaseConfig_TracesDomainConfig_' type: array - type: 'null' title: Dbs type: object title: TracesConfig description: Configuration for the Traces domain of the AgentOS TracesDomainConfig: properties: display_name: anyOf: - type: string - type: 'null' title: Display Name type: object title: TracesDomainConfig description: Configuration for the Traces domain of the AgentOS UnauthenticatedResponse: properties: detail: type: string title: Detail description: Error detail message error_code: anyOf: - type: string - type: 'null' title: Error Code description: Error code for categorization type: object required: - detail title: UnauthenticatedResponse example: detail: Unauthenticated access error_code: UNAUTHENTICATED UpdateEvalRunRequest: properties: name: type: string maxLength: 255 minLength: 1 title: Name description: New name for the evaluation run type: object required: - name title: UpdateEvalRunRequest UpdateSessionRequest: properties: session_name: anyOf: - type: string - type: 'null' title: Session Name description: Updated session name session_state: anyOf: - additionalProperties: true type: object - type: 'null' title: Session State description: Updated session state metadata: anyOf: - additionalProperties: true type: object - type: 'null' title: Metadata description: Updated metadata summary: anyOf: - additionalProperties: true type: object - type: 'null' title: Summary description: Session summary type: object title: UpdateSessionRequest UserMemoryCreateSchema: properties: memory: type: string maxLength: 5000 minLength: 1 title: Memory description: Memory content text user_id: anyOf: - type: string - type: 'null' title: User Id description: User ID who owns this memory topics: anyOf: - items: type: string type: array - type: 'null' title: Topics description: Topics or tags to categorize the memory type: object required: - memory title: UserMemoryCreateSchema description: Define the payload expected for creating a new user memory UserMemorySchema: properties: memory_id: type: string title: Memory Id description: Unique identifier for the memory memory: type: string title: Memory description: Memory content text topics: anyOf: - items: type: string type: array - type: 'null' title: Topics description: Topics or tags associated with the memory agent_id: anyOf: - type: string - type: 'null' title: Agent Id description: Agent ID associated with this memory team_id: anyOf: - type: string - type: 'null' title: Team Id description: Team ID associated with this memory user_id: anyOf: - type: string - type: 'null' title: User Id description: User ID who owns this memory updated_at: anyOf: - type: string format: date-time - type: 'null' title: Updated At description: Timestamp when memory was last updated type: object required: - memory_id - memory title: UserMemorySchema UserMessage: properties: id: type: string title: Id role: type: string const: user title: Role default: user content: anyOf: - type: string - items: oneOf: - $ref: '#/components/schemas/TextInputContent' - $ref: '#/components/schemas/BinaryInputContent' discriminator: propertyName: type mapping: binary: '#/components/schemas/BinaryInputContent' text: '#/components/schemas/TextInputContent' type: array title: Content name: anyOf: - type: string - type: 'null' title: Name encryptedValue: anyOf: - type: string - type: 'null' title: Encryptedvalue additionalProperties: true type: object required: - id - content title: UserMessage description: A user message supporting text or multimodal content. UserStatsSchema: properties: user_id: type: string title: User Id description: User ID total_memories: type: integer minimum: 0 title: Total Memories description: Total number of memories for this user last_memory_updated_at: anyOf: - type: string format: date-time - type: 'null' title: Last Memory Updated At description: Timestamp of the most recent memory update type: object required: - user_id - total_memories title: UserStatsSchema description: Schema for user memory statistics ValidationError: properties: loc: items: anyOf: - type: string - type: integer type: array title: Location msg: type: string title: Message type: type: string title: Error Type input: title: Input ctx: type: object title: Context type: object required: - loc - msg - type title: ValidationError ValidationErrorResponse: properties: detail: type: string title: Detail description: Error detail message error_code: anyOf: - type: string - type: 'null' title: Error Code description: Error code for categorization type: object required: - detail title: ValidationErrorResponse example: detail: Validation error error_code: VALIDATION_ERROR VectorDbSchema: properties: id: type: string title: Id description: Unique identifier for the vector database name: anyOf: - type: string - type: 'null' title: Name description: Name of the vector database description: anyOf: - type: string - type: 'null' title: Description description: Description of the vector database search_types: anyOf: - items: type: string type: array - type: 'null' title: Search Types description: 'List of supported search types (vector, keyword, hybrid)' type: object required: - id title: VectorDbSchema VectorSearchRequestSchema: properties: query: type: string title: Query description: The search query text db_id: anyOf: - type: string - type: 'null' title: Db Id description: Database ID to search in knowledge_id: anyOf: - type: string - type: 'null' title: Knowledge Id description: Knowledge base ID to search in vector_db_ids: anyOf: - items: type: string type: array - type: 'null' title: Vector Db Ids description: List of vector database IDs to search in search_type: anyOf: - type: string - type: 'null' title: Search Type description: 'The type of search to perform (vector, keyword, hybrid)' max_results: anyOf: - type: integer maximum: 1000 minimum: 1 - type: 'null' title: Max Results description: The maximum number of results to return filters: anyOf: - additionalProperties: true type: object - type: 'null' title: Filters description: Filters to apply to the search results meta: anyOf: - $ref: '#/components/schemas/Meta' - type: 'null' description: Pagination metadata. Limit and page number to return a subset of results. type: object required: - query title: VectorSearchRequestSchema description: Schema for vector search request. VectorSearchResult: properties: id: type: string title: Id description: Unique identifier for the search result document content: type: string title: Content description: Content text of the document name: anyOf: - type: string - type: 'null' title: Name description: Name of the document meta_data: anyOf: - additionalProperties: true type: object - type: 'null' title: Meta Data description: Metadata associated with the document usage: anyOf: - additionalProperties: true type: object - type: 'null' title: Usage description: 'Usage statistics (e.g., token counts)' reranking_score: anyOf: - type: number maximum: 1 minimum: 0 - type: 'null' title: Reranking Score description: Reranking score for relevance content_id: anyOf: - type: string - type: 'null' title: Content Id description: ID of the source content content_origin: anyOf: - type: string - type: 'null' title: Content Origin description: Origin URL or source of the content size: anyOf: - type: integer minimum: 0 - type: 'null' title: Size description: Size of the content in bytes type: object required: - id - content title: VectorSearchResult description: Schema for search result documents. WorkflowResponse: properties: id: anyOf: - type: string - type: 'null' title: Id description: Unique identifier for the workflow name: anyOf: - type: string - type: 'null' title: Name description: Name of the workflow db_id: anyOf: - type: string - type: 'null' title: Db Id description: Database identifier description: anyOf: - type: string - type: 'null' title: Description description: Description of the workflow input_schema: anyOf: - additionalProperties: true type: object - type: 'null' title: Input Schema description: Input schema for the workflow steps: anyOf: - items: additionalProperties: true type: object type: array - type: 'null' title: Steps description: List of workflow steps agent: anyOf: - $ref: '#/components/schemas/AgentResponse' - type: 'null' description: Agent configuration if used team: anyOf: - $ref: '#/components/schemas/TeamResponse' - type: 'null' description: Team configuration if used metadata: anyOf: - additionalProperties: true type: object - type: 'null' title: Metadata description: Additional metadata workflow_agent: type: boolean title: Workflow Agent description: Whether this workflow uses a WorkflowAgent default: false is_component: type: boolean title: Is Component description: Whether this workflow was created via Builder default: false current_version: anyOf: - type: integer - type: 'null' title: Current Version description: Current published version number stage: anyOf: - type: string - type: 'null' title: Stage description: Stage of the loaded config (draft/published) type: object title: WorkflowResponse WorkflowRunSchema: properties: run_id: type: string title: Run Id description: Unique identifier for the workflow run run_input: anyOf: - type: string - type: 'null' title: Run Input description: Input provided to the workflow events: anyOf: - items: additionalProperties: true type: object type: array - type: 'null' title: Events description: Events generated during the workflow workflow_id: anyOf: - type: string - type: 'null' title: Workflow Id description: Workflow ID that was executed user_id: anyOf: - type: string - type: 'null' title: User Id description: User ID associated with the run content: anyOf: - type: string - additionalProperties: true type: object - type: 'null' title: Content description: Output content from the workflow content_type: anyOf: - type: string - type: 'null' title: Content Type description: Type of content returned status: anyOf: - type: string - type: 'null' title: Status description: Status of the workflow run step_results: anyOf: - items: additionalProperties: true type: object type: array - type: 'null' title: Step Results description: Results from each workflow step step_executor_runs: anyOf: - items: additionalProperties: true type: object type: array - type: 'null' title: Step Executor Runs description: Executor runs for each step metrics: anyOf: - additionalProperties: true type: object - type: 'null' title: Metrics description: Performance and usage metrics created_at: anyOf: - type: string format: date-time - type: 'null' title: Created At description: Run creation timestamp reasoning_content: anyOf: - type: string - type: 'null' title: Reasoning Content description: Reasoning content if reasoning was enabled reasoning_steps: anyOf: - items: additionalProperties: true type: object type: array - type: 'null' title: Reasoning Steps description: List of reasoning steps references: anyOf: - items: additionalProperties: true type: object type: array - type: 'null' title: References description: References cited in the workflow citations: anyOf: - additionalProperties: true type: object - type: 'null' title: Citations description: 'Citations from the model (e.g., from Gemini grounding/search)' reasoning_messages: anyOf: - items: additionalProperties: true type: object type: array - type: 'null' title: Reasoning Messages description: Reasoning process messages images: anyOf: - items: additionalProperties: true type: object type: array - type: 'null' title: Images description: Images included in the workflow videos: anyOf: - items: additionalProperties: true type: object type: array - type: 'null' title: Videos description: Videos included in the workflow audio: anyOf: - items: additionalProperties: true type: object type: array - type: 'null' title: Audio description: Audio files included in the workflow files: anyOf: - items: additionalProperties: true type: object type: array - type: 'null' title: Files description: Files included in the workflow response_audio: anyOf: - additionalProperties: true type: object - type: 'null' title: Response Audio description: Audio response if generated type: object required: - run_id title: WorkflowRunSchema WorkflowSessionDetailSchema: properties: user_id: anyOf: - type: string - type: 'null' title: User Id description: User ID associated with the session workflow_id: anyOf: - type: string - type: 'null' title: Workflow Id description: Workflow ID used in this session workflow_name: anyOf: - type: string - type: 'null' title: Workflow Name description: Name of the workflow session_id: type: string title: Session Id description: Unique session identifier session_name: type: string title: Session Name description: Human-readable session name session_data: anyOf: - additionalProperties: true type: object - type: 'null' title: Session Data description: Complete session data session_state: anyOf: - additionalProperties: true type: object - type: 'null' title: Session State description: Current workflow state workflow_data: anyOf: - additionalProperties: true type: object - type: 'null' title: Workflow Data description: Workflow-specific data metadata: anyOf: - additionalProperties: true type: object - type: 'null' title: Metadata description: Additional metadata created_at: anyOf: - type: string format: date-time - type: 'null' title: Created At description: Session creation timestamp updated_at: anyOf: - type: string format: date-time - type: 'null' title: Updated At description: Last update timestamp type: object required: - session_id - session_name title: WorkflowSessionDetailSchema WorkflowSummaryResponse: properties: id: anyOf: - type: string - type: 'null' title: Id description: Unique identifier for the workflow name: anyOf: - type: string - type: 'null' title: Name description: Name of the workflow description: anyOf: - type: string - type: 'null' title: Description description: Description of the workflow db_id: anyOf: - type: string - type: 'null' title: Db Id description: Database identifier is_component: type: boolean title: Is Component description: Whether this workflow was created via Builder default: false current_version: anyOf: - type: integer - type: 'null' title: Current Version description: Current published version number stage: anyOf: - type: string - type: 'null' title: Stage description: Stage of the loaded config (draft/published) type: object title: WorkflowSummaryResponse securitySchemes: HTTPBearer: type: http scheme: bearer