---
title: "PATCH /simulate/api/harness-environments/{id}/evaluations/{eval_config_id}/"
method: PATCH
path: "/simulate/api/harness-environments/{id}/evaluations/{eval_config_id}/"
tags: ["simulate"]
---

# PATCH /simulate/api/harness-environments/{id}/evaluations/{eval_config_id}/

`PATCH /simulate/api/harness-environments/{id}/evaluations/{eval_config_id}/`

## Request

- Base URL: `http://localhost:8000`
- URL: `http://localhost:8000/simulate/api/harness-environments/{id}/evaluations/{eval_config_id}/`
- Auth: one of:
  - API key in header `X-Api-Key`
  - API key in header `X-Secret-Key`

Change one eval of this environment. Never grades anything; grade a run again afterwards to refresh its scores.

## Request body

- HarnessEnvironmentEvalEdit
  - `config` object, nullable: Updated evaluation configuration parameters.
  - `mapping` object, nullable: Updated field mapping between test data and evaluation inputs.
  - `model` string, nullable: Model to use for evaluations.
  - `error_localizer` boolean: Enable granular error localization in evaluation results.
  - `kb_id` string, uuid, nullable: UUID of a knowledge base to use for grounding. Pass null to clear. Switching template_id without providing an explicit kb_id will clear the KB association.
  - `filters` object[], nullable: Updated canonical filter list to restrict which test results are evaluated.
    - `column_id` string, required: Column or attribute id to filter on.
    - `property_id` string: Optional stable namespaced Property Registry identity.
    - `display_name` string: Optional UI label for chips and saved views.
    - `source` string: Optional source surface for mixed-source filters, for example traces, datasets, or simulation.
    - `output_type` string: Optional metric output type metadata used by eval and annotation filters.
    - `filter_config` object, required
      - `filter_type` string, required: Canonical field type, for example text, number, boolean, datetime, categorical, thumbs, annotator, array, or map. Legacy json is value-sensitive for SPAN_ATTRIBUTE filters: list values become array and object values become map.
      - `filter_op` string, required: Canonical operator from api_contracts/filter_contract.json, for example equals, not_equals, in, not_in, between, not_between, is_null, or is_not_null.
      - `filter_value` unknown
      - `col_type` string: Column family such as SYSTEM_METRIC, SPAN_ATTRIBUTE, EVAL_METRIC, ANNOTATION, or NORMAL.
      - `attribute_value_types` string[]: Optional storage-family provenance aligned one-for-one with filter_value for mixed SPAN_ATTRIBUTE in/not_in filters. Null entries retain filter_type semantics for manually entered values.
  - `name` string: Updated name for the evaluation configuration.

## Response `200`

OK

- SimulateEvalConfigResponse
  - `id` string, uuid
  - `name` string, nullable
  - `config` object, nullable
  - `mapping` object, nullable
  - `filters` object[]
    - `column_id` string, required: Column or attribute id to filter on.
    - `property_id` string: Optional stable namespaced Property Registry identity.
    - `display_name` string: Optional UI label for chips and saved views.
    - `source` string: Optional source surface for mixed-source filters, for example traces, datasets, or simulation.
    - `output_type` string: Optional metric output type metadata used by eval and annotation filters.
    - `filter_config` object, required
      - `filter_type` string, required: Canonical field type, for example text, number, boolean, datetime, categorical, thumbs, annotator, array, or map. Legacy json is value-sensitive for SPAN_ATTRIBUTE filters: list values become array and object values become map.
      - `filter_op` string, required: Canonical operator from api_contracts/filter_contract.json, for example equals, not_equals, in, not_in, between, not_between, is_null, or is_not_null.
      - `filter_value` unknown
      - `col_type` string: Column family such as SYSTEM_METRIC, SPAN_ATTRIBUTE, EVAL_METRIC, ANNOTATION, or NORMAL.
      - `attribute_value_types` string[]: Optional storage-family provenance aligned one-for-one with filter_value for mixed SPAN_ATTRIBUTE in/not_in filters. Null entries retain filter_type semantics for manually entered values.
  - `error_localizer` boolean
  - `model` string, nullable
  - `status` string, nullable
  - `eval_group` string, nullable
  - `template_id` string, uuid, nullable
  - `eval_type` string
  - `regradable` boolean
  - `editable` boolean

## Other responses

- `default`: Default error response

---

[API](https://skmtc.dev/futureagi/apis/future-agi-management-api.md) · [All operations](https://skmtc.dev/futureagi/apis/future-agi-management-api/llms.txt) · [OpenAPI document](https://skmtc.dev/futureagi/apis/future-agi-management-api/revisions/c8684118e142?raw)
