> ## 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.

# Get an agent evaluation by ID

> Retrieve a single agent evaluation by its UUID



## OpenAPI

````yaml /switch-trust/api-reference/openapi.json get /eval/agent-evaluations/tenants/{tenant_id}/workspaces/{workspace_id}/{agent_evaluation_id}
openapi: 3.0.3
info:
  contact: {}
  description: Switch Trust API
  license:
    name: Switch AI
    url: https://www.sandboxaq.com/legal/eula
  title: Switch Trust API
  version: 1.0.0
servers:
  - description: Flint AI Platform (per-tenant instance)
    url: https://{instance}.flintai.dev/api/v1
    variables:
      instance:
        default: your-instance
        description: Your Flint AI instance subdomain
security: []
paths:
  /eval/agent-evaluations/tenants/{tenant_id}/workspaces/{workspace_id}/{agent_evaluation_id}:
    get:
      tags:
        - eval
      summary: Get an agent evaluation by ID
      description: Retrieve a single agent evaluation by its UUID
      operationId: GetAgentEvaluation
      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: Agent evaluation ID (UUID)
          in: path
          name: agent_evaluation_id
          required: true
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/eval.AgentEvaluationRecord'
          description: Agent evaluation details
        '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
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/common.RequestError'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/common.RequestError'
          description: Internal Server Error
      security:
        - BearerAuth: []
components:
  schemas:
    eval.AgentEvaluationRecord:
      properties:
        agent_id:
          type: string
        config:
          type: object
        created_at:
          type: string
        evaluation_id:
          type: string
        evaluation_name:
          description: Joined from eval_evaluations.
          type: string
        id:
          type: string
        latest_run_cancel_requested:
          type: boolean
        latest_run_finished_at:
          type: string
        latest_run_id:
          description: >-
            Latest run, populated via lateral join on eval_evaluation_runs.

            LatestRunID is what a row-level "stop run" action posts to, and

            LatestRunCancelRequested lets the row show the pending state during
            the

            window between the 202 and the worker writing 'cancelled'. Both are
            nil

            when the evaluation has never run.
          type: string
        latest_run_progress:
          type: number
        latest_run_started_at:
          type: string
        latest_run_status:
          type: string
        latest_run_summary:
          type: object
        latest_scored_run_finished_at:
          type: string
        latest_scored_run_id:
          description: >-
            Latest run carrying a numeric score, via its own lateral. A failed,

            queued, or running run has no summary, so LatestRunSummary is null
            for

            exactly the cases where a score is still worth showing. Consumers
            read the

            state from LatestRun* and the numbers from here: folding the two
            together

            would hide the failure. Equal to LatestRunID when the newest run is
            scored,

            and all nil when no run has ever scored.
          type: string
        latest_scored_run_summary:
          type: object
        name:
          type: string
        run_requested:
          type: boolean
        schedule:
          enum:
            - daily
            - weekly
            - monthly
          type: string
        score_trend:
          description: >-
            Score trend: last 5 run scores in chronological order (oldest
            first).
          items:
            type: number
          type: array
        updated_at:
          type: string
        weight:
          type: number
      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
  securitySchemes:
    BearerAuth:
      description: Use this header with a Bearer token to authenticate requests.
      in: header
      name: Authorization
      type: apiKey

````