---
title: "Clickhouse Eval Results Summary Create"
method: POST
path: "/clickhouse/eval-results/summary/"
tags: ["evaluations"]
---

# Clickhouse Eval Results Summary Create

`POST /clickhouse/eval-results/summary/`

POST handler with superadmin-only field protection.

Strips superadmin-only fields from non-superadmin requests before
delegating to OrganizationInjectionMixin.post() for org injection.

## Headers

- `Authorization` string, required

## Request body

- CHEvalResultListRequest — Mixin to handle underscore-prefixed field mapping in serializers. This is used when Django annotations require underscore prefixes to avoid name conflicts with original column names, but we want to expose the clean field names in the API response. Usage: 1. Annotate queryset with underscore prefixes: _field_name 2. This mixin automatically maps _field_name -> field_name in to_internal_value 3. The serializer can then use the clean field names normally
  - `id` string, required
  - `eval_result_unique_id` string
  - `created_at` string, date-time
  - `updated_at` string, date-time
  - `run_at` string, date-time
  - `log_timestamp` string, date-time, nullable
  - `unique_organization_id` string
  - `environment` 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
  - `prompt_id` string
  - `prompt_version_number` integer
  - `eval_set_id` string
  - `evaluator_id` string
  - `workflow_version_id` string
  - `automation_id` string
  - `source` string
  - `eval_class` union
    - 'ragas_faithfulness' | 'ragas_noise_sensitivity' | 'ragas_response_relevancy' | 'ragas_answer_relevancy' | 'ragas_context_precision' | 'ragas_context_recall' | 'ragas_context_entity_recall' | 'ragas_factual_correctness' | 'ragas_semantic_similarity' | 'ragas_non_llm_string_similarity' | 'ragas_non_llm_string_presence' | 'ragas_non_llm_exact_match' | 'relari_llm_based_custom_metric' | 'relari_llm_based_answer_correctness' | 'keywordsai_custom_evaluator' | 'keywordsai_custom_llm' | 'output_char_count' | 'output_word_count' | 'custom_code' — * `ragas_faithfulness` - ragas_faithfulness * `ragas_noise_sensitivity` - ragas_noise_sensitivity * `ragas_response_relevancy` - ragas_response_relevancy * `ragas_answer_relevancy` - ragas_answer_relevancy * `ragas_context_precision` - ragas_context_precision * `ragas_context_recall` - ragas_context_recall * `ragas_context_entity_recall` - ragas_context_entity_recall * `ragas_factual_correctness` - ragas_factual_correctness * `ragas_semantic_similarity` - ragas_semantic_similarity * `ragas_non_llm_string_similarity` - ragas_non_llm_string_similarity * `ragas_non_llm_string_presence` - ragas_non_llm_string_presence * `ragas_non_llm_exact_match` - ragas_non_llm_exact_match * `relari_llm_based_custom_metric` - relari_llm_based_custom_metric * `relari_llm_based_answer_correctness` - relari_llm_based_answer_correctness * `keywordsai_custom_evaluator` - keywordsai_custom_evaluator * `keywordsai_custom_llm` - keywordsai_custom_llm * `output_char_count` - output_char_count * `output_word_count` - output_word_count * `custom_code` - custom_code
    - ''
  - `evaluator_slug` string
  - `evaluator_name` string
  - `scorer` string
  - `log_unique_id` string
  - `customer_identifier` string
  - `pipeline_run_id` string
  - `primary_score` number, double
  - `string_value` string, nullable
  - `json_value` string
  - `boolean_value` integer
  - `cost` number, double
  - `status` string
  - `error_message` string
  - `storage_object_key` string

## Response `200`

- CHEvalResultList — Mixin to handle underscore-prefixed field mapping in serializers. This is used when Django annotations require underscore prefixes to avoid name conflicts with original column names, but we want to expose the clean field names in the API response. Usage: 1. Annotate queryset with underscore prefixes: _field_name 2. This mixin automatically maps _field_name -> field_name in to_internal_value 3. The serializer can then use the clean field names normally
  - `id` string, required
  - `passed` string, required
  - `eval_result_unique_id` string
  - `created_at` string, date-time
  - `updated_at` string, date-time
  - `run_at` string, date-time
  - `log_timestamp` string, date-time, nullable
  - `unique_organization_id` string
  - `environment` 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
  - `prompt_id` string
  - `prompt_version_number` integer
  - `eval_set_id` string
  - `evaluator_id` string
  - `workflow_version_id` string
  - `automation_id` string
  - `source` string
  - `eval_class` union
    - 'ragas_faithfulness' | 'ragas_noise_sensitivity' | 'ragas_response_relevancy' | 'ragas_answer_relevancy' | 'ragas_context_precision' | 'ragas_context_recall' | 'ragas_context_entity_recall' | 'ragas_factual_correctness' | 'ragas_semantic_similarity' | 'ragas_non_llm_string_similarity' | 'ragas_non_llm_string_presence' | 'ragas_non_llm_exact_match' | 'relari_llm_based_custom_metric' | 'relari_llm_based_answer_correctness' | 'keywordsai_custom_evaluator' | 'keywordsai_custom_llm' | 'output_char_count' | 'output_word_count' | 'custom_code' — * `ragas_faithfulness` - ragas_faithfulness * `ragas_noise_sensitivity` - ragas_noise_sensitivity * `ragas_response_relevancy` - ragas_response_relevancy * `ragas_answer_relevancy` - ragas_answer_relevancy * `ragas_context_precision` - ragas_context_precision * `ragas_context_recall` - ragas_context_recall * `ragas_context_entity_recall` - ragas_context_entity_recall * `ragas_factual_correctness` - ragas_factual_correctness * `ragas_semantic_similarity` - ragas_semantic_similarity * `ragas_non_llm_string_similarity` - ragas_non_llm_string_similarity * `ragas_non_llm_string_presence` - ragas_non_llm_string_presence * `ragas_non_llm_exact_match` - ragas_non_llm_exact_match * `relari_llm_based_custom_metric` - relari_llm_based_custom_metric * `relari_llm_based_answer_correctness` - relari_llm_based_answer_correctness * `keywordsai_custom_evaluator` - keywordsai_custom_evaluator * `keywordsai_custom_llm` - keywordsai_custom_llm * `output_char_count` - output_char_count * `output_word_count` - output_word_count * `custom_code` - custom_code
    - ''
  - `evaluator_slug` string
  - `evaluator_name` string
  - `scorer` string
  - `log_unique_id` string
  - `customer_identifier` string
  - `pipeline_run_id` string
  - `primary_score` number, double
  - `string_value` string, nullable
  - `json_value` string
  - `boolean_value` integer
  - `cost` number, double
  - `status` string
  - `error_message` string
  - `storage_object_key` string

---

[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)
