openapi: 3.0.3 info: title: Agno AgentOS Agents Workflows API description: 'AgentOS is Agno''s self-hostable runtime and API server. It turns agents, teams, and workflows defined with the open-source Agno Python framework into a RESTful API exposing runs, sessions, memory, knowledge, and evals. There is no single Agno-operated multi-tenant base URL - every AgentOS instance runs on infrastructure you control, defaulting to http://localhost:7777 in local development. When a Security Key (OS_SECURITY_KEY) is configured, all routes require an "Authorization: Bearer " header; otherwise authentication is disabled. This document models the endpoints described in Agno''s public API reference (docs.agno.com/reference-api) plus the sibling endpoints named in Agno''s own documentation index (docs.agno.com/llms.txt). Some request/response field names are reconstructed from that reference content rather than a downloaded machine-readable OpenAPI file, so treat schemas as representative rather than byte-exact.' version: '1.0' contact: name: Agno url: https://www.agno.com license: name: Mozilla Public License 2.0 url: https://github.com/agno-agi/agno/blob/main/LICENSE servers: - url: http://localhost:7777 description: Local AgentOS (default self-hosted address) security: - bearerAuth: [] - {} tags: - name: Workflows description: Run and manage multi-step workflows. paths: /workflows: get: operationId: listWorkflows tags: - Workflows summary: List all workflows description: Lists all workflows configured on this AgentOS instance. responses: '200': description: A list of workflows. content: application/json: schema: type: array items: $ref: '#/components/schemas/WorkflowResponse' /workflows/{workflow_id}: get: operationId: getWorkflowDetails tags: - Workflows summary: Get workflow details parameters: - name: workflow_id in: path required: true schema: type: string responses: '200': description: The workflow definition. content: application/json: schema: $ref: '#/components/schemas/WorkflowResponse' /workflows/{workflow_id}/runs: post: operationId: executeWorkflow tags: - Workflows summary: Execute a workflow description: 'Executes a multi-step workflow. Streaming mode (stream=true, the default) returns text/event-stream events such as "event: RunStarted"; non-streaming mode returns the complete result as JSON.' parameters: - name: workflow_id in: path required: true schema: type: string requestBody: required: true content: application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/RunRequest' responses: '200': description: Run result (JSON) or SSE stream (text/event-stream). content: application/json: schema: $ref: '#/components/schemas/RunResponse' text/event-stream: schema: type: string '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '404': $ref: '#/components/responses/NotFound' '422': $ref: '#/components/responses/ValidationError' '500': description: Execution failure. /workflows/{workflow_id}/runs/{run_id}: get: operationId: getWorkflowRun tags: - Workflows summary: Get a workflow run parameters: - name: workflow_id in: path required: true schema: type: string - name: run_id in: path required: true schema: type: string responses: '200': description: The workflow run. content: application/json: schema: $ref: '#/components/schemas/RunResponse' delete: operationId: cancelWorkflowRun tags: - Workflows summary: Cancel a workflow run parameters: - name: workflow_id in: path required: true schema: type: string - name: run_id in: path required: true schema: type: string responses: '200': description: Cancellation acknowledged. components: schemas: WorkflowResponse: type: object properties: id: type: string name: type: string steps: type: array items: type: object RunResponse: type: object properties: run_id: type: string session_id: type: string content: type: string status: type: string RunRequest: type: object required: - message properties: message: type: string stream: type: boolean default: true session_id: type: string user_id: type: string files: type: array items: type: string format: binary version: type: integer background: type: boolean default: false monitor: type: boolean default: true responses: ValidationError: description: Request failed schema validation. NotFound: description: Resource not found. Unauthorized: description: Missing or invalid bearer token. BadRequest: description: Invalid input or configuration. securitySchemes: bearerAuth: type: http scheme: bearer description: HTTP Bearer token equal to OS_SECURITY_KEY. Required only when a Security Key is configured on the AgentOS instance; disabled otherwise.