Vijil evaluation-summaries API

The evaluation-summaries API from Vijil — 3 operation(s) for evaluation-summaries.

OpenAPI Specification

vijil-evaluation-summaries-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Vijil Console API (Combined) agent-configurations evaluation-summaries API
  description: Combined OpenAPI specification for all vijil-console microservices.
  version: 0.1.0
tags:
- name: evaluation-summaries
paths:
  /v1/evaluation-summaries/:
    get:
      tags:
      - evaluation-summaries
      summary: List Evaluation Summaries
      description: "List evaluation summaries for a team with optional filters and pagination.\n\nArgs:\n    team_id: Team ID to list summaries for (required)\n    agent_id: Optional filter by agent ID\n    status: Optional filter by status (running, completed, failed, cancelled)\n    harness_type: Optional filter by harness type\n    tested_by: Optional filter by evaluation tool\n    limit: Max number of results (default 10, max 100)\n    offset: Number of results to skip for paging\n    claims: JWT claims with user and team info\n    summary_repo: Evaluation summary repository\n\nReturns:\n    Paginated list of evaluation summaries with total count\n\nRaises:\n    HTTPException: 401 if unauthorized, 403 if no permission"
      operationId: list_evaluation_summaries_v1_evaluation_summaries__get
      parameters:
      - name: team_id
        in: query
        required: true
        schema:
          type: string
          format: uuid
          description: Team ID to list summaries for
          title: Team Id
        description: Team ID to list summaries for
      - name: agent_id
        in: query
        required: false
        schema:
          anyOf:
          - type: string
            format: uuid
          - type: 'null'
          description: Filter by agent ID
          title: Agent Id
        description: Filter by agent ID
      - name: status
        in: query
        required: false
        schema:
          anyOf:
          - $ref: '#/components/schemas/EvaluationStatus'
          - type: 'null'
          description: Filter by status (running, completed, failed, cancelled)
          title: Status
        description: Filter by status (running, completed, failed, cancelled)
      - name: harness_type
        in: query
        required: false
        schema:
          anyOf:
          - enum:
            - standard
            - custom
            type: string
          - type: 'null'
          description: Filter by harness type (standard or custom)
          title: Harness Type
        description: Filter by harness type (standard or custom)
      - name: tested_by
        in: query
        required: false
        schema:
          anyOf:
          - $ref: '#/components/schemas/EvaluationTool'
          - type: 'null'
          description: Filter by tool that ran the evaluation
          title: Tested By
        description: Filter by tool that ran the evaluation
      - name: limit
        in: query
        required: false
        schema:
          type: integer
          maximum: 100
          minimum: 1
          description: Maximum number of results to return
          default: 10
          title: Limit
        description: Maximum number of results to return
      - name: offset
        in: query
        required: false
        schema:
          type: integer
          minimum: 0
          description: Number of results to skip for paging
          default: 0
          title: Offset
        description: Number of results to skip for paging
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EvaluationSummaryListResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /v1/evaluation-summaries/latest-by-agent:
    get:
      tags:
      - evaluation-summaries
      summary: List Latest Evaluation Summaries By Agent
      description: 'Return the latest completed evaluation summary per agent for the team.


        Uses server-side grouping (one row per agent_id with max completed_at).

        No pagination; returns at most one summary per agent that has a completed evaluation.'
      operationId: list_latest_evaluation_summaries_by_agent_v1_evaluation_summaries_latest_by_agent_get
      parameters:
      - name: team_id
        in: query
        required: true
        schema:
          type: string
          format: uuid
          description: Team ID to list latest summary per agent for
          title: Team Id
        description: Team ID to list latest summary per agent for
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EvaluationSummaryListResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /v1/evaluation-summaries/{evaluation_id}:
    get:
      tags:
      - evaluation-summaries
      summary: Get Evaluation Summary
      description: "Get a single evaluation summary by evaluation ID.\n\nArgs:\n    evaluation_id: UUID of the evaluation (same as summary ID)\n    team_id: Team ID that owns this evaluation\n    claims: JWT claims with user and team info\n    summary_repo: Evaluation summary repository\n\nReturns:\n    Evaluation summary with scores and metadata\n\nRaises:\n    HTTPException: 401 if unauthorized, 403 if no permission, 404 if not found"
      operationId: get_evaluation_summary_v1_evaluation_summaries__evaluation_id__get
      parameters:
      - name: evaluation_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
          title: Evaluation Id
      - name: team_id
        in: query
        required: true
        schema:
          type: string
          format: uuid
          description: Team ID that owns this evaluation
          title: Team Id
        description: Team ID that owns this evaluation
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EvaluationSummaryResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
    delete:
      tags:
      - evaluation-summaries
      summary: Delete Evaluation Summary
      description: "Delete an evaluation summary row.\n\nThis endpoint only removes the summary cache row — it does not delete\nthe underlying evaluation job or S3 artifacts. To fully delete an\nevaluation, use DELETE /evaluations/{evaluation_id}.\n\nArgs:\n    evaluation_id: UUID of the evaluation summary to delete\n    team_id: Team ID that owns this evaluation\n    claims: JWT claims with user and team info\n    summary_repo: Evaluation summary repository\n\nRaises:\n    HTTPException: 401 if unauthorized, 403 if no permission, 404 if not found"
      operationId: delete_evaluation_summary_v1_evaluation_summaries__evaluation_id__delete
      parameters:
      - name: evaluation_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
          title: Evaluation Id
      - name: team_id
        in: query
        required: true
        schema:
          type: string
          format: uuid
          description: Team ID that owns this evaluation
          title: Team Id
        description: Team ID that owns this evaluation
      responses:
        '204':
          description: Successful Response
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
components:
  schemas:
    EvaluationTool:
      type: string
      enum:
      - diamond
      - promptfoo
      - garak
      - pyrit
      title: EvaluationTool
      description: Tools that can produce evaluation results.
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
            - type: string
            - type: integer
          type: array
          title: Location
        msg:
          type: string
          title: Message
        type:
          type: string
          title: Error Type
      type: object
      required:
      - loc
      - msg
      - type
      title: ValidationError
    EvaluationSummaryResponse:
      properties:
        id:
          type: string
          format: uuid
          title: Id
        team_id:
          type: string
          format: uuid
          title: Team Id
        agent_id:
          type: string
          format: uuid
          title: Agent Id
        tested_by:
          type: string
          title: Tested By
        status:
          type: string
          title: Status
        reliability_score:
          anyOf:
          - type: number
          - type: 'null'
          title: Reliability Score
        security_score:
          anyOf:
          - type: number
          - type: 'null'
          title: Security Score
        safety_score:
          anyOf:
          - type: number
          - type: 'null'
          title: Safety Score
        overall_score:
          anyOf:
          - type: number
          - type: 'null'
          title: Overall Score
        pillar_details:
          additionalProperties: true
          type: object
          title: Pillar Details
        harness_names:
          items:
            type: string
          type: array
          title: Harness Names
        harness_type:
          anyOf:
          - type: string
          - type: 'null'
          title: Harness Type
        resource_version:
          anyOf:
          - type: string
          - type: 'null'
          title: Resource Version
        created_by:
          anyOf:
          - type: string
            format: uuid
          - type: 'null'
          title: Created By
        created_at:
          type: integer
          title: Created At
        completed_at:
          anyOf:
          - type: integer
          - type: 'null'
          title: Completed At
        request_params:
          anyOf:
          - additionalProperties: true
            type: object
          - type: 'null'
          title: Request Params
      type: object
      required:
      - id
      - team_id
      - agent_id
      - tested_by
      - status
      - created_at
      title: EvaluationSummaryResponse
      description: Response model for a single evaluation summary.
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
    EvaluationSummaryListResponse:
      properties:
        results:
          items:
            $ref: '#/components/schemas/EvaluationSummaryResponse'
          type: array
          title: Results
        total:
          type: integer
          title: Total
        limit:
          type: integer
          title: Limit
        offset:
          type: integer
          title: Offset
      type: object
      required:
      - results
      - total
      - limit
      - offset
      title: EvaluationSummaryListResponse
      description: Response model for a paginated list of evaluation summaries.
    EvaluationStatus:
      type: string
      enum:
      - running
      - completed
      - failed
      - cancelled
      title: EvaluationStatus
      description: Statuses for an evaluation run (mirrors the workflow lifecycle).