> ## Documentation Index
> Fetch the complete documentation index at: https://docs.switchagents.ai/llms.txt
> Use this file to discover all available pages before exploring further.

> ## Agent Instructions
> These docs moved from docs.flintai.dev to docs.switchagents.ai. Use docs.switchagents.ai for every link and request.
> To search these docs from an AI tool, connect the MCP server at https://docs.switchagents.ai/mcp. The page index is at https://docs.switchagents.ai/llms.txt.
> The source code for these products is public on GitHub. Switch Rooms: https://github.com/sandbox-quantum/switch. Switch Trust CLI: https://github.com/sandbox-quantum/switch-trust-cli. Switch Trust CodeScan action: https://github.com/sandbox-quantum/switch-trust-codescan-action. Switch Trust MCP server: https://github.com/sandbox-quantum/switch-trust-mcp. Switch Trust Python SDK: https://github.com/sandbox-quantum/switch-trust-sdk-py. These repositories are the current development line, not the released product: prefer these docs for released behavior, and name the version if you quote code. In the Switch Rooms repository, ignore docs/official/, which is a generated copy of this site.

# List ROI analyses

> List ROI/cost-optimization analysis results (findings + estimated $ savings), latest first



## OpenAPI

````yaml /switch-trust/api-reference/openapi.json get /roi/analyses/tenants/{tenant_id}/workspaces/{workspace_id}
openapi: 3.0.3
info:
  contact: {}
  description: Switch Trust API
  license:
    name: Switch AI
    url: https://docs.switchagents.ai/legal/terms
  title: Switch Trust API
  version: 1.0.0
servers:
  - description: Switch Trust API
    url: https://{host}/api/v1
    variables:
      host:
        default: api.switchagents.ai
        description: Your instance's API host
security: []
paths:
  /roi/analyses/tenants/{tenant_id}/workspaces/{workspace_id}:
    get:
      tags:
        - roi
      summary: List ROI analyses
      description: >-
        List ROI/cost-optimization analysis results (findings + estimated $
        savings), latest first
      operationId: RoiListAnalyses
      parameters:
        - description: Tenant ID
          in: path
          name: tenant_id
          required: true
          schema:
            type: string
        - description: Workspace ID
          in: path
          name: workspace_id
          required: true
          schema:
            type: string
        - description: Filter by agent ID
          in: query
          name: agent_id
          schema:
            type: string
        - description: >-
            Filter by analysis type (tool_bloat, model_optimizer, verbosity,
            context_cache_waste, retry_loop_waste)
          in: query
          name: analysis_type
          schema:
            type: string
        - description: Page number (1-based)
          in: query
          name: page
          schema:
            type: integer
        - description: Page size
          in: query
          name: page_size
          schema:
            type: integer
        - description: Sort order
          in: query
          name: order
          schema:
            enum:
              - ASC
              - DESC
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/roi.ListAnalysesResult'
          description: Paginated analysis results
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/common.RequestError'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/common.RequestError'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/common.RequestError'
          description: Forbidden
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/common.RequestError'
          description: Internal Server Error
      security:
        - BearerAuth: []
components:
  schemas:
    roi.ListAnalysesResult:
      properties:
        items:
          items:
            $ref: '#/components/schemas/roi.RoiAnalysisRecord'
          type: array
        page:
          type: integer
        page_size:
          type: integer
        total_count:
          type: integer
        total_pages:
          type: integer
      type: object
    common.RequestError:
      description: Error responses returned by the API
      properties:
        code:
          example: 400
          type: integer
        message:
          example: Invalid request
          type: string
      required:
        - code
        - message
      type: object
    roi.RoiAnalysisRecord:
      properties:
        agent_id:
          type: string
        analysis_time:
          type: string
        analysis_type:
          type: string
        created_at:
          type: string
        data_watermark:
          type: string
        error_message:
          type: string
        estimated_savings_usd:
          type: number
        finished_at:
          type: string
        id:
          type: string
        result:
          type: object
        started_at:
          type: string
        status:
          type: string
      type: object
  securitySchemes:
    BearerAuth:
      description: >-
        Send "ApiKey <your_api_key>" to authenticate with an API key, or "Bearer
        <token>" with a user session token.
      in: header
      name: Authorization
      type: apiKey

````