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

# System One evaluation

> System One-compatible synchronous evaluation. Send `model`, `state` and named typed `questions` (`noul`, `choice`, `score`). Native model names such as `jev-latest` resolve to the TypeSafe catalog endpoint; fully-qualified `typesafe/...` IDs pin that endpoint. Other decision models require their full catalog ID, for example `opper/kev-4b` or `greenpt/metis`; list available endpoints with `GET /v3/models?type=evaluation`. GreenPT Metis jointly evaluates 1–32 questions in one request; state is required but may be null, and instructions may be omitted or null. Its nullable descriptions, probabilities, confidence, score legends and native `impact` metadata are preserved. EmpirioLabs Aplomb (`empiriolabs/aplomb-1`) takes 1–128 questions and images, audio and video as media nodes anywhere in `state`: an object with `type` `image`, `audio` or `video` and either a public `https://` `url` or base64 `data` with its `mime`. Other providers retain their own validation contracts. Returns native `model`, `answers` and token `usage`. Uses a project-scoped Opper API key, Comply policies and provider entitlements. Cost and generation ID are returned in headers. Streaming, chat generation and tool calling are unsupported.

See the [classification and scoring guide](/build/gateway/evaluations) for working examples, model discovery, and usage and billing behavior.


## OpenAPI

````yaml post /v3/compat/v1/systemone
openapi: 3.1.0
info:
  description: Schema-driven generative API that orchestrates LLM-powered workflows.
  title: Task API
  version: 3.0.0
servers:
  - description: Production
    url: https://api.opper.ai
  - description: Local development
    url: http://localhost:8080
security:
  - BearerAuth: []
tags:
  - description: Schema-driven function management and execution
    name: Functions
  - description: OpenAI-compatible chat completions
    name: Chat
  - description: OpenAI Responses API compatible endpoint
    name: Responses
  - description: Google-compatible interactions endpoint
    name: Interactions
  - description: Model registry and capabilities
    name: Models
  - description: Synchronous image generation
    name: Images
  - description: Text-to-speech and speech-to-text
    name: Audio
  - description: Asynchronous video generation
    name: Videos
  - description: Reusable file storage for media inputs and generated outputs
    name: Files
  - description: Async generation status and downloads
    name: Artifacts
  - description: OpenAI-compatible embeddings
    name: Embeddings
  - description: Recorded HTTP request/response generations
    name: Generations
  - description: System health and status
    name: System
  - description: Roundtable endpoint — fan out a query to multiple LLMs and combine results
    name: Roundtable
  - description: Web search, fetch, and other utility tools
    name: Tools
  - description: Caller identity, credits, and usage
    name: Account
  - description: >-
      Programmatic project and API-key management. Authenticates with an
      `op-mak-…` management token; available on the control_plane and enterprise
      plans.
    name: Management
paths:
  /v3/compat/v1/systemone:
    post:
      tags:
        - Compatibility
      summary: System One evaluation API
      description: >-
        System One-compatible synchronous evaluation. Send `model`, `state` and
        named typed `questions` (`noul`, `choice`, `score`). Native model names
        such as `jev-latest` resolve to the TypeSafe catalog endpoint;
        fully-qualified `typesafe/...` IDs pin that endpoint. Other decision
        models require their full catalog ID, for example `opper/kev-4b` or
        `greenpt/metis`; list available endpoints with `GET
        /v3/models?type=evaluation`. GreenPT Metis jointly evaluates 1–32
        questions in one request; state is required but may be null, and
        instructions may be omitted or null. Its nullable descriptions,
        probabilities, confidence, score legends and native `impact` metadata
        are preserved. EmpirioLabs Aplomb (`empiriolabs/aplomb-1`) takes 1–128
        questions and images, audio and video as media nodes anywhere in
        `state`: an object with `type` `image`, `audio` or `video` and either a
        public `https://` `url` or base64 `data` with its `mime`. Other
        providers retain their own validation contracts. Returns native `model`,
        `answers` and token `usage`. Uses a project-scoped Opper API key, Comply
        policies and provider entitlements. Cost and generation ID are returned
        in headers. Streaming, chat generation and tool calling are unsupported.
      operationId: evaluateSystemOne
      parameters:
        - description: >-
            Function name for tracing and project-level guardrail function-scope
            filtering.
          in: header
          name: X-Opper-Name
          schema:
            type: string
        - description: Parent span ID for distributed tracing context.
          in: header
          name: X-Opper-Parent-Span-Id
          schema:
            format: uuid
            type: string
        - description: >-
            Comma-separated `key:value` usage-attribution tags (e.g.
            `tenant:acme,project:demo`, max 8). Recorded on the generation's
            billing/metrics rows; group spend by any key via GET
            /v2/analytics/usage?group_by=<key>. Header-borne twin of the
            /v3/session URL prefix tags (which win per key when both are
            present); `opper.`-prefixed keys and `session_id` are reserved.
            Malformed values return 400.
          in: header
          name: X-Opper-Tags
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/EvaluationRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EvaluationResponse'
          description: Successful response
          headers:
            X-Generation-Cost:
              description: Execution cost in USD, matching X-Opper-Cost.
              schema:
                format: double
                type: number
            X-Generation-Id:
              description: Opper generation ID for this evaluation.
              schema:
                type: string
            X-Opper-Cost:
              description: Execution cost of the request as a floating-point number.
              schema:
                format: double
                type: number
            X-Opper-Trace-Id:
              description: Trace UUID for this evaluation.
              schema:
                format: uuid
                type: string
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: Bad request
        '401':
          description: Unauthorized - missing or invalid API key
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: Internal server error
        '529':
          description: TypeSafe is temporarily overloaded
components:
  schemas:
    EvaluationRequest:
      oneOf:
        - additionalProperties: false
          properties:
            model:
              minLength: 1
              not:
                enum:
                  - greenpt/metis
              type: string
            questions:
              additionalProperties:
                $ref: '#/components/schemas/EvaluationQuestion'
              minProperties: 1
              type: object
            state:
              oneOf:
                - type: string
                - type: object
                - items: {}
                  type: array
          required:
            - model
            - state
            - questions
          type: object
        - additionalProperties: false
          properties:
            model:
              enum:
                - greenpt/metis
              minLength: 1
              type: string
            questions:
              additionalProperties:
                $ref: '#/components/schemas/GreenPTEvaluationQuestion'
              description: >-
                Joint evaluation of up to 32 questions. The reserved key
                __proto__ is forbidden anywhere in the request, including nested
                state, instructions and criteria.
              maxProperties: 32
              minProperties: 1
              propertyNames:
                maxLength: 128
                minLength: 1
                not:
                  enum:
                    - __proto__
                type: string
              type: object
            state:
              oneOf:
                - type:
                    - string
                    - 'null'
                - type: object
                - items: {}
                  type: array
          required:
            - model
            - state
            - questions
          type: object
    EvaluationResponse:
      oneOf:
        - properties:
            answers:
              additionalProperties:
                $ref: '#/components/schemas/EvaluationAnswer'
              type: object
            model:
              not:
                enum:
                  - metis
              type: string
            usage:
              $ref: '#/components/schemas/EvaluationUsage'
          required:
            - model
            - answers
            - usage
          type: object
        - properties:
            answers:
              additionalProperties:
                $ref: '#/components/schemas/GreenPTEvaluationAnswer'
              type: object
            model:
              enum:
                - metis
              type: string
            usage:
              $ref: '#/components/schemas/GreenPTEvaluationUsage'
          required:
            - model
            - answers
            - usage
          type: object
    ErrorResponse:
      properties:
        error:
          properties:
            code:
              type: string
            details:
              description: Any value
            message:
              type: string
          required:
            - code
            - message
          type: object
        meta:
          type: object
      required:
        - error
      type: object
    EvaluationQuestion:
      oneOf:
        - additionalProperties: false
          properties:
            criteria:
              additionalProperties: false
              properties:
                'false':
                  oneOf:
                    - type: string
                    - type: object
                    - items: {}
                      type: array
                'true':
                  oneOf:
                    - type: string
                    - type: object
                    - items: {}
                      type: array
              type: object
            instructions:
              oneOf:
                - type: string
                - type: object
                - items: {}
                  type: array
            type:
              enum:
                - noul
              type: string
          required:
            - type
            - instructions
          type: object
        - additionalProperties: false
          properties:
            criteria:
              additionalProperties:
                oneOf:
                  - type:
                      - string
                      - 'null'
                  - type: object
                  - items: {}
                    type: array
              maxProperties: 255
              minProperties: 1
              type: object
            instructions:
              oneOf:
                - type: string
                - type: object
                - items: {}
                  type: array
            type:
              enum:
                - choice
              type: string
          required:
            - type
            - instructions
            - criteria
          type: object
        - additionalProperties: false
          properties:
            criteria:
              items:
                oneOf:
                  - type: string
                  - type: object
                  - items: {}
                    type: array
              maxItems: 10
              minItems: 2
              type: array
            instructions:
              oneOf:
                - type: string
                - type: object
                - items: {}
                  type: array
            type:
              enum:
                - score
              type: string
          required:
            - type
            - instructions
            - criteria
          type: object
    GreenPTEvaluationQuestion:
      oneOf:
        - additionalProperties: false
          properties:
            criteria:
              additionalProperties: false
              properties:
                'false':
                  oneOf:
                    - type:
                        - string
                        - 'null'
                    - type: object
                    - items: {}
                      type: array
                'true':
                  oneOf:
                    - type:
                        - string
                        - 'null'
                    - type: object
                    - items: {}
                      type: array
              type: object
            instructions:
              oneOf:
                - type:
                    - string
                    - 'null'
                - type: object
                - items: {}
                  type: array
            type:
              enum:
                - noul
              type: string
          required:
            - type
          type: object
        - additionalProperties: false
          properties:
            criteria:
              additionalProperties:
                oneOf:
                  - type:
                      - string
                      - 'null'
                  - type: object
                  - items: {}
                    type: array
              maxProperties: 255
              minProperties: 2
              propertyNames:
                not:
                  enum:
                    - __proto__
              type: object
            instructions:
              oneOf:
                - type:
                    - string
                    - 'null'
                - type: object
                - items: {}
                  type: array
            type:
              enum:
                - choice
              type: string
          required:
            - type
            - criteria
          type: object
        - additionalProperties: false
          properties:
            criteria:
              items:
                oneOf:
                  - type:
                      - string
                      - 'null'
                  - type: object
                  - items: {}
                    type: array
              maxItems: 10
              minItems: 2
              type: array
            instructions:
              oneOf:
                - type:
                    - string
                    - 'null'
                - type: object
                - items: {}
                  type: array
            type:
              enum:
                - score
              type: string
          required:
            - type
            - criteria
          type: object
    EvaluationAnswer:
      oneOf:
        - additionalProperties: true
          properties:
            noul:
              maximum: 1
              minimum: 0
              type: number
            type:
              enum:
                - noul
              type: string
          required:
            - type
            - noul
          type: object
        - additionalProperties: true
          properties:
            choice:
              type: string
            confidence:
              maximum: 1
              minimum: 0
              type: number
            probabilities:
              additionalProperties:
                maximum: 1
                minimum: 0
                type: number
              type: object
            type:
              enum:
                - choice
              type: string
          required:
            - type
            - choice
            - confidence
            - probabilities
          type: object
        - additionalProperties: true
          properties:
            confidence:
              maximum: 1
              minimum: 0
              type: number
            legend:
              additionalProperties:
                oneOf:
                  - type: string
                  - type: object
                  - items: {}
                    type: array
              type: object
            probabilities:
              additionalProperties:
                maximum: 1
                minimum: 0
                type: number
              type: object
            score:
              maximum: 9
              minimum: 0
              type: number
            type:
              enum:
                - score
              type: string
          required:
            - type
            - score
            - confidence
            - probabilities
            - legend
          type: object
    EvaluationUsage:
      properties:
        input_tokens:
          minimum: 0
          type: integer
        output_tokens:
          minimum: 0
          type: integer
      required:
        - input_tokens
        - output_tokens
      type: object
    GreenPTEvaluationAnswer:
      oneOf:
        - additionalProperties: true
          properties:
            noul:
              maximum: 1
              minimum: 0
              type: number
            type:
              enum:
                - noul
              type: string
          required:
            - type
            - noul
          type: object
        - additionalProperties: true
          properties:
            choice:
              type: string
            confidence:
              maximum: 1
              minimum: 0
              type: number
            probabilities:
              additionalProperties:
                maximum: 1
                minimum: 0
                type: number
              type: object
            type:
              enum:
                - choice
              type: string
          required:
            - type
            - choice
            - confidence
            - probabilities
          type: object
        - additionalProperties: true
          properties:
            confidence:
              maximum: 1
              minimum: 0
              type: number
            legend:
              additionalProperties:
                oneOf:
                  - type:
                      - string
                      - 'null'
                  - type: object
                  - items: {}
                    type: array
              type: object
            probabilities:
              additionalProperties:
                maximum: 1
                minimum: 0
                type: number
              type: object
            score:
              maximum: 9
              minimum: 0
              type: number
            type:
              enum:
                - score
              type: string
          required:
            - type
            - score
            - confidence
            - probabilities
            - legend
          type: object
    GreenPTEvaluationUsage:
      properties:
        input_tokens:
          minimum: 0
          type: integer
        output_tokens:
          enum:
            - 0
          type: integer
      required:
        - input_tokens
        - output_tokens
      type: object
  securitySchemes:
    BearerAuth:
      bearerFormat: API Key
      description: API key authentication. Pass your API key as a Bearer token.
      scheme: bearer
      type: http

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.