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

# Create evaluator

> Create a new evaluator



## OpenAPI

````yaml /public-apis/openapi/evaluators.json post /v1/evaluators
openapi: 3.0.0
info:
  version: 1.0.0
  contact:
    name: Maxim Engineering
    email: eng@getmaxim.ai
  title: Maxim SDK API - evaluators
  description: API documentation for Maxim SDK evaluators endpoints
servers:
  - url: https://api.getmaxim.ai
security: []
paths:
  /v1/evaluators:
    post:
      tags:
        - Evaluator
      summary: Create evaluator
      description: Create a new evaluator
      requestBody:
        content:
          application/json:
            schema:
              allOf:
                - type: object
                  properties:
                    workspaceId:
                      type: string
                      minLength: 1
                      description: Unique identifier for the workspace
                    name:
                      type: string
                      minLength: 1
                      description: Name of the evaluator
                    description:
                      type: string
                      description: Description of the evaluator
                    tags:
                      type: array
                      items:
                        type: string
                      description: Tags for the evaluator
                    folderId:
                      type: string
                      description: >-
                        Unique identifier for the folder to place the evaluator
                        in
                  required:
                    - workspaceId
                    - name
                - oneOf:
                    - type: object
                      properties:
                        type:
                          type: string
                          enum:
                            - AI
                        config:
                          type: object
                          properties:
                            passFailCriteria:
                              type: object
                              properties:
                                entryLevel:
                                  type: object
                                  properties:
                                    value:
                                      anyOf:
                                        - type: number
                                        - type: string
                                        - type: array
                                          items:
                                            type: string
                                    operator:
                                      type: string
                                    name:
                                      type: string
                                  required:
                                    - value
                                    - operator
                                    - name
                                runLevel:
                                  type: object
                                  properties:
                                    value:
                                      anyOf:
                                        - type: number
                                        - type: string
                                        - type: array
                                          items:
                                            type: string
                                    operator:
                                      type: string
                                    name:
                                      type: string
                                  required:
                                    - value
                                    - operator
                                    - name
                              required:
                                - entryLevel
                                - runLevel
                            optionalVariables:
                              type: array
                              items:
                                type: string
                              description: Names of variables to mark as optional.
                            gradingStyle:
                              type: string
                              enum:
                                - YesNo
                                - Scale
                                - Multiselect
                                - Number
                            scale:
                              type: object
                              properties:
                                min:
                                  type: number
                                max:
                                  type: number
                              required:
                                - min
                                - max
                            model:
                              type: string
                            modelId:
                              type: string
                            provider:
                              type: string
                            instructions:
                              type: string
                            modelParameters:
                              nullable: true
                              description: Model parameters including prompt tools
                      required:
                        - type
                      title: AI Evaluator
                    - type: object
                      properties:
                        type:
                          type: string
                          enum:
                            - Programmatic
                        config:
                          type: object
                          properties:
                            passFailCriteria:
                              type: object
                              properties:
                                entryLevel:
                                  type: object
                                  properties:
                                    value:
                                      anyOf:
                                        - type: number
                                        - type: string
                                        - type: array
                                          items:
                                            type: string
                                    operator:
                                      type: string
                                    name:
                                      type: string
                                  required:
                                    - value
                                    - operator
                                    - name
                                runLevel:
                                  type: object
                                  properties:
                                    value:
                                      anyOf:
                                        - type: number
                                        - type: string
                                        - type: array
                                          items:
                                            type: string
                                    operator:
                                      type: string
                                    name:
                                      type: string
                                  required:
                                    - value
                                    - operator
                                    - name
                              required:
                                - entryLevel
                                - runLevel
                            optionalVariables:
                              type: array
                              items:
                                type: string
                              description: Names of variables to mark as optional.
                            lang:
                              type: string
                              enum:
                                - javascript
                                - python
                            code:
                              type: object
                              properties:
                                javascript:
                                  type: string
                                python:
                                  type: string
                              required:
                                - javascript
                                - python
                            responseType:
                              type: string
                              enum:
                                - YesNo
                                - Scale
                                - Multiselect
                                - Number
                          required:
                            - lang
                            - code
                            - responseType
                      required:
                        - type
                        - config
                      title: Programmatic Evaluator
                    - type: object
                      properties:
                        type:
                          type: string
                          enum:
                            - API
                        config:
                          type: object
                          properties:
                            passFailCriteria:
                              type: object
                              properties:
                                entryLevel:
                                  type: object
                                  properties:
                                    value:
                                      anyOf:
                                        - type: number
                                        - type: string
                                        - type: array
                                          items:
                                            type: string
                                    operator:
                                      type: string
                                    name:
                                      type: string
                                  required:
                                    - value
                                    - operator
                                    - name
                                runLevel:
                                  type: object
                                  properties:
                                    value:
                                      anyOf:
                                        - type: number
                                        - type: string
                                        - type: array
                                          items:
                                            type: string
                                    operator:
                                      type: string
                                    name:
                                      type: string
                                  required:
                                    - value
                                    - operator
                                    - name
                              required:
                                - entryLevel
                                - runLevel
                            optionalVariables:
                              type: array
                              items:
                                type: string
                              description: Names of variables to mark as optional.
                            method:
                              type: string
                              enum:
                                - GET
                                - POST
                                - PUT
                                - DELETE
                                - PATCH
                            url:
                              type: string
                              format: uri
                            headers:
                              type: array
                              items:
                                type: object
                                properties:
                                  key:
                                    type: string
                                  value:
                                    type: string
                                required:
                                  - key
                                  - value
                            params:
                              type: array
                              items:
                                type: object
                                properties:
                                  key:
                                    type: string
                                  value:
                                    type: string
                                required:
                                  - key
                                  - value
                            payload:
                              type: string
                            outputMapping:
                              type: object
                              properties:
                                score:
                                  type: string
                                reasoning:
                                  type: string
                            timeout:
                              type: number
                              default: 120
                              description: Timeout in seconds
                            concurrency:
                              type: number
                              default: 1
                              description: Max number of concurrent calls to this endpoint
                          required:
                            - method
                            - url
                      required:
                        - type
                        - config
                      title: API Evaluator
                    - type: object
                      properties:
                        type:
                          type: string
                          enum:
                            - Human
                        config:
                          type: object
                          properties:
                            passFailCriteria:
                              type: object
                              properties:
                                entryLevel:
                                  type: object
                                  properties:
                                    value:
                                      anyOf:
                                        - type: number
                                        - type: string
                                        - type: array
                                          items:
                                            type: string
                                    operator:
                                      type: string
                                    name:
                                      type: string
                                  required:
                                    - value
                                    - operator
                                    - name
                                runLevel:
                                  type: object
                                  properties:
                                    value:
                                      anyOf:
                                        - type: number
                                        - type: string
                                        - type: array
                                          items:
                                            type: string
                                    operator:
                                      type: string
                                    name:
                                      type: string
                                  required:
                                    - value
                                    - operator
                                    - name
                              required:
                                - entryLevel
                                - runLevel
                            optionalVariables:
                              type: array
                              items:
                                type: string
                              description: Names of variables to mark as optional.
                            scale:
                              type: object
                              properties:
                                min:
                                  type: number
                                max:
                                  type: number
                              required:
                                - min
                                - max
                            instructions:
                              type: string
                            evaluationType:
                              type: string
                              enum:
                                - YesNo
                                - Scale
                                - Multiselect
                                - Number
                          required:
                            - evaluationType
                      required:
                        - type
                        - config
                      title: Human Evaluator
      responses:
        '200':
          description: Evaluator created successfully
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: object
                    properties:
                      id:
                        type: string
                      name:
                        type: string
                      description:
                        type: string
                      type:
                        type: string
                      config:
                        type: object
                        properties:
                          model:
                            type: string
                          provider:
                            type: string
                          variables:
                            type: object
                            additionalProperties:
                              nullable: true
                          gradingStyle:
                            type: string
                          passFailCriteria:
                            type: object
                            properties:
                              runLevel:
                                type: object
                                properties:
                                  name:
                                    type: string
                                  value:
                                    type: number
                                  operator:
                                    type: string
                                required:
                                  - name
                                  - value
                                  - operator
                              entryLevel:
                                type: object
                                properties:
                                  name:
                                    type: string
                                  value:
                                    type: string
                                  operator:
                                    type: string
                                required:
                                  - name
                                  - value
                                  - operator
                            required:
                              - runLevel
                              - entryLevel
                        required:
                          - model
                          - provider
                          - gradingStyle
                          - passFailCriteria
                      accountId:
                        type: string
                      workspaceId:
                        type: string
                      builtin:
                        type: boolean
                      createdAt:
                        type: string
                      updatedAt:
                        type: string
                      deletedAt:
                        type: string
                      tags:
                        type: array
                        items:
                          type: object
                          properties:
                            label:
                              type: string
                            value:
                              type: string
                          required:
                            - label
                            - value
                    required:
                      - id
                      - name
                      - description
                      - type
                      - config
                      - accountId
                      - workspaceId
                      - builtin
                      - createdAt
                      - updatedAt
                      - deletedAt
                required:
                  - data
        '400':
          description: Invalid request parameters
      security:
        - ApiKeyAuth: []
components:
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: x-maxim-api-key
      description: API key for authentication

````