---
title: "Replace Evaluator"
method: PUT
path: "/api/evaluators/{evaluator_id}/"
tags: ["evaluators"]
---

# Replace Evaluator

`PUT /api/evaluators/{evaluator_id}/`

PUT handler with superadmin lock and field protection.

Same as patch() - checks lock and field protection before delegating.

## Path parameters

- `evaluator_id` string, required

## Headers

- `Authorization` string, required

## Request body

- PublicEvaluatorUpdateRequest — User-friendly serializer for updating evaluators via API. Supports partial updates of configuration fields.
  - `version_id` string
  - `configurations` object
  - `categorical_choices` object[]
  - `score_config` object
  - `passing_conditions` object, nullable
  - `llm_config` object, nullable
  - `code_config` object, nullable
  - `project` string, nullable
  - `id` string
  - `version` integer
  - `is_read_only` boolean
  - `version_description` string
  - `evaluator_slug` string
  - `name` string, required
  - `unique_organization_id` string, nullable
  - `description` string
  - `type` 'llm' | 'code' | 'human' | 'function' | 'human_numerical' | 'human_categorical' | 'human_boolean' | 'human_text' | 'custom' — * `llm` - Llm * `code` - Code * `human` - Human * `function` - Function * `human_numerical` - Human Numerical * `human_categorical` - Human Categorical * `human_boolean` - Human Boolean * `human_text` - Human Text * `custom` - Custom
  - `score_value_type` 'numerical' | 'boolean' | 'percentage' | 'single_select' | 'multi_select' | 'text' | 'json' | 'comment' | 'categorical' — * `numerical` - Numerical * `boolean` - Boolean * `percentage` - Percentage * `single_select` - Single Select * `multi_select` - Multi Select * `text` - Text * `json` - Json * `comment` - Comment * `categorical` - Categorical
  - `custom_required_fields` string[]
  - `starred` boolean
  - `organization` integer, nullable

## Response `200`

- PublicEvaluatorUpdate — User-friendly serializer for updating evaluators via API. Supports partial updates of configuration fields.
  - `version_id` string
  - `configurations` object
  - `categorical_choices` object[]
  - `score_config` object
  - `passing_conditions` object, nullable
  - `llm_config` object, nullable
  - `code_config` object, nullable
  - `project` string, nullable
  - `is_public` boolean, required
  - `eval_class` string, required
  - `id` string
  - `version` integer
  - `is_read_only` boolean
  - `version_description` string
  - `evaluator_slug` string
  - `name` string, required
  - `description` string
  - `created_at` string, date-time, required
  - `updated_at` string, date-time, required
  - `type` 'llm' | 'code' | 'human' | 'function' | 'human_numerical' | 'human_categorical' | 'human_boolean' | 'human_text' | 'custom' — * `llm` - Llm * `code` - Code * `human` - Human * `function` - Function * `human_numerical` - Human Numerical * `human_categorical` - Human Categorical * `human_boolean` - Human Boolean * `human_text` - Human Text * `custom` - Custom
  - `score_value_type` 'numerical' | 'boolean' | 'percentage' | 'single_select' | 'multi_select' | 'text' | 'json' | 'comment' | 'categorical' — * `numerical` - Numerical * `boolean` - Boolean * `percentage` - Percentage * `single_select` - Single Select * `multi_select` - Multi Select * `text` - Text * `json` - Json * `comment` - Comment * `categorical` - Categorical
  - `custom_required_fields` string[]
  - `starred` boolean
  - `created_by` integer, nullable, required
  - `updated_by` integer, nullable, required

---

[API](https://skmtc.net/keywordsai/apis/api-reference.md) · [All operations](https://skmtc.net/keywordsai/apis/api-reference/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/keywordsai/api-reference/versions/c26d550029f8/schema)
