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

# Update Eval Agent Version

> Edit a draft version's prompt, levels, targets, or weight.

### Headers

<ParamField header="authorization" type="string" required>
  Your API key for authentication.
</ParamField>

### Path Parameters

<ParamField path="eval_agent_id" type="string" required>
  The unique identifier of the eval agent.
</ParamField>

<ParamField path="version_id" type="string" required>
  The unique identifier of the version to update. Must be in the `editable` state.
</ParamField>

### Body Parameters

<ParamField body="name" type="string">
  Updated display name for this version. Between 1 and 200 characters.
</ParamField>

<ParamField body="description" type="string | null">
  Updated description, or `null` to clear it.
</ParamField>

<ParamField body="modality" type="string">
  The modality for this version. One of `text` or `audio`.
</ParamField>

<ParamField body="system_prompt_md" type="string">
  Updated system prompt for the judge LLM, in Markdown. Maximum 8000 characters.
</ParamField>

<ParamField body="prompt_md" type="string">
  Updated grading prompt for the judge LLM, in Markdown. Maximum 8000 characters.
</ParamField>

<ParamField body="levels" type="array of objects">
  Verdict levels for graded mode. Pass an empty array for pass/fail mode. Maximum 5 levels. Each level object requires:

  * `level_key` (string, 1-64 characters): unique key within this version.
  * `label` (string, 1-80 characters): display label shown in results.
  * `prompt_md` (string): description used in the grading prompt.
  * `color` (string, optional): one of `rose`, `amber`, `gold`, `emerald`, `blue`, `indigo`, `violet`, `fog`.
</ParamField>

<ParamField body="target_level_keys" type="array of strings">
  Which level keys count as a target match. Must be empty for pass/fail agents. Every key listed must match a defined level.
</ParamField>

<ParamField body="weight" type="number">
  Relative weight of this agent in aggregate scoring. Between 0 and 100.
</ParamField>

### Response

<ResponseField name="data.id" type="string">
  Unique identifier for this version.
</ResponseField>

<ResponseField name="data.org_id" type="string">
  ID of the organization that owns this version.
</ResponseField>

<ResponseField name="data.eval_agent_id" type="string">
  ID of the parent eval agent.
</ResponseField>

<ResponseField name="data.version_number" type="integer">
  Sequential version number.
</ResponseField>

<ResponseField name="data.name" type="string">
  Name of this version.
</ResponseField>

<ResponseField name="data.description" type="string | null">
  Description of this version, or `null`.
</ResponseField>

<ResponseField name="data.state" type="string">
  State of this version. One of `editable` or `archived`.
</ResponseField>

<ResponseField name="data.modality" type="string">
  One of `text` or `audio`.
</ResponseField>

<ResponseField name="data.system_prompt_md" type="string">
  The system prompt for the judge LLM, in Markdown.
</ResponseField>

<ResponseField name="data.prompt_md" type="string">
  The grading prompt for the judge LLM, in Markdown.
</ResponseField>

<ResponseField name="data.levels" type="array of objects">
  Updated verdict levels. Each level contains `level_key`, `label`, `prompt_md`, and optionally `color`.
</ResponseField>

<ResponseField name="data.target_level_keys" type="array of strings">
  Updated target level keys.
</ResponseField>

<ResponseField name="data.weight" type="number">
  Updated weight. Between 0 and 100.
</ResponseField>

<ResponseField name="data.created_from_version_id" type="string | null">
  ID of the version this was forked from, or `null`.
</ResponseField>

<ResponseField name="data.created_by" type="string | null">
  Identifier of the user who created this version, or `null`.
</ResponseField>

<ResponseField name="data.created_at" type="string">
  ISO 8601 timestamp for when this version was created.
</ResponseField>

<ResponseField name="data.updated_at" type="string">
  ISO 8601 timestamp for when this version was last updated.
</ResponseField>

<ResponseExample>
  ```json Response theme={null}
  {
    "errors": null,
    "data": {
      "id": "b2c3d4e5-f6a7-8901-bcde-f12345678901",
      "org_id": "f0e1d2c3-b4a5-9678-fedc-ba9876543210",
      "eval_agent_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
      "version_number": 3,
      "name": "Empathy Check v3",
      "description": "Refined grading criteria with clearer level descriptions.",
      "state": "editable",
      "modality": "audio",
      "system_prompt_md": "You are an expert call quality reviewer specializing in empathy.",
      "prompt_md": "Did the agent acknowledge and validate the caller's feelings? Review the full transcript and select the most appropriate verdict.",
      "levels": [
        {
          "level_key": "excellent",
          "label": "Excellent",
          "prompt_md": "The agent proactively acknowledged the caller's feelings with warmth and specificity.",
          "color": "emerald"
        },
        {
          "level_key": "adequate",
          "label": "Adequate",
          "prompt_md": "The agent showed some empathy but responses were generic or brief.",
          "color": "amber"
        },
        {
          "level_key": "poor",
          "label": "Poor",
          "prompt_md": "The agent ignored, dismissed, or failed to acknowledge the caller's feelings.",
          "color": "rose"
        }
      ],
      "target_level_keys": ["excellent"],
      "weight": 15,
      "created_from_version_id": "c3d4e5f6-a7b8-9012-cdef-123456789012",
      "created_by": "9a8b7c6d-5e4f-3210-9876-543210fedcba",
      "created_at": "2026-05-15T08:00:00.000Z",
      "updated_at": "2026-05-27T12:00:00.000Z"
    }
  }
  ```
</ResponseExample>
