Use AI to clean up a metric description (the LLM-judge criterion) into a clear, well-formed prompt. Prefer this over hand-editing a metric’s description via metrics_partial_update.
Python custom code to determine metric relevance. Code should set _result (bool) and _explanation (str).
Example:
_result = True _explanation = "Metric is relevant" if "call_end_reason" in data and data["call_end_reason"] == "customer-hung-up": _result = False _explanation = "Customer hung up, metric not applicable"
Enable alerts for this metric when it fails (value=false).
Only applicable to binary metrics (eval_type=binary).
For other metric types, use significant_change_alert_status instead.
Example: true or false
_resul = True _explanation = None if "call_end_reason" in data and data["call_end_reason"] == "customer_satisfaction": _result = True _explanation = "Customer expressed satisfaction with service"
Python custom code to determine metric relevance. Code should set _result (bool) and _explanation (str).
Example:
_result = True _explanation = "Metric is relevant" if "call_end_reason" in data and data["call_end_reason"] == "customer-hung-up": _result = False _explanation = "Customer hung up, metric not applicable"
Enable alerts for this metric when it fails (value=false).
Only applicable to binary metrics (eval_type=binary).
For other metric types, use significant_change_alert_status instead.
Example: true or false
_resul = True _explanation = None if "call_end_reason" in data and data["call_end_reason"] == "customer_satisfaction": _result = True _explanation = "Customer expressed satisfaction with service"
Unsaved proposal from a metric-optimiser cron run. Shape: {description, evaluation_trigger, type, custom_code, score, baseline_score, cron_job_id, cron_job_name, proposed_at}.
{"docsConfig":{"$schema":"https://mintlify.com/docs.json","theme":"mint","name":"Cekura","colors":{"primary":"#8184FF","light":"#A6A7EA","dark":"#8184FF"},"favicon":"https://mintcdn.com/vocera/-ehbdLduj39oRXOg/logo/favicon.png?fit=max\u0026auto=format\u0026n=-ehbdLduj39oRXOg\u0026q=85\u0026s=e32d4e5dc1d57d5e2b2fc594b73f0bb2","logo":{"light":"https://mintcdn.com/vocera/NnWFOccGgHKr48PP/logo/logo-dark.svg?fit=max\u0026auto=format\u0026n=NnWFOccGgHKr48PP\u0026q=85\u0026s=fe825439de9afd1d121723398224f0fe","dark":"https://mintcdn.com/vocera/NnWFOccGgHKr48PP/logo/light.svg?fit=max\u0026auto=format\u0026n=NnWFOccGgHKr48PP\u0026q=85\u0026s=f71dda7aa2212d127512fb4e6b40961a"},"navbar":{"links":[{"label":"Support","href":"mailto:support@cekura.ai"}],"primary":{"type":"button","label":"Dashboard","href":"https://dashboard.cekura.ai"}},"footer":{"socials":{"x":"https://x.com/CekuraAI","linkedin":"https://www.linkedin.com/company/cekuraai"}},"styling":{"latex":true},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"vocera","hasAudioNarration":false,"actualSubdomain":"vocera","customDomains":["docs.cekura.ai"],"gitSource":{"type":"github","owner":"cekura-ai","repo":"docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6aeb402b3aa857944eedc172","collectionId":"c1ca03da-3556-4670-bb79-cf409c7a09cb","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6aeb402b3aa857944eedc172"},"feedback":{"edits":false},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6aec11f2471f87c523cba083","clientVersion":"0.0.4067","searchFilterCounts":[{"language":"default","tag":"API Reference","count":414},{"language":"default","tag":"Documentation","count":106},{"language":"default","tag":"Evaluators","count":65},{"language":"default","tag":"Guides","count":40},{"language":"default","tag":"Metrics","count":37},{"language":"default","tag":"Others","count":35},{"language":"default","tag":"Integrations","count":27},{"language":"default","tag":"Testing","count":23},{"language":"default","tag":"Key Concepts","count":19},{"language":"default","tag":"Advanced","count":18}]},"assistantConfig":{},"basePath":"","hasChatPermissions":true,"hasWebMcpPermissions":true,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[{"filePath":"style.css","content":"#navbar img{height:36px}.dark #sidebar-group img{background-color:transparent!important}#content-container::before{content:\"\";position:fixed;top:-190px;right:0;width:40%;height:124%;opacity:0.4;background-repeat:no-repeat;background-image:url(\"/images/bg-dark.png\")}"}],"page":{"pagePath":"api-reference/test_framework/generate-metric-description","slug":"/api-reference/test_framework/generate-metric-description","pageMetadata":{"title":"Generate Clean Metric Description","description":"Use AI to clean up a metric `description` (the LLM-judge criterion) into a clear, well-formed prompt. Prefer this over hand-editing a metric's description via `metrics_partial_update`.","openapi":"post /test_framework/v1/metrics/generate_clean_description/","slug":"generate-metric-description","href":"/api-reference/test_framework/generate-metric-description"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx, jsxs: _jsxs} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n code: \"code\",\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsxs(_components.p, {\n children: [\"Use AI to clean up a metric \", _jsx(_components.code, {\n children: \"description\"\n }), \" (the LLM-judge criterion) into a clear, well-formed prompt. Prefer this over hand-editing a metric’s description via \", _jsx(_components.code, {\n children: \"metrics_partial_update\"\n }), \".\"]\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){return _jsx(_Fragment,{})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Generate Clean Metric Description","description":"Use AI to clean up a metric `description` (the LLM-judge criterion) into a clear, well-formed prompt. Prefer this over hand-editing a metric's description via `metrics_partial_update`.","openapi":"post /test_framework/v1/metrics/generate_clean_description/","slug":"generate-metric-description","href":"/api-reference/test_framework/generate-metric-description"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":["/_mintlify/custom/vocera/b06c8fbedf65997d/old-api-docs.js"],"openApiReferenceData":{"operation":{"operationId":"metrics-generate-clean-description-create_2","description":"Use AI to clean up a metric `description` (the LLM-judge criterion) into a clear, well-formed prompt. Prefer this over hand-editing a metric's description via `metrics_partial_update`.","tags":["test_framework"],"requestBody":"a94ac825-f925-435a-9b28-92bd576bf2b8","security":["a496d288-b7f0-4cb8-871f-87284e623b95","0f9c0934-2dc9-47b0-b2eb-274ab0121efd","a652d23e-c2fe-4444-91f5-4bf2af4ed27a","2677fdd2-0d57-4e81-a689-451ace6f16df"],"responses":{"200":"d3c03861-3b4b-4142-b8e5-5b9754273976"},"x-mcp-tool-name":"metrics_generate_clean_description_create","method":"post","type":"path","servers":["f9af1b0b-5794-4e02-a267-c74aead5f0c0"],"path":"/test_framework/v1/metrics/generate_clean_description/","baseUrlOptions":["https://api.cekura.ai"],"title":"","codeSamples":[],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{},"requestBody":{"content":{"application/json":{"schema":{"type":"object","description":"","properties":{"name":{"type":"string","description":"\nName of the metric.\nExample: `\"Customer Satisfaction\"` or `\"Appointment Booking\"`\n ","maxLength":255,"isRequired":true,"uniqueKey":"name","typeLabel":"string"},"eval_type":{"enum":["binary","continuous_qualitative","numeric","enum"],"type":"string","description":"* `binary` - Binary\n* `continuous_qualitative` - Continuous Qualitative\n* `numeric` - Numeric\n* `enum` - Enum","x-spec-enum-id":"b40eac6824409cc2","isRequired":true,"uniqueKey":"eval_type","typeLabel":"enum\u003cstring>"},"slug":{"oneOf":[{"type":"string","description":"URL-friendly unique identifier in snake_case format. Example: \"customer_satisfaction_1562\"","maxLength":255,"uniqueKey":"slug.oneOf.0","typeLabel":"string"},{"type":"null","description":"URL-friendly unique identifier in snake_case format. Example: \"customer_satisfaction_1562\"","maxLength":255,"uniqueKey":"slug.oneOf.1","typeLabel":"null"}],"uniqueKey":"slug","typeLabel":"string | null"},"project":{"oneOf":[{"type":"integer","uniqueKey":"project.oneOf.0","typeLabel":"integer"},{"type":"null","uniqueKey":"project.oneOf.1","typeLabel":"null"}],"uniqueKey":"project","typeLabel":"integer | null"},"agents":{"type":"array","items":{"oneOf":[{"type":"integer","uniqueKey":"agents.items.[INDEX].oneOf.0","typeLabel":"integer"},{"type":"null","uniqueKey":"agents.items.[INDEX].oneOf.1","typeLabel":"null"}],"uniqueKey":"agents.items.[INDEX]","typeLabel":"integer | null"},"uniqueKey":"agents","typeLabel":"(integer | null)[]"},"description":{"type":"string","description":"\nDescription of what the metric measures.\nExample: `\"Measures how satisfied customers are with the service provided\"`\n ","uniqueKey":"description","typeLabel":"string"},"type":{"enum":["basic","custom_prompt","custom_code","llm_judge"],"type":"string","x-spec-enum-id":"b44700c0a6443b40","description":"\nType of metric\n\n\n* `basic` - Basic (Deprecated in favor of LLM Judge)\n* `custom_prompt` - Custom Prompt ( Deprecated in favor of LLM Judge)\n* `custom_code` - Custom Code\n* `llm_judge` - LLM Judge","uniqueKey":"type","typeLabel":"enum\u003cstring>"},"enum_values":{"description":"\nList of possible enum values for enum type metrics.\nExample: `[\"satisfied\", \"unsatisfied\"]`\n","uniqueKey":"enum_values","typeLabel":"any"},"audio_enabled":{"type":"boolean","description":"\nWhether this metric requires audio analysis.\nExample: `true` or `false`\n ","uniqueKey":"audio_enabled","typeLabel":"boolean"},"prompt":{"type":"string","description":"\nEvaluation prompt for the metric.\nExample: `\"Evaluate customer satisfaction based on conversation\"`\n","uniqueKey":"prompt","typeLabel":"string"},"evaluation_trigger":{"enum":["always","automatic","custom"],"type":"string","description":"* `always` - Always\n* `automatic` - Automatic\n* `custom` - Custom","x-spec-enum-id":"ecd3c02e0e393ef5","uniqueKey":"evaluation_trigger","typeLabel":"enum\u003cstring>"},"trigger_type":{"enum":["llm_judge","custom_code"],"type":"string","x-spec-enum-id":"2adad4b8df61914f","description":"\nType of trigger evaluation: LLM judge or custom code.\nOnly used when evaluation_trigger is CUSTOM.\nExample: `\"llm_judge\"` or `\"custom_code\"`\n\n\n* `llm_judge` - LLM Judge\n* `custom_code` - Custom Code","uniqueKey":"trigger_type","typeLabel":"enum\u003cstring>"},"evaluation_trigger_prompt":{"type":"string","description":"\nEvaluation trigger prompt for the metric.\nExample: `\"Evaluate metric only if call ended reason is main-agent-ended-call\"`\n","uniqueKey":"evaluation_trigger_prompt","typeLabel":"string"},"evaluation_trigger_custom_code":{"type":"string","description":"\nPython custom code to determine metric relevance. Code should set _result (bool) and _explanation (str).\nExample:\n```python\n_result = True\n_explanation = \"Metric is relevant\"\nif \"call_end_reason\" in data and data[\"call_end_reason\"] == \"customer-hung-up\":\n _result = False\n _explanation = \"Customer hung up, metric not applicable\"\n```\n","uniqueKey":"evaluation_trigger_custom_code","typeLabel":"string"},"priority_assignment_prompt":{"type":"string","description":"\nPriority assignment prompt for the metric.\n","uniqueKey":"priority_assignment_prompt","typeLabel":"string"},"configuration":{"description":"\nCustom configuration parameters for specific metrics if metric supports it.\nExample:\n- For Infrastructure issues\n```json\n{\n \"infra_issues_timeout\": 10\n}\n```\n","uniqueKey":"configuration","typeLabel":"any"},"observability_enabled":{"type":"boolean","description":"\nEnable this metric for observability.\nExample: `true` or `false`\n ","uniqueKey":"observability_enabled","typeLabel":"boolean"},"simulation_enabled":{"type":"boolean","description":"\nEnable this metric for simulations.\nExample: `true` or `false`\n ","uniqueKey":"simulation_enabled","typeLabel":"boolean"},"sampling_enabled":{"type":"boolean","description":"Enable sampling for this metric using its sample_rate, or the project sample rate when unset","uniqueKey":"sampling_enabled","typeLabel":"boolean"},"sample_rate":{"oneOf":[{"type":"number","format":"double","maximum":1,"minimum":0,"description":"Sampling rate for this metric (0.0 to 1.0). Overrides the project sample rate when set.","uniqueKey":"sample_rate.oneOf.0","typeLabel":"number\u003cdouble>"},{"type":"null","format":"double","maximum":1,"minimum":0,"description":"Sampling rate for this metric (0.0 to 1.0). Overrides the project sample rate when set.","uniqueKey":"sample_rate.oneOf.1","typeLabel":"null"}],"uniqueKey":"sample_rate","typeLabel":"number\u003cdouble> | null"},"alert_enabled":{"type":"boolean","description":"\nEnable alerts for this metric when it fails (value=false).\nOnly applicable to binary metrics (eval_type=binary).\nFor other metric types, use significant_change_alert_status instead.\nExample: `true` or `false`\n ","uniqueKey":"alert_enabled","typeLabel":"boolean"},"alert_type":{"enum":["disabled","normal","significant_change"],"type":"string","description":"* `disabled` - Alerts Disabled\n* `normal` - Normal Alerts\n* `significant_change` - Significant Change Alerts","x-spec-enum-id":"9e2661f1aeca64cf","default":"disabled","uniqueKey":"alert_type","typeLabel":"enum\u003cstring>"},"alert_filters":{"oneOf":[{"description":"Filters to apply before computing alerts (CallLogQueryFilter format)","uniqueKey":"alert_filters.oneOf.0","typeLabel":"any"},{"type":"null","description":"Filters to apply before computing alerts (CallLogQueryFilter format)","uniqueKey":"alert_filters.oneOf.1","typeLabel":"null"}],"uniqueKey":"alert_filters","typeLabel":"any | null"},"slack_workspace":{"oneOf":[{"type":"integer","description":"Slack workspace to send alerts to","uniqueKey":"slack_workspace.oneOf.0","typeLabel":"integer"},{"type":"null","description":"Slack workspace to send alerts to","uniqueKey":"slack_workspace.oneOf.1","typeLabel":"null"}],"uniqueKey":"slack_workspace","typeLabel":"integer | null"},"slack_channel_id":{"oneOf":[{"type":"string","description":"Override channel ID for this metric's alerts","maxLength":255,"uniqueKey":"slack_channel_id.oneOf.0","typeLabel":"string"},{"type":"null","description":"Override channel ID for this metric's alerts","maxLength":255,"uniqueKey":"slack_channel_id.oneOf.1","typeLabel":"null"}],"uniqueKey":"slack_channel_id","typeLabel":"string | null"},"significant_change_alert_status":{"enum":["enabled","disabled"],"type":"string","x-spec-enum-id":"6d6f4d361b4ea1fb","description":"\nAlert status: enabled or disabled.\n\n\n* `enabled` - Enabled\n* `disabled` - Disabled","uniqueKey":"significant_change_alert_status","typeLabel":"enum\u003cstring>"},"significant_change_alert_direction":{"enum":["","increase","decrease"],"type":"string","x-spec-enum-id":"1e86e60ca5cfba12","description":"Alert direction: increase only, decrease only, or both (empty = both).\nExample: `\"increase\"`, `\"decrease\"`, or `\"both\"`\n\n* `` - Both (Increase and Decrease)\n* `increase` - Increase Only\n* `decrease` - Decrease Only","uniqueKey":"significant_change_alert_direction","typeLabel":"enum\u003cstring>"},"function_name":{"oneOf":[{"type":"string","description":"\nPredefined function name\nExample: `\"get_latency\"` or `\"check_critical_deviations\"`\n","maxLength":255,"uniqueKey":"function_name.oneOf.0","typeLabel":"string"},{"type":"null","description":"\nPredefined function name\nExample: `\"get_latency\"` or `\"check_critical_deviations\"`\n","maxLength":255,"uniqueKey":"function_name.oneOf.1","typeLabel":"null"}],"uniqueKey":"function_name","typeLabel":"string | null"},"custom_code":{"type":"string","description":"\nPython custom code for the metric.\nExample:\n```python\n_resul = True\n_explanation = None\nif \"call_end_reason\" in data and data[\"call_end_reason\"] == \"customer_satisfaction\":\n _result = True\n _explanation = \"Customer expressed satisfaction with service\"\n```\n","uniqueKey":"custom_code","typeLabel":"string"},"vocera_defined_metric_code":{"type":"string","description":"\nVocera defined metric code for the metric.\nExample: `\"7fd534f5\"`\n","maxLength":255,"uniqueKey":"vocera_defined_metric_code","typeLabel":"string"},"scenarios":{"oneOf":[{"writeOnly":true}],"uniqueKey":"scenarios","typeLabel":"any"},"add_to_new_agents":{"oneOf":[{"type":"boolean","description":"When enabled, this metric is automatically assigned to new agents created in the project.","uniqueKey":"add_to_new_agents.oneOf.0","typeLabel":"boolean"},{"type":"null","description":"When enabled, this metric is automatically assigned to new agents created in the project.","uniqueKey":"add_to_new_agents.oneOf.1","typeLabel":"null"}],"uniqueKey":"add_to_new_agents","typeLabel":"boolean | null"}},"required":["eval_type","name"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"name":"\u003cstring>","slug":"\u003cstring>","project":123,"agents":[123],"description":"\u003cstring>","enum_values":"\u003cunknown>","audio_enabled":true,"prompt":"\u003cstring>","evaluation_trigger_prompt":"\u003cstring>","evaluation_trigger_custom_code":"\u003cstring>","priority_assignment_prompt":"\u003cstring>","configuration":"\u003cunknown>","observability_enabled":true,"simulation_enabled":true,"sampling_enabled":true,"sample_rate":0.5,"alert_enabled":true,"alert_type":"disabled","alert_filters":"\u003cunknown>","slack_workspace":123,"slack_channel_id":"\u003cstring>","function_name":"\u003cstring>","custom_code":"\u003cstring>","vocera_defined_metric_code":"\u003cstring>","scenarios":"\u003cunknown>","add_to_new_agents":true}}},"exampleType":"generated"},"application/x-www-form-urlencoded":{"schema":{"type":"object","description":"","properties":{"name":{"type":"string","description":"\nName of the metric.\nExample: `\"Customer Satisfaction\"` or `\"Appointment Booking\"`\n ","maxLength":255,"isRequired":true,"uniqueKey":"name","typeLabel":"string"},"eval_type":{"enum":["binary","continuous_qualitative","numeric","enum"],"type":"string","description":"* `binary` - Binary\n* `continuous_qualitative` - Continuous Qualitative\n* `numeric` - Numeric\n* `enum` - Enum","x-spec-enum-id":"b40eac6824409cc2","isRequired":true,"uniqueKey":"eval_type","typeLabel":"enum\u003cstring>"},"slug":{"oneOf":[{"type":"string","description":"URL-friendly unique identifier in snake_case format. Example: \"customer_satisfaction_1562\"","maxLength":255,"uniqueKey":"slug.oneOf.0","typeLabel":"string"},{"type":"null","description":"URL-friendly unique identifier in snake_case format. Example: \"customer_satisfaction_1562\"","maxLength":255,"uniqueKey":"slug.oneOf.1","typeLabel":"null"}],"uniqueKey":"slug","typeLabel":"string | null"},"project":{"oneOf":[{"type":"integer","uniqueKey":"project.oneOf.0","typeLabel":"integer"},{"type":"null","uniqueKey":"project.oneOf.1","typeLabel":"null"}],"uniqueKey":"project","typeLabel":"integer | null"},"agents":{"type":"array","items":{"oneOf":[{"type":"integer","uniqueKey":"agents.items.[INDEX].oneOf.0","typeLabel":"integer"},{"type":"null","uniqueKey":"agents.items.[INDEX].oneOf.1","typeLabel":"null"}],"uniqueKey":"agents.items.[INDEX]","typeLabel":"integer | null"},"uniqueKey":"agents","typeLabel":"(integer | null)[]"},"description":{"type":"string","description":"\nDescription of what the metric measures.\nExample: `\"Measures how satisfied customers are with the service provided\"`\n ","uniqueKey":"description","typeLabel":"string"},"type":{"enum":["basic","custom_prompt","custom_code","llm_judge"],"type":"string","x-spec-enum-id":"b44700c0a6443b40","description":"\nType of metric\n\n\n* `basic` - Basic (Deprecated in favor of LLM Judge)\n* `custom_prompt` - Custom Prompt ( Deprecated in favor of LLM Judge)\n* `custom_code` - Custom Code\n* `llm_judge` - LLM Judge","uniqueKey":"type","typeLabel":"enum\u003cstring>"},"enum_values":{"description":"\nList of possible enum values for enum type metrics.\nExample: `[\"satisfied\", \"unsatisfied\"]`\n","uniqueKey":"enum_values","typeLabel":"any"},"audio_enabled":{"type":"boolean","description":"\nWhether this metric requires audio analysis.\nExample: `true` or `false`\n ","uniqueKey":"audio_enabled","typeLabel":"boolean"},"prompt":{"type":"string","description":"\nEvaluation prompt for the metric.\nExample: `\"Evaluate customer satisfaction based on conversation\"`\n","uniqueKey":"prompt","typeLabel":"string"},"evaluation_trigger":{"enum":["always","automatic","custom"],"type":"string","description":"* `always` - Always\n* `automatic` - Automatic\n* `custom` - Custom","x-spec-enum-id":"ecd3c02e0e393ef5","uniqueKey":"evaluation_trigger","typeLabel":"enum\u003cstring>"},"trigger_type":{"enum":["llm_judge","custom_code"],"type":"string","x-spec-enum-id":"2adad4b8df61914f","description":"\nType of trigger evaluation: LLM judge or custom code.\nOnly used when evaluation_trigger is CUSTOM.\nExample: `\"llm_judge\"` or `\"custom_code\"`\n\n\n* `llm_judge` - LLM Judge\n* `custom_code` - Custom Code","uniqueKey":"trigger_type","typeLabel":"enum\u003cstring>"},"evaluation_trigger_prompt":{"type":"string","description":"\nEvaluation trigger prompt for the metric.\nExample: `\"Evaluate metric only if call ended reason is main-agent-ended-call\"`\n","uniqueKey":"evaluation_trigger_prompt","typeLabel":"string"},"evaluation_trigger_custom_code":{"type":"string","description":"\nPython custom code to determine metric relevance. Code should set _result (bool) and _explanation (str).\nExample:\n```python\n_result = True\n_explanation = \"Metric is relevant\"\nif \"call_end_reason\" in data and data[\"call_end_reason\"] == \"customer-hung-up\":\n _result = False\n _explanation = \"Customer hung up, metric not applicable\"\n```\n","uniqueKey":"evaluation_trigger_custom_code","typeLabel":"string"},"priority_assignment_prompt":{"type":"string","description":"\nPriority assignment prompt for the metric.\n","uniqueKey":"priority_assignment_prompt","typeLabel":"string"},"configuration":{"description":"\nCustom configuration parameters for specific metrics if metric supports it.\nExample:\n- For Infrastructure issues\n```json\n{\n \"infra_issues_timeout\": 10\n}\n```\n","uniqueKey":"configuration","typeLabel":"any"},"observability_enabled":{"type":"boolean","description":"\nEnable this metric for observability.\nExample: `true` or `false`\n ","uniqueKey":"observability_enabled","typeLabel":"boolean"},"simulation_enabled":{"type":"boolean","description":"\nEnable this metric for simulations.\nExample: `true` or `false`\n ","uniqueKey":"simulation_enabled","typeLabel":"boolean"},"sampling_enabled":{"type":"boolean","description":"Enable sampling for this metric using its sample_rate, or the project sample rate when unset","uniqueKey":"sampling_enabled","typeLabel":"boolean"},"sample_rate":{"oneOf":[{"type":"number","format":"double","maximum":1,"minimum":0,"description":"Sampling rate for this metric (0.0 to 1.0). Overrides the project sample rate when set.","uniqueKey":"sample_rate.oneOf.0","typeLabel":"number\u003cdouble>"},{"type":"null","format":"double","maximum":1,"minimum":0,"description":"Sampling rate for this metric (0.0 to 1.0). Overrides the project sample rate when set.","uniqueKey":"sample_rate.oneOf.1","typeLabel":"null"}],"uniqueKey":"sample_rate","typeLabel":"number\u003cdouble> | null"},"alert_enabled":{"type":"boolean","description":"\nEnable alerts for this metric when it fails (value=false).\nOnly applicable to binary metrics (eval_type=binary).\nFor other metric types, use significant_change_alert_status instead.\nExample: `true` or `false`\n ","uniqueKey":"alert_enabled","typeLabel":"boolean"},"alert_type":{"enum":["disabled","normal","significant_change"],"type":"string","description":"* `disabled` - Alerts Disabled\n* `normal` - Normal Alerts\n* `significant_change` - Significant Change Alerts","x-spec-enum-id":"9e2661f1aeca64cf","default":"disabled","uniqueKey":"alert_type","typeLabel":"enum\u003cstring>"},"alert_filters":{"oneOf":[{"description":"Filters to apply before computing alerts (CallLogQueryFilter format)","uniqueKey":"alert_filters.oneOf.0","typeLabel":"any"},{"type":"null","description":"Filters to apply before computing alerts (CallLogQueryFilter format)","uniqueKey":"alert_filters.oneOf.1","typeLabel":"null"}],"uniqueKey":"alert_filters","typeLabel":"any | null"},"slack_workspace":{"oneOf":[{"type":"integer","description":"Slack workspace to send alerts to","uniqueKey":"slack_workspace.oneOf.0","typeLabel":"integer"},{"type":"null","description":"Slack workspace to send alerts to","uniqueKey":"slack_workspace.oneOf.1","typeLabel":"null"}],"uniqueKey":"slack_workspace","typeLabel":"integer | null"},"slack_channel_id":{"oneOf":[{"type":"string","description":"Override channel ID for this metric's alerts","maxLength":255,"uniqueKey":"slack_channel_id.oneOf.0","typeLabel":"string"},{"type":"null","description":"Override channel ID for this metric's alerts","maxLength":255,"uniqueKey":"slack_channel_id.oneOf.1","typeLabel":"null"}],"uniqueKey":"slack_channel_id","typeLabel":"string | null"},"significant_change_alert_status":{"enum":["enabled","disabled"],"type":"string","x-spec-enum-id":"6d6f4d361b4ea1fb","description":"\nAlert status: enabled or disabled.\n\n\n* `enabled` - Enabled\n* `disabled` - Disabled","uniqueKey":"significant_change_alert_status","typeLabel":"enum\u003cstring>"},"significant_change_alert_direction":{"enum":["","increase","decrease"],"type":"string","x-spec-enum-id":"1e86e60ca5cfba12","description":"Alert direction: increase only, decrease only, or both (empty = both).\nExample: `\"increase\"`, `\"decrease\"`, or `\"both\"`\n\n* `` - Both (Increase and Decrease)\n* `increase` - Increase Only\n* `decrease` - Decrease Only","uniqueKey":"significant_change_alert_direction","typeLabel":"enum\u003cstring>"},"function_name":{"oneOf":[{"type":"string","description":"\nPredefined function name\nExample: `\"get_latency\"` or `\"check_critical_deviations\"`\n","maxLength":255,"uniqueKey":"function_name.oneOf.0","typeLabel":"string"},{"type":"null","description":"\nPredefined function name\nExample: `\"get_latency\"` or `\"check_critical_deviations\"`\n","maxLength":255,"uniqueKey":"function_name.oneOf.1","typeLabel":"null"}],"uniqueKey":"function_name","typeLabel":"string | null"},"custom_code":{"type":"string","description":"\nPython custom code for the metric.\nExample:\n```python\n_resul = True\n_explanation = None\nif \"call_end_reason\" in data and data[\"call_end_reason\"] == \"customer_satisfaction\":\n _result = True\n _explanation = \"Customer expressed satisfaction with service\"\n```\n","uniqueKey":"custom_code","typeLabel":"string"},"vocera_defined_metric_code":{"type":"string","description":"\nVocera defined metric code for the metric.\nExample: `\"7fd534f5\"`\n","maxLength":255,"uniqueKey":"vocera_defined_metric_code","typeLabel":"string"},"scenarios":{"oneOf":[{"writeOnly":true}],"uniqueKey":"scenarios","typeLabel":"any"},"add_to_new_agents":{"oneOf":[{"type":"boolean","description":"When enabled, this metric is automatically assigned to new agents created in the project.","uniqueKey":"add_to_new_agents.oneOf.0","typeLabel":"boolean"},{"type":"null","description":"When enabled, this metric is automatically assigned to new agents created in the project.","uniqueKey":"add_to_new_agents.oneOf.1","typeLabel":"null"}],"uniqueKey":"add_to_new_agents","typeLabel":"boolean | null"}},"required":["eval_type","name"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"name":"\u003cstring>","slug":"\u003cstring>","project":123,"agents":[123],"description":"\u003cstring>","enum_values":"\u003cunknown>","audio_enabled":true,"prompt":"\u003cstring>","evaluation_trigger_prompt":"\u003cstring>","evaluation_trigger_custom_code":"\u003cstring>","priority_assignment_prompt":"\u003cstring>","configuration":"\u003cunknown>","observability_enabled":true,"simulation_enabled":true,"sampling_enabled":true,"sample_rate":0.5,"alert_enabled":true,"alert_type":"disabled","alert_filters":"\u003cunknown>","slack_workspace":123,"slack_channel_id":"\u003cstring>","function_name":"\u003cstring>","custom_code":"\u003cstring>","vocera_defined_metric_code":"\u003cstring>","scenarios":"\u003cunknown>","add_to_new_agents":true}}},"exampleType":"generated"},"multipart/form-data":{"schema":{"type":"object","description":"","properties":{"name":{"type":"string","description":"\nName of the metric.\nExample: `\"Customer Satisfaction\"` or `\"Appointment Booking\"`\n ","maxLength":255,"isRequired":true,"uniqueKey":"name","typeLabel":"string"},"eval_type":{"enum":["binary","continuous_qualitative","numeric","enum"],"type":"string","description":"* `binary` - Binary\n* `continuous_qualitative` - Continuous Qualitative\n* `numeric` - Numeric\n* `enum` - Enum","x-spec-enum-id":"b40eac6824409cc2","isRequired":true,"uniqueKey":"eval_type","typeLabel":"enum\u003cstring>"},"slug":{"oneOf":[{"type":"string","description":"URL-friendly unique identifier in snake_case format. Example: \"customer_satisfaction_1562\"","maxLength":255,"uniqueKey":"slug.oneOf.0","typeLabel":"string"},{"type":"null","description":"URL-friendly unique identifier in snake_case format. Example: \"customer_satisfaction_1562\"","maxLength":255,"uniqueKey":"slug.oneOf.1","typeLabel":"null"}],"uniqueKey":"slug","typeLabel":"string | null"},"project":{"oneOf":[{"type":"integer","uniqueKey":"project.oneOf.0","typeLabel":"integer"},{"type":"null","uniqueKey":"project.oneOf.1","typeLabel":"null"}],"uniqueKey":"project","typeLabel":"integer | null"},"agents":{"type":"array","items":{"oneOf":[{"type":"integer","uniqueKey":"agents.items.[INDEX].oneOf.0","typeLabel":"integer"},{"type":"null","uniqueKey":"agents.items.[INDEX].oneOf.1","typeLabel":"null"}],"uniqueKey":"agents.items.[INDEX]","typeLabel":"integer | null"},"uniqueKey":"agents","typeLabel":"(integer | null)[]"},"description":{"type":"string","description":"\nDescription of what the metric measures.\nExample: `\"Measures how satisfied customers are with the service provided\"`\n ","uniqueKey":"description","typeLabel":"string"},"type":{"enum":["basic","custom_prompt","custom_code","llm_judge"],"type":"string","x-spec-enum-id":"b44700c0a6443b40","description":"\nType of metric\n\n\n* `basic` - Basic (Deprecated in favor of LLM Judge)\n* `custom_prompt` - Custom Prompt ( Deprecated in favor of LLM Judge)\n* `custom_code` - Custom Code\n* `llm_judge` - LLM Judge","uniqueKey":"type","typeLabel":"enum\u003cstring>"},"enum_values":{"description":"\nList of possible enum values for enum type metrics.\nExample: `[\"satisfied\", \"unsatisfied\"]`\n","uniqueKey":"enum_values","typeLabel":"any"},"audio_enabled":{"type":"boolean","description":"\nWhether this metric requires audio analysis.\nExample: `true` or `false`\n ","uniqueKey":"audio_enabled","typeLabel":"boolean"},"prompt":{"type":"string","description":"\nEvaluation prompt for the metric.\nExample: `\"Evaluate customer satisfaction based on conversation\"`\n","uniqueKey":"prompt","typeLabel":"string"},"evaluation_trigger":{"enum":["always","automatic","custom"],"type":"string","description":"* `always` - Always\n* `automatic` - Automatic\n* `custom` - Custom","x-spec-enum-id":"ecd3c02e0e393ef5","uniqueKey":"evaluation_trigger","typeLabel":"enum\u003cstring>"},"trigger_type":{"enum":["llm_judge","custom_code"],"type":"string","x-spec-enum-id":"2adad4b8df61914f","description":"\nType of trigger evaluation: LLM judge or custom code.\nOnly used when evaluation_trigger is CUSTOM.\nExample: `\"llm_judge\"` or `\"custom_code\"`\n\n\n* `llm_judge` - LLM Judge\n* `custom_code` - Custom Code","uniqueKey":"trigger_type","typeLabel":"enum\u003cstring>"},"evaluation_trigger_prompt":{"type":"string","description":"\nEvaluation trigger prompt for the metric.\nExample: `\"Evaluate metric only if call ended reason is main-agent-ended-call\"`\n","uniqueKey":"evaluation_trigger_prompt","typeLabel":"string"},"evaluation_trigger_custom_code":{"type":"string","description":"\nPython custom code to determine metric relevance. Code should set _result (bool) and _explanation (str).\nExample:\n```python\n_result = True\n_explanation = \"Metric is relevant\"\nif \"call_end_reason\" in data and data[\"call_end_reason\"] == \"customer-hung-up\":\n _result = False\n _explanation = \"Customer hung up, metric not applicable\"\n```\n","uniqueKey":"evaluation_trigger_custom_code","typeLabel":"string"},"priority_assignment_prompt":{"type":"string","description":"\nPriority assignment prompt for the metric.\n","uniqueKey":"priority_assignment_prompt","typeLabel":"string"},"configuration":{"description":"\nCustom configuration parameters for specific metrics if metric supports it.\nExample:\n- For Infrastructure issues\n```json\n{\n \"infra_issues_timeout\": 10\n}\n```\n","uniqueKey":"configuration","typeLabel":"any"},"observability_enabled":{"type":"boolean","description":"\nEnable this metric for observability.\nExample: `true` or `false`\n ","uniqueKey":"observability_enabled","typeLabel":"boolean"},"simulation_enabled":{"type":"boolean","description":"\nEnable this metric for simulations.\nExample: `true` or `false`\n ","uniqueKey":"simulation_enabled","typeLabel":"boolean"},"sampling_enabled":{"type":"boolean","description":"Enable sampling for this metric using its sample_rate, or the project sample rate when unset","uniqueKey":"sampling_enabled","typeLabel":"boolean"},"sample_rate":{"oneOf":[{"type":"number","format":"double","maximum":1,"minimum":0,"description":"Sampling rate for this metric (0.0 to 1.0). Overrides the project sample rate when set.","uniqueKey":"sample_rate.oneOf.0","typeLabel":"number\u003cdouble>"},{"type":"null","format":"double","maximum":1,"minimum":0,"description":"Sampling rate for this metric (0.0 to 1.0). Overrides the project sample rate when set.","uniqueKey":"sample_rate.oneOf.1","typeLabel":"null"}],"uniqueKey":"sample_rate","typeLabel":"number\u003cdouble> | null"},"alert_enabled":{"type":"boolean","description":"\nEnable alerts for this metric when it fails (value=false).\nOnly applicable to binary metrics (eval_type=binary).\nFor other metric types, use significant_change_alert_status instead.\nExample: `true` or `false`\n ","uniqueKey":"alert_enabled","typeLabel":"boolean"},"alert_type":{"enum":["disabled","normal","significant_change"],"type":"string","description":"* `disabled` - Alerts Disabled\n* `normal` - Normal Alerts\n* `significant_change` - Significant Change Alerts","x-spec-enum-id":"9e2661f1aeca64cf","default":"disabled","uniqueKey":"alert_type","typeLabel":"enum\u003cstring>"},"alert_filters":{"oneOf":[{"description":"Filters to apply before computing alerts (CallLogQueryFilter format)","uniqueKey":"alert_filters.oneOf.0","typeLabel":"any"},{"type":"null","description":"Filters to apply before computing alerts (CallLogQueryFilter format)","uniqueKey":"alert_filters.oneOf.1","typeLabel":"null"}],"uniqueKey":"alert_filters","typeLabel":"any | null"},"slack_workspace":{"oneOf":[{"type":"integer","description":"Slack workspace to send alerts to","uniqueKey":"slack_workspace.oneOf.0","typeLabel":"integer"},{"type":"null","description":"Slack workspace to send alerts to","uniqueKey":"slack_workspace.oneOf.1","typeLabel":"null"}],"uniqueKey":"slack_workspace","typeLabel":"integer | null"},"slack_channel_id":{"oneOf":[{"type":"string","description":"Override channel ID for this metric's alerts","maxLength":255,"uniqueKey":"slack_channel_id.oneOf.0","typeLabel":"string"},{"type":"null","description":"Override channel ID for this metric's alerts","maxLength":255,"uniqueKey":"slack_channel_id.oneOf.1","typeLabel":"null"}],"uniqueKey":"slack_channel_id","typeLabel":"string | null"},"significant_change_alert_status":{"enum":["enabled","disabled"],"type":"string","x-spec-enum-id":"6d6f4d361b4ea1fb","description":"\nAlert status: enabled or disabled.\n\n\n* `enabled` - Enabled\n* `disabled` - Disabled","uniqueKey":"significant_change_alert_status","typeLabel":"enum\u003cstring>"},"significant_change_alert_direction":{"enum":["","increase","decrease"],"type":"string","x-spec-enum-id":"1e86e60ca5cfba12","description":"Alert direction: increase only, decrease only, or both (empty = both).\nExample: `\"increase\"`, `\"decrease\"`, or `\"both\"`\n\n* `` - Both (Increase and Decrease)\n* `increase` - Increase Only\n* `decrease` - Decrease Only","uniqueKey":"significant_change_alert_direction","typeLabel":"enum\u003cstring>"},"function_name":{"oneOf":[{"type":"string","description":"\nPredefined function name\nExample: `\"get_latency\"` or `\"check_critical_deviations\"`\n","maxLength":255,"uniqueKey":"function_name.oneOf.0","typeLabel":"string"},{"type":"null","description":"\nPredefined function name\nExample: `\"get_latency\"` or `\"check_critical_deviations\"`\n","maxLength":255,"uniqueKey":"function_name.oneOf.1","typeLabel":"null"}],"uniqueKey":"function_name","typeLabel":"string | null"},"custom_code":{"type":"string","description":"\nPython custom code for the metric.\nExample:\n```python\n_resul = True\n_explanation = None\nif \"call_end_reason\" in data and data[\"call_end_reason\"] == \"customer_satisfaction\":\n _result = True\n _explanation = \"Customer expressed satisfaction with service\"\n```\n","uniqueKey":"custom_code","typeLabel":"string"},"vocera_defined_metric_code":{"type":"string","description":"\nVocera defined metric code for the metric.\nExample: `\"7fd534f5\"`\n","maxLength":255,"uniqueKey":"vocera_defined_metric_code","typeLabel":"string"},"scenarios":{"oneOf":[{"writeOnly":true}],"uniqueKey":"scenarios","typeLabel":"any"},"add_to_new_agents":{"oneOf":[{"type":"boolean","description":"When enabled, this metric is automatically assigned to new agents created in the project.","uniqueKey":"add_to_new_agents.oneOf.0","typeLabel":"boolean"},{"type":"null","description":"When enabled, this metric is automatically assigned to new agents created in the project.","uniqueKey":"add_to_new_agents.oneOf.1","typeLabel":"null"}],"uniqueKey":"add_to_new_agents","typeLabel":"boolean | null"}},"required":["eval_type","name"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"name":"\u003cstring>","slug":"\u003cstring>","project":123,"agents":[123],"description":"\u003cstring>","enum_values":"\u003cunknown>","audio_enabled":true,"prompt":"\u003cstring>","evaluation_trigger_prompt":"\u003cstring>","evaluation_trigger_custom_code":"\u003cstring>","priority_assignment_prompt":"\u003cstring>","configuration":"\u003cunknown>","observability_enabled":true,"simulation_enabled":true,"sampling_enabled":true,"sample_rate":0.5,"alert_enabled":true,"alert_type":"disabled","alert_filters":"\u003cunknown>","slack_workspace":123,"slack_channel_id":"\u003cstring>","function_name":"\u003cstring>","custom_code":"\u003cstring>","vocera_defined_metric_code":"\u003cstring>","scenarios":"\u003cunknown>","add_to_new_agents":true}}},"exampleType":"generated"}},"required":true,"exampleType":"generated"},"responses":{"d3c03861-3b4b-4142-b8e5-5b9754273976":{"content":{"application/json":{"schema":{"type":"object","description":"","properties":{"name":{"type":"string","description":"\nName of the metric.\nExample: `\"Customer Satisfaction\"` or `\"Appointment Booking\"`\n ","maxLength":255,"isRequired":true,"uniqueKey":"name","typeLabel":"string"},"eval_type":{"enum":["binary","continuous_qualitative","numeric","enum"],"type":"string","description":"* `binary` - Binary\n* `continuous_qualitative` - Continuous Qualitative\n* `numeric` - Numeric\n* `enum` - Enum","x-spec-enum-id":"b40eac6824409cc2","isRequired":true,"uniqueKey":"eval_type","typeLabel":"enum\u003cstring>"},"id":{"type":"integer","readOnly":true,"uniqueKey":"id","typeLabel":"integer"},"slug":{"oneOf":[{"type":"string","description":"URL-friendly unique identifier in snake_case format. Example: \"customer_satisfaction_1562\"","maxLength":255,"uniqueKey":"slug.oneOf.0","typeLabel":"string"},{"type":"null","description":"URL-friendly unique identifier in snake_case format. Example: \"customer_satisfaction_1562\"","maxLength":255,"uniqueKey":"slug.oneOf.1","typeLabel":"null"}],"uniqueKey":"slug","typeLabel":"string | null"},"project":{"oneOf":[{"type":"integer","uniqueKey":"project.oneOf.0","typeLabel":"integer"},{"type":"null","uniqueKey":"project.oneOf.1","typeLabel":"null"}],"uniqueKey":"project","typeLabel":"integer | null"},"agents":{"type":"array","items":{"oneOf":[{"type":"integer","uniqueKey":"agents.items.[INDEX].oneOf.0","typeLabel":"integer"},{"type":"null","uniqueKey":"agents.items.[INDEX].oneOf.1","typeLabel":"null"}],"uniqueKey":"agents.items.[INDEX]","typeLabel":"integer | null"},"uniqueKey":"agents","typeLabel":"(integer | null)[]"},"description":{"type":"string","description":"\nDescription of what the metric measures.\nExample: `\"Measures how satisfied customers are with the service provided\"`\n ","uniqueKey":"description","typeLabel":"string"},"type":{"enum":["basic","custom_prompt","custom_code","llm_judge"],"type":"string","x-spec-enum-id":"b44700c0a6443b40","description":"\nType of metric\n\n\n* `basic` - Basic (Deprecated in favor of LLM Judge)\n* `custom_prompt` - Custom Prompt ( Deprecated in favor of LLM Judge)\n* `custom_code` - Custom Code\n* `llm_judge` - LLM Judge","uniqueKey":"type","typeLabel":"enum\u003cstring>"},"enum_values":{"description":"\nList of possible enum values for enum type metrics.\nExample: `[\"satisfied\", \"unsatisfied\"]`\n","uniqueKey":"enum_values","typeLabel":"any"},"audio_enabled":{"type":"boolean","description":"\nWhether this metric requires audio analysis.\nExample: `true` or `false`\n ","uniqueKey":"audio_enabled","typeLabel":"boolean"},"prompt":{"type":"string","description":"\nEvaluation prompt for the metric.\nExample: `\"Evaluate customer satisfaction based on conversation\"`\n","uniqueKey":"prompt","typeLabel":"string"},"evaluation_trigger":{"enum":["always","automatic","custom"],"type":"string","description":"* `always` - Always\n* `automatic` - Automatic\n* `custom` - Custom","x-spec-enum-id":"ecd3c02e0e393ef5","uniqueKey":"evaluation_trigger","typeLabel":"enum\u003cstring>"},"trigger_type":{"enum":["llm_judge","custom_code"],"type":"string","x-spec-enum-id":"2adad4b8df61914f","description":"\nType of trigger evaluation: LLM judge or custom code.\nOnly used when evaluation_trigger is CUSTOM.\nExample: `\"llm_judge\"` or `\"custom_code\"`\n\n\n* `llm_judge` - LLM Judge\n* `custom_code` - Custom Code","uniqueKey":"trigger_type","typeLabel":"enum\u003cstring>"},"evaluation_trigger_prompt":{"type":"string","description":"\nEvaluation trigger prompt for the metric.\nExample: `\"Evaluate metric only if call ended reason is main-agent-ended-call\"`\n","uniqueKey":"evaluation_trigger_prompt","typeLabel":"string"},"evaluation_trigger_custom_code":{"type":"string","description":"\nPython custom code to determine metric relevance. Code should set _result (bool) and _explanation (str).\nExample:\n```python\n_result = True\n_explanation = \"Metric is relevant\"\nif \"call_end_reason\" in data and data[\"call_end_reason\"] == \"customer-hung-up\":\n _result = False\n _explanation = \"Customer hung up, metric not applicable\"\n```\n","uniqueKey":"evaluation_trigger_custom_code","typeLabel":"string"},"priority_assignment_prompt":{"type":"string","description":"\nPriority assignment prompt for the metric.\n","uniqueKey":"priority_assignment_prompt","typeLabel":"string"},"configuration":{"description":"\nCustom configuration parameters for specific metrics if metric supports it.\nExample:\n- For Infrastructure issues\n```json\n{\n \"infra_issues_timeout\": 10\n}\n```\n","uniqueKey":"configuration","typeLabel":"any"},"overall_score":{"type":"string","readOnly":true,"description":"The overall score for this metric across all test sets","uniqueKey":"overall_score","typeLabel":"string"},"total_score":{"type":"string","readOnly":true,"description":"The total score for this metric","uniqueKey":"total_score","typeLabel":"string"},"knowledge_base_files":{"type":"string","readOnly":true,"description":"Knowledge base files associated with this metric","uniqueKey":"knowledge_base_files","typeLabel":"string"},"observability_enabled":{"type":"boolean","description":"\nEnable this metric for observability.\nExample: `true` or `false`\n ","uniqueKey":"observability_enabled","typeLabel":"boolean"},"simulation_enabled":{"type":"boolean","description":"\nEnable this metric for simulations.\nExample: `true` or `false`\n ","uniqueKey":"simulation_enabled","typeLabel":"boolean"},"sampling_enabled":{"type":"boolean","description":"Enable sampling for this metric using its sample_rate, or the project sample rate when unset","uniqueKey":"sampling_enabled","typeLabel":"boolean"},"sample_rate":{"oneOf":[{"type":"number","format":"double","maximum":1,"minimum":0,"description":"Sampling rate for this metric (0.0 to 1.0). Overrides the project sample rate when set.","uniqueKey":"sample_rate.oneOf.0","typeLabel":"number\u003cdouble>"},{"type":"null","format":"double","maximum":1,"minimum":0,"description":"Sampling rate for this metric (0.0 to 1.0). Overrides the project sample rate when set.","uniqueKey":"sample_rate.oneOf.1","typeLabel":"null"}],"uniqueKey":"sample_rate","typeLabel":"number\u003cdouble> | null"},"alert_enabled":{"type":"boolean","description":"\nEnable alerts for this metric when it fails (value=false).\nOnly applicable to binary metrics (eval_type=binary).\nFor other metric types, use significant_change_alert_status instead.\nExample: `true` or `false`\n ","uniqueKey":"alert_enabled","typeLabel":"boolean"},"alert_type":{"enum":["disabled","normal","significant_change"],"type":"string","description":"* `disabled` - Alerts Disabled\n* `normal` - Normal Alerts\n* `significant_change` - Significant Change Alerts","x-spec-enum-id":"9e2661f1aeca64cf","default":"disabled","uniqueKey":"alert_type","typeLabel":"enum\u003cstring>"},"alert_filters":{"oneOf":[{"description":"Filters to apply before computing alerts (CallLogQueryFilter format)","uniqueKey":"alert_filters.oneOf.0","typeLabel":"any"},{"type":"null","description":"Filters to apply before computing alerts (CallLogQueryFilter format)","uniqueKey":"alert_filters.oneOf.1","typeLabel":"null"}],"uniqueKey":"alert_filters","typeLabel":"any | null"},"slack_workspace":{"oneOf":[{"type":"integer","description":"Slack workspace to send alerts to","uniqueKey":"slack_workspace.oneOf.0","typeLabel":"integer"},{"type":"null","description":"Slack workspace to send alerts to","uniqueKey":"slack_workspace.oneOf.1","typeLabel":"null"}],"uniqueKey":"slack_workspace","typeLabel":"integer | null"},"slack_channel_id":{"oneOf":[{"type":"string","description":"Override channel ID for this metric's alerts","maxLength":255,"uniqueKey":"slack_channel_id.oneOf.0","typeLabel":"string"},{"type":"null","description":"Override channel ID for this metric's alerts","maxLength":255,"uniqueKey":"slack_channel_id.oneOf.1","typeLabel":"null"}],"uniqueKey":"slack_channel_id","typeLabel":"string | null"},"significant_change_alert_status":{"enum":["enabled","disabled"],"type":"string","x-spec-enum-id":"6d6f4d361b4ea1fb","description":"\nAlert status: enabled or disabled.\n\n\n* `enabled` - Enabled\n* `disabled` - Disabled","uniqueKey":"significant_change_alert_status","typeLabel":"enum\u003cstring>"},"significant_change_alert_direction":{"enum":["","increase","decrease"],"type":"string","x-spec-enum-id":"1e86e60ca5cfba12","description":"Alert direction: increase only, decrease only, or both (empty = both).\nExample: `\"increase\"`, `\"decrease\"`, or `\"both\"`\n\n* `` - Both (Increase and Decrease)\n* `increase` - Increase Only\n* `decrease` - Decrease Only","uniqueKey":"significant_change_alert_direction","typeLabel":"enum\u003cstring>"},"function_name":{"oneOf":[{"type":"string","description":"\nPredefined function name\nExample: `\"get_latency\"` or `\"check_critical_deviations\"`\n","maxLength":255,"uniqueKey":"function_name.oneOf.0","typeLabel":"string"},{"type":"null","description":"\nPredefined function name\nExample: `\"get_latency\"` or `\"check_critical_deviations\"`\n","maxLength":255,"uniqueKey":"function_name.oneOf.1","typeLabel":"null"}],"uniqueKey":"function_name","typeLabel":"string | null"},"custom_code":{"type":"string","description":"\nPython custom code for the metric.\nExample:\n```python\n_resul = True\n_explanation = None\nif \"call_end_reason\" in data and data[\"call_end_reason\"] == \"customer_satisfaction\":\n _result = True\n _explanation = \"Customer expressed satisfaction with service\"\n```\n","uniqueKey":"custom_code","typeLabel":"string"},"vocera_defined_metric_code":{"type":"string","description":"\nVocera defined metric code for the metric.\nExample: `\"7fd534f5\"`\n","maxLength":255,"uniqueKey":"vocera_defined_metric_code","typeLabel":"string"},"reviews":{"type":"array","items":{"type":"object","description":"","properties":{"metric":{"type":"integer","isRequired":true,"uniqueKey":"reviews.items.[INDEX].metric","typeLabel":"integer"},"id":{"type":"integer","readOnly":true,"uniqueKey":"reviews.items.[INDEX].id","typeLabel":"integer"},"test_set":{"type":"object","description":"","required":["agent"],"properties":{"agent":{"type":"integer","isRequired":true,"uniqueKey":"reviews.items.[INDEX].test_set.agent","typeLabel":"integer"},"id":{"type":"integer","readOnly":true,"uniqueKey":"reviews.items.[INDEX].test_set.id","typeLabel":"integer"},"name":{"type":"string","description":"\nName of the test set\nExample: `\"Test Set 1\"`\n","maxLength":255,"uniqueKey":"reviews.items.[INDEX].test_set.name","typeLabel":"string"},"transcript":{"type":"string","description":"Full text transcript of the call.\nExample: \n```text\n[00:01] Testing Agent: Hello. \n[00:02] Main Agent: Hello, how can I help you today?\n[00:03] Testing Agent: Well, I mean, sure. What time exactly are we talking about here\n[00:04] Main Agent: 6 PM.\n[00:05] Testing Agent: Great. I'll book that for you. Just a sec.\n[00:06] Main Agent: Okay.\n```\n","uniqueKey":"reviews.items.[INDEX].test_set.transcript","typeLabel":"string"},"voice_recording_url":{"type":"string","readOnly":true,"uniqueKey":"reviews.items.[INDEX].test_set.voice_recording_url","typeLabel":"string"},"call_end_reason":{"type":"string","description":"Reason why the call ended.\nExample: \n- `\"customer-ended-call\"`\n- `\"agent-ended-call\"`\n","maxLength":255,"uniqueKey":"reviews.items.[INDEX].test_set.call_end_reason","typeLabel":"string"},"duration":{"type":"string","readOnly":true,"uniqueKey":"reviews.items.[INDEX].test_set.duration","typeLabel":"string"},"source_model":{"enum":["CallLog","Run"],"type":"string","description":"* `CallLog` - Call Log\n* `Run` - Run","x-spec-enum-id":"1d8f6db20c0b4cac","readOnly":true,"uniqueKey":"reviews.items.[INDEX].test_set.source_model","typeLabel":"enum\u003cstring>"},"source_id":{"type":"string","readOnly":true,"uniqueKey":"reviews.items.[INDEX].test_set.source_id","typeLabel":"string"},"created_at":{"type":"string","format":"date-time","readOnly":true,"description":"When this record was created.\nExample: `2024-03-15T10:30:45Z`","uniqueKey":"reviews.items.[INDEX].test_set.created_at","typeLabel":"string\u003cdate-time>"},"updated_at":{"type":"string","format":"date-time","readOnly":true,"description":"When this record was last updated.\nExample: `2024-03-15T10:35:11Z`","uniqueKey":"reviews.items.[INDEX].test_set.updated_at","typeLabel":"string\u003cdate-time>"}},"uniqueKey":"reviews.items.[INDEX].test_set","typeLabel":"object"},"expected_value":{"oneOf":[{"description":"\nMetric expected value\nExample:\n- `5` or `0`\n- `one`, `two` or `three` [ enum type ]\n","uniqueKey":"reviews.items.[INDEX].expected_value.oneOf.0","typeLabel":"any"},{"type":"null","description":"\nMetric expected value\nExample:\n- `5` or `0`\n- `one`, `two` or `three` [ enum type ]\n","uniqueKey":"reviews.items.[INDEX].expected_value.oneOf.1","typeLabel":"null"}],"uniqueKey":"reviews.items.[INDEX].expected_value","typeLabel":"any | null"},"actual_value":{"oneOf":[{"description":"\nMetric actual value\nExample:\n- `5` or `0`\n- `one`, `two` or `three` [ enum type ]\n","uniqueKey":"reviews.items.[INDEX].actual_value.oneOf.0","typeLabel":"any"},{"type":"null","description":"\nMetric actual value\nExample:\n- `5` or `0`\n- `one`, `two` or `three` [ enum type ]\n","uniqueKey":"reviews.items.[INDEX].actual_value.oneOf.1","typeLabel":"null"}],"uniqueKey":"reviews.items.[INDEX].actual_value","typeLabel":"any | null"},"explanation":{"description":"\nMetric explanation\nExample:\n```json\n[\"Agent failed to follow the opening script\", \"Missed key product information\"]\n```\n","uniqueKey":"reviews.items.[INDEX].explanation","typeLabel":"any"},"feedback":{"type":"string","description":"\nMetric feedback\nExample:\n- `\"Great Call\"`\n","uniqueKey":"reviews.items.[INDEX].feedback","typeLabel":"string"},"created_at":{"type":"string","format":"date-time","readOnly":true,"description":"\nTimestamp when the metric review was created\nExample: `\"2021-01-01T00:00:00Z\"`\n","uniqueKey":"reviews.items.[INDEX].created_at","typeLabel":"string\u003cdate-time>"},"updated_at":{"type":"string","format":"date-time","readOnly":true,"description":"\nTimestamp when the metric review was last updated\nExample: `\"2021-01-01T00:00:00Z\"`\n","uniqueKey":"reviews.items.[INDEX].updated_at","typeLabel":"string\u003cdate-time>"}},"required":["metric"],"uniqueKey":"reviews.items.[INDEX]","typeLabel":"object"},"readOnly":true,"description":"Reviews associated with the metric","uniqueKey":"reviews","typeLabel":"object[]"},"window_size":{"type":"integer","readOnly":true,"description":"\nWindow size for rolling statistics calculation.\nExample: `50`\n","uniqueKey":"window_size","typeLabel":"integer"},"std_multiplier":{"type":"number","format":"double","readOnly":true,"description":"\nStandard deviation multiplier for threshold calculation.\nExample: `2.0`\n","uniqueKey":"std_multiplier","typeLabel":"number\u003cdouble>"},"ewma_alpha":{"type":"number","format":"double","readOnly":true,"description":"\nAlpha value for exponentially weighted moving average (EWMA) calculation.\nExample: `0.1`\n","uniqueKey":"ewma_alpha","typeLabel":"number\u003cdouble>"},"add_to_new_agents":{"oneOf":[{"type":"boolean","description":"When enabled, this metric is automatically assigned to new agents created in the project.","uniqueKey":"add_to_new_agents.oneOf.0","typeLabel":"boolean"},{"type":"null","description":"When enabled, this metric is automatically assigned to new agents created in the project.","uniqueKey":"add_to_new_agents.oneOf.1","typeLabel":"null"}],"uniqueKey":"add_to_new_agents","typeLabel":"boolean | null"},"pending_optimisation_proposal":{"oneOf":[{"description":"Unsaved proposal from a metric-optimiser cron run. Shape: {description, evaluation_trigger, type, custom_code, score, baseline_score, cron_job_id, cron_job_name, proposed_at}.","uniqueKey":"pending_optimisation_proposal.oneOf.0","typeLabel":"any"},{"type":"null","description":"Unsaved proposal from a metric-optimiser cron run. Shape: {description, evaluation_trigger, type, custom_code, score, baseline_score, cron_job_id, cron_job_name, proposed_at}.","uniqueKey":"pending_optimisation_proposal.oneOf.1","typeLabel":"null"}],"uniqueKey":"pending_optimisation_proposal","typeLabel":"any | null"}},"required":["eval_type","name"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"name":"\u003cstring>","eval_type":"binary","id":123,"slug":"\u003cstring>","project":123,"agents":[123],"description":"\u003cstring>","type":"basic","enum_values":"\u003cunknown>","audio_enabled":true,"prompt":"\u003cstring>","evaluation_trigger":"always","trigger_type":"llm_judge","evaluation_trigger_prompt":"\u003cstring>","evaluation_trigger_custom_code":"\u003cstring>","priority_assignment_prompt":"\u003cstring>","configuration":"\u003cunknown>","overall_score":"\u003cstring>","total_score":"\u003cstring>","knowledge_base_files":"\u003cstring>","observability_enabled":true,"simulation_enabled":true,"sampling_enabled":true,"sample_rate":0.5,"alert_enabled":true,"alert_type":"disabled","alert_filters":"\u003cunknown>","slack_workspace":123,"slack_channel_id":"\u003cstring>","significant_change_alert_status":"enabled","significant_change_alert_direction":"","function_name":"\u003cstring>","custom_code":"\u003cstring>","vocera_defined_metric_code":"\u003cstring>","reviews":[{"metric":123,"id":123,"test_set":{"agent":123,"id":123,"name":"\u003cstring>","transcript":"\u003cstring>","voice_recording_url":"\u003cstring>","call_end_reason":"\u003cstring>","duration":"\u003cstring>","source_model":"CallLog","source_id":"\u003cstring>","created_at":"2023-11-07T05:31:56Z","updated_at":"2023-11-07T05:31:56Z"},"expected_value":"\u003cunknown>","actual_value":"\u003cunknown>","explanation":"\u003cunknown>","feedback":"\u003cstring>","created_at":"2023-11-07T05:31:56Z","updated_at":"2023-11-07T05:31:56Z"}],"window_size":123,"std_multiplier":123,"ewma_alpha":123,"add_to_new_agents":true,"pending_optimisation_proposal":"\u003cunknown>"}}},"exampleType":"generated"}},"description":"","exampleType":"generated"}},"security":{"a496d288-b7f0-4cb8-871f-87284e623b95":{"api_key":{"type":"apiKey","in":"header","name":"X-CEKURA-API-KEY","description":"API Key Authentication. It should be included in the header of each request.","scopes":[],"schemeName":"api_key"}},"0f9c0934-2dc9-47b0-b2eb-274ab0121efd":{"oauth2":{"type":"http","scheme":"bearer","bearerFormat":"JWT","description":"OAuth access token issued by Cekura for connected apps.","scopes":[],"schemeName":"oauth2"}},"a652d23e-c2fe-4444-91f5-4bf2af4ed27a":{"embedded_session":{"type":"http","scheme":"bearer","bearerFormat":"JWT","description":"Embedded-dashboard session token. Internal.","scopes":[],"schemeName":"embedded_session"}},"2677fdd2-0d57-4e81-a689-451ace6f16df":{"supabase_session":{"type":"http","scheme":"bearer","bearerFormat":"JWT","description":"Cekura dashboard session token. Not a customer API credential.","scopes":[],"schemeName":"supabase_session"}}},"servers":{"f9af1b0b-5794-4e02-a267-c74aead5f0c0":{"url":"https://api.cekura.ai"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"apiKey","in":"header","name":"X-CEKURA-API-KEY","description":"API Key Authentication. It should be included in the header of each request.","scopes":[],"schemeName":"api_key"},"schema":{"title":"X-CEKURA-API-KEY","type":"string","description":"API Key Authentication. It should be included in the header of each request.","isRequired":true,"typeLabel":"string","deprecated":false},"schemeName":"api_key","name":"X-CEKURA-API-KEY"}],"title":"api_key"},{"schemes":[{"scheme":{"type":"http","scheme":"bearer","bearerFormat":"JWT","description":"OAuth access token issued by Cekura for connected apps.","scopes":[],"schemeName":"oauth2"},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"OAuth access token issued by Cekura for connected apps.","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"oauth2","name":"Authorization"}],"title":"oauth2"},{"schemes":[{"scheme":{"type":"http","scheme":"bearer","bearerFormat":"JWT","description":"Embedded-dashboard session token. Internal.","scopes":[],"schemeName":"embedded_session"},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"Embedded-dashboard session token. Internal.","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"embedded_session","name":"Authorization"}],"title":"embedded_session"},{"schemes":[{"scheme":{"type":"http","scheme":"bearer","bearerFormat":"JWT","description":"Cekura dashboard session token. Not a customer API credential.","scopes":[],"schemeName":"supabase_session"},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"Cekura dashboard session token. Not a customer API credential.","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"supabase_session","name":"Authorization"}],"title":"supabase_session"}]},"originalFileLocation":"openapi.json"},"subdomain":"vocera","siteName":"Cekura","title":"Generate Clean Metric Description - Cekura","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-05-07T21:50:47.619Z","originalFileLocation":"api-reference/test_framework/generate-metric-description.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Use AI to clean up a metric description (the LLM-judge criterion) into a clear, well-formed prompt. Prefer this over hand-editing a metric\u0026#x27;s description via metrics_partial_update.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Cekura\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/vocera/YLwQi89HOY9MYteg/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/vocera/YLwQi89HOY9MYteg/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/vocera/YLwQi89HOY9MYteg/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/vocera/YLwQi89HOY9MYteg/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/vocera/YLwQi89HOY9MYteg/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/vocera/YLwQi89HOY9MYteg/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/vocera/YLwQi89HOY9MYteg/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/vocera/YLwQi89HOY9MYteg/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/vocera/YLwQi89HOY9MYteg/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Generate Clean Metric Description - Cekura\">\u003cmeta data-mint-head property=\"og:description\" content=\"Use AI to clean up a metric description (the LLM-judge criterion) into a clear, well-formed prompt. Prefer this over hand-editing a metric\u0026#x27;s description via metrics_partial_update.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Cekura\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.cekura.ai/api-reference/test_framework/generate-metric-description\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://vocera.mintlify.app/_mintlify/api/og/v2?division=Metrics\u0026amp;title=Generate+Clean+Metric+Description\u0026amp;description=Use+AI+to+clean+up+a+metric+%60description%60+%28the+LLM-judge+criterion%29+into+a+clear%2C+well-formed+prompt.+Prefer+this+over+hand-editing+a+metric%27s+description+via+%60\u0026amp;theme=799cf4f496cc6ad08a57f778\u0026amp;signature=9f42ae7101e1b161ae69418c499f8ca207893cbfaf15063e7ced7620828f117c\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Generate Clean Metric Description - Cekura\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Use AI to clean up a metric description (the LLM-judge criterion) into a clear, well-formed prompt. Prefer this over hand-editing a metric\u0026#x27;s description via metrics_partial_update.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://vocera.mintlify.app/_mintlify/api/og/v2?division=Metrics\u0026amp;title=Generate+Clean+Metric+Description\u0026amp;description=Use+AI+to+clean+up+a+metric+%60description%60+%28the+LLM-judge+criterion%29+into+a+clear%2C+well-formed+prompt.+Prefer+this+over+hand-editing+a+metric%27s+description+via+%60\u0026amp;theme=799cf4f496cc6ad08a57f778\u0026amp;signature=9f42ae7101e1b161ae69418c499f8ca207893cbfaf15063e7ced7620828f117c\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/vocera/YLwQi89HOY9MYteg/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Cekura\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#8184FF\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.cekura.ai/api-reference/test_framework/generate-metric-description\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/test_framework/generate-metric-description.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.cekura.ai/#organization\",\"name\":\"Cekura\",\"url\":\"https://docs.cekura.ai\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/vocera/NnWFOccGgHKr48PP/logo/logo-dark.svg?fit=max\u0026auto=format\u0026n=NnWFOccGgHKr48PP\u0026q=85\u0026s=fe825439de9afd1d121723398224f0fe\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.cekura.ai#website\",\"name\":\"Cekura\",\"url\":\"https://docs.cekura.ai\",\"publisher\":{\"@id\":\"https://docs.cekura.ai/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.cekura.ai/api-reference/test_framework/generate-metric-description#webpage\",\"url\":\"https://docs.cekura.ai/api-reference/test_framework/generate-metric-description\",\"name\":\"Generate Clean Metric Description\",\"description\":\"Use AI to clean up a metric description (the LLM-judge criterion) into a clear, well-formed prompt. Prefer this over hand-editing a metric's description via metrics_partial_update.\",\"dateModified\":\"2026-05-07T21:50:47.619Z\",\"isPartOf\":{\"@id\":\"https://docs.cekura.ai#website\"},\"breadcrumb\":{\"@id\":\"https://docs.cekura.ai/api-reference/test_framework/generate-metric-description#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.cekura.ai/api-reference/test_framework/generate-metric-description#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"API Reference\",\"item\":\"https://docs.cekura.ai/api-reference/observability/send-calls\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Metrics\",\"item\":\"https://docs.cekura.ai/api-reference/test_framework/get-metric\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Generate Clean Metric Description\",\"item\":\"https://docs.cekura.ai/api-reference/test_framework/generate-metric-description\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.cekura.ai/api-reference/test_framework/generate-metric-description#apireference\",\"headline\":\"Generate Clean Metric Description\",\"name\":\"Generate Clean Metric Description\",\"description\":\"Use AI to clean up a metric description (the LLM-judge criterion) into a clear, well-formed prompt. Prefer this over hand-editing a metric's description via metrics_partial_update.\",\"url\":\"https://docs.cekura.ai/api-reference/test_framework/generate-metric-description\",\"mainEntityOfPage\":{\"@id\":\"https://docs.cekura.ai/api-reference/test_framework/generate-metric-description#webpage\"},\"dateModified\":\"2026-05-07T21:50:47.619Z\",\"publisher\":{\"@id\":\"https://docs.cekura.ai/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.cekura.ai#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Cekura\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Cekura","nav":{"global":null,"tabs":[{"tab":"Documentation","pages":[{"title":"Documentation","href":"/documentation/introduction"}]},{"tab":"API Reference","groups":[{"group":"API Reference","pages":[{"group":"Calls","pages":[{"title":"Send Calls","openapi":"post /observability/v1/observe/","href":"/api-reference/observability/send-calls"},{"title":"Get Call","openapi":"get /observability/v2/call-logs/{id}/","href":"/api-reference/observability/get-call"},{"title":"List Calls","openapi":"get /observability/v2/call-logs/","href":"/api-reference/observability/list-calls"},{"title":"Update Call Log","openapi":"patch /observability/v2/call-logs/{id}/","href":"/api-reference/observability/update-call-log"},{"title":"Reevaluate Calls","openapi":"post /observability/v1/call-logs/rerun_evaluation/","href":"/api-reference/observability/reevaluate-calls"},{"title":"Evaluate Metrics","openapi":"post /observability/v1/call-logs/evaluate_metrics/","href":"/api-reference/observability/evaluate-metrics"},{"title":"Vote on Call Log Metric","openapi":"post /observability/v1/call-logs/{id}/mark_metric_vote/","href":"/api-reference/observability/vote-call-log-metric"},{"title":"Delete Call","openapi":"delete /observability/v1/call-logs/{id}/","href":"/api-reference/observability/delete-call"},{"title":"Get Call Log Trace","openapi":"get /observability/v1/call-logs/{id}/trace/","href":"/api-reference/observability/get-call-log-trace"},{"title":"Retrieve Execution Logs for a Call Log","openapi":"get /observability/v1/call-logs/{id}/logs/","href":"/api-reference/observability/get-call-log-logs"}]},{"group":"Agents","pages":[{"title":"Get Agent","openapi":"get /test_framework/v2/aiagents/{id}/","href":"/api-reference/test_framework/get-agent"},{"title":"List Agents","openapi":"get /test_framework/v2/aiagents/","href":"/api-reference/test_framework/list-agents"},{"title":"Create Agent","openapi":"post /test_framework/v2/aiagents/","href":"/api-reference/test_framework/create-agent"},{"title":"Update Agent (Partial)","openapi":"patch /test_framework/v2/aiagents/{id}/","href":"/api-reference/test_framework/update-agent-partial"},{"title":"Update Agent (Full)","openapi":"put /test_framework/v2/aiagents/{id}/","href":"/api-reference/test_framework/update-agent-full"},{"title":"Delete Agent","openapi":"delete /test_framework/v2/aiagents/{id}/","href":"/api-reference/test_framework/delete-agent"},{"title":"Duplicate Agent","openapi":"post /test_framework/v2/aiagents/{id}/duplicate/","href":"/api-reference/test_framework/duplicate-agent"},{"title":"Auto-fetch Agent from Provider","openapi":"post /test_framework/v2/aiagents/{id}/auto-fetch/","href":"/api-reference/test_framework/auto-fetch-agent"},{"title":"Poll Agent Auto-fetch Progress","openapi":"get /test_framework/v2/aiagents/{id}/auto-fetch-progress/","href":"/api-reference/test_framework/poll-import-progress"},{"title":"List Provider Assistants","openapi":"get /test_framework/v2/aiagents/provider-assistants/","href":"/api-reference/test_framework/list-provider-assistants"},{"title":"Auto-fetch Agent V3","openapi":"post /test_framework/v3/aiagents/{id}/auto-fetch/","href":"/api-reference/test_framework/auto-fetch-agent-v3"},{"title":"Create Agent v3","openapi":"post /test_framework/v3/aiagents/","href":"/api-reference/test_framework/create-agent-v3"}]},{"group":"Metrics","pages":[{"title":"Get Metric","openapi":"get /test_framework/v2/metrics/{id}/","href":"/api-reference/test_framework/get-metric"},{"title":"List Metrics","openapi":"get /test_framework/v2/metrics/","href":"/api-reference/test_framework/list-metrics"},{"title":"Create Metric","openapi":"post /test_framework/v2/metrics/","href":"/api-reference/test_framework/create-metric"},{"title":"Update Metric","openapi":"patch /test_framework/v2/metrics/{id}/","href":"/api-reference/test_framework/update-metric"},{"title":"Delete Metric","openapi":"delete /test_framework/v1/metrics/{id}/","href":"/api-reference/test_framework/delete-metric"},{"title":"Generate Metrics","openapi":"post /test_framework/v1/metrics/generate_metrics/","href":"/api-reference/test_framework/generate-metrics"},{"title":"Get Generate Metrics Progress","openapi":"get /test_framework/v1/metrics/generate_metrics_progress/","description":"Metrics generate metrics progress\n\nDeprecated: `POST /test_framework/v3/metrics/generate_metrics/` does this in one call and returns the result.","href":"/api-reference/test_framework/generate-metrics-progress"},{"title":"Generate Clean Metric Description","openapi":"post /test_framework/v1/metrics/generate_clean_description/","href":"/api-reference/test_framework/generate-metric-description"},{"title":"Generate Metric Evaluation Trigger","description":"Use AI to derive an `evaluation_trigger` for a metric — the condition that decides when the metric should run on a transcript. Prefer this over guessing the trigger by hand.","openapi":"post /test_framework/v1/metrics/generate_evaluation_trigger/","href":"/api-reference/test_framework/generate-evaluation-trigger"},{"title":"Simplify Metric Prompt with AI","openapi":"post /test_framework/v1/metrics/simplify_prompt/","href":"/api-reference/test_framework/simplify-metric-prompt"},{"title":"Poll Simplify Metric Prompt Progress","openapi":"get /test_framework/v1/metrics/simplify_prompt_progress/","href":"/api-reference/test_framework/simplify-metric-prompt-progress"},{"title":"Create Metrics in Bulk","openapi":"post /test_framework/v1/metrics/bulk_create/","href":"/api-reference/test_framework/create-metrics-in-bulk"},{"title":"List Critical Metric Scenarios","openapi":"get /test_framework/v1/critical-metric-scenarios/","href":"/api-reference/test_framework/list-critical-metric-scenarios"},{"title":"Update Critical Metric Scenario","openapi":"patch /test_framework/v1/critical-metric-scenarios/{id}/","href":"/api-reference/test_framework/update-critical-metric-scenario"},{"title":"Preview Metric","openapi":"post /test_framework/v1/metrics/preview/","href":"/api-reference/test_framework/metric-preview"},{"title":"Get Metric Preview Progress","openapi":"get /test_framework/v1/metrics/preview-progress/","href":"/api-reference/test_framework/metric-preview-progress"},{"title":"Start Async Metric Description Generation","openapi":"post /test_framework/v1/metrics/generate_clean_description_bg/","href":"/api-reference/test_framework/start-async-metric-description-generation"},{"title":"Poll Async Metric Description Generation Progress","openapi":"get /test_framework/v1/metrics/generate_clean_description_progress/","href":"/api-reference/test_framework/poll-async-metric-description-generation-progress"},{"title":"Reorder External Metrics","openapi":"patch /test_framework/v1/metrics-external/reorder/","href":"/api-reference/test_framework/reorder-external-metrics"},{"title":"Reorder Metrics","openapi":"patch /test_framework/v1/metrics/reorder/","href":"/api-reference/test_framework/reorder-metrics"},{"title":"Reorder Metrics V2","openapi":"patch /test_framework/v2/metrics/reorder/","href":"/api-reference/test_framework/reorder-metrics-v2"},{"title":"Generate Clean Metric Description V3","openapi":"post /test_framework/v3/metrics/generate_clean_description/","href":"/api-reference/test_framework/generate-clean-metric-description-v3"},{"title":"Generate Metrics V3","openapi":"post /test_framework/v3/metrics/generate_metrics/","href":"/api-reference/test_framework/generate-metrics-v3"},{"title":"Preview Metric V3","openapi":"post /test_framework/v3/metrics/preview/","href":"/api-reference/test_framework/preview-metric-v3"},{"title":"Simplify Metric Prompt V3","openapi":"post /test_framework/v3/metrics/simplify_prompt/","href":"/api-reference/test_framework/simplify-metric-prompt-v3"}]},{"group":"Labs","pages":[{"title":"Create Test Set from Run","openapi":"post /test_framework/test-sets/create_from_run/","href":"/api-reference/test_framework/post-test_frameworktest-setscreate_from_run"},{"title":"Create Test Set from Call Log","openapi":"post /test_framework/test-sets/create_from_call_log/","href":"/api-reference/test_framework/post-test_frameworktest-setscreate_from_call_log"},{"title":"Update Metric Review","openapi":"patch /test_framework/metric-reviews/{id}/","href":"/api-reference/test_framework/metric-review-update"},{"title":"Run Metric Reviews","openapi":"post /test_framework/v1/metrics/{id}/run_reviews/","href":"/api-reference/test_framework/post-test_frameworkmetrics-run_reviews"},{"title":"Get Metric Review Progress","openapi":"get /test_framework/v1/metrics/run_reviews_progress/","href":"/api-reference/test_framework/metric-run-reviews-progress"},{"title":"Auto-Improve Metric","openapi":"post /test_framework/metric-reviews/process_feedbacks/","href":"/api-reference/test_framework/metric-review-process-feedbacks"},{"title":"Get Auto-Improve Progress","openapi":"get /test_framework/metric-reviews/process_feedbacks_progress/","href":"/api-reference/test_framework/metric-review-process-feedbacks-progress"},{"title":"Process Feedbacks Answer","openapi":"post /test_framework/metric-reviews/process_feedbacks_answer/","href":"/api-reference/test_framework/metric-reviews-process-feedbacks-answer"},{"title":"Run Metric Reviews V3","openapi":"post /test_framework/v3/metrics/{id}/run_reviews/","href":"/api-reference/test_framework/run-metric-reviews-v3"}]},{"group":"Evaluators","pages":[{"title":"Get Evaluator","openapi":"get /test_framework/v1/scenarios/{id}/","href":"/api-reference/test_framework/get-evaluator"},{"title":"List Evaluators","openapi":"get /test_framework/v1/scenarios/","href":"/api-reference/test_framework/list-evaluators"},{"title":"Create Evaluator","openapi":"post /test_framework/v1/scenarios/","href":"/api-reference/test_framework/create-evaluator"},{"title":"Update Evaluator","openapi":"patch /test_framework/v1/scenarios/{id}/","href":"/api-reference/test_framework/update-evaluator"},{"title":"Delete Evaluator","openapi":"delete /test_framework/v1/scenarios/{id}/","href":"/api-reference/test_framework/delete-evaluator"},{"title":"Run Evaluator Voice","openapi":"post /test_framework/v1/scenarios/run_scenarios/","href":"/api-reference/test_framework/run-evaluator-voice"},{"title":"Run Evaluator Text","openapi":"post /test_framework/v1/scenarios/run_scenarios_text/","href":"/api-reference/test_framework/run-evaluator-text"},{"title":"Run Evaluator Email","openapi":"post /test_framework/v1/scenarios/run_scenarios_email/","href":"/api-reference/test_framework/run-evaluator-email"},{"title":"Run Evaluator Websocket","openapi":"post /test_framework/v1/scenarios/run_scenarios_with_websockets/","href":"/api-reference/test_framework/run-evaluator-websocket"},{"title":"Run Evaluator Pipecat","openapi":"post /test_framework/v1/scenarios/run_scenarios_pipecat/","href":"/api-reference/test_framework/run-evaluator-pipecat"},{"title":"Run Evaluator VAPI WebRTC","openapi":"post /test_framework/v1/scenarios/run_scenarios_vapi_webrtc/","href":"/api-reference/test_framework/run-evaluator-vapi-webrtc"},{"title":"Run Evaluator Retell WebRTC","openapi":"post /test_framework/v1/scenarios/run_scenarios_retell_webrtc/","href":"/api-reference/test_framework/run-evaluator-retell-webrtc"},{"title":"Run Evaluator ElevenLabs","openapi":"post /test_framework/v1/scenarios/run_scenarios_elevenlabs/","href":"/api-reference/test_framework/run-evaluator-elevenlabs"},{"title":"Run Evaluator CHIRP","openapi":"post /test_framework/v1/scenarios/run_scenarios_chirp/","href":"/api-reference/test_framework/run-evaluator-chirp"},{"title":"Run Evaluator LiveKit (v2)","openapi":"post /test_framework/v1/scenarios/run_scenarios_livekit_v2/","href":"/api-reference/test_framework/run-evaluator-livekit-v2"},{"title":"Run Evaluator Pipecat Cloud (v2)","openapi":"post /test_framework/v1/scenarios/run_scenarios_pipecat_v2/","href":"/api-reference/test_framework/run-evaluator-pipecat-v2"},{"title":"Run Evaluator SIP","openapi":"post /test_framework/v1/scenarios/run_scenarios_sip/","href":"/api-reference/test_framework/run-evaluator-sip"},{"title":"Bulk Update Evaluators","openapi":"post /test_framework/v1/scenarios/adv_update/","href":"/api-reference/test_framework/bulk-update-scenarios"},{"title":"Bulk Delete Evaluators","openapi":"post /test_framework/v1/scenarios/delete_scenarios/","href":"/api-reference/test_framework/bulk-delete-scenarios"},{"title":"Create Evaluator from Transcript","openapi":"post /test_framework/v1/scenarios/create-from-transcript-bg/","href":"/api-reference/test_framework/create-evaluator-from-transcript-bg"},{"title":"Get Create-from-Transcript Progress","openapi":"get /test_framework/v1/scenarios/create-from-transcript-progress/","href":"/api-reference/test_framework/create-evaluator-from-transcript-progress"},{"title":"Create Cronjob","openapi":"post /schedules/v1/cron-jobs/","href":"/api-reference/schedules/create-cronjob"},{"group":"Improve Evaluators","pages":[{"title":"Improve Evaluators with AI","openapi":"post /test_framework/v1/scenarios/scenario-agent/","href":"/api-reference/test_framework/improve-evaluators"},{"title":"Poll Improvement Progress","openapi":"get /test_framework/v1/scenarios/scenario-agent-progress/","href":"/api-reference/test_framework/scenario-agent-progress"},{"title":"Improve Scenario Instructions with AI","openapi":"post /test_framework/v1/scenarios/improve_instructions/","href":"/api-reference/test_framework/improve-instructions"},{"title":"Poll Improve/Generate Instructions Progress","openapi":"get /test_framework/v1/scenarios/instructions-progress/","href":"/api-reference/test_framework/improve-instructions-progress"},{"title":"Update Scenario from Transcript","openapi":"post /test_framework/v1/scenarios/{id}/update_scenario_with_transcript/","href":"/api-reference/test_framework/update-scenario-with-transcript"},{"group":"Improvement Sessions","pages":[{"title":"List Scenario Improvement Sessions","openapi":"get /test_framework/v1/scenario-improvement-sessions/","href":"/api-reference/test_framework/list-improvement-sessions"},{"title":"Create Scenario Improvement Session","openapi":"post /test_framework/v1/scenario-improvement-sessions/","href":"/api-reference/test_framework/create-improvement-session"},{"title":"Get Scenario Improvement Session","openapi":"get /test_framework/v1/scenario-improvement-sessions/{id}/","href":"/api-reference/test_framework/get-improvement-session"},{"title":"Update Scenario Improvement Session","openapi":"patch /test_framework/v1/scenario-improvement-sessions/{id}/","href":"/api-reference/test_framework/update-improvement-session"}]}]},{"group":"Folders","pages":[{"title":"List Folders","openapi":"get /test_framework/v1/scenarios/folders/","href":"/api-reference/test_framework/list-folders"},{"title":"Create Folder","openapi":"post /test_framework/v1/scenarios/create_folder/","href":"/api-reference/test_framework/create-folder"},{"title":"Delete Folder","openapi":"post /test_framework/v1/scenarios/delete_folder/","href":"/api-reference/test_framework/delete-folder"},{"title":"Move Folder","openapi":"post /test_framework/v1/scenarios/move_folder/","href":"/api-reference/test_framework/move-folder"},{"title":"Rename Folder","openapi":"post /test_framework/v1/scenarios/rename_folder/","href":"/api-reference/test_framework/rename-folder"}]},{"group":"Generate Scenarios","pages":[{"title":"Generate Evaluator","openapi":"post /test_framework/v1/scenarios/generate-bg/","href":"/api-reference/test_framework/generate-evaluator-bg"},{"title":"Get Generate Evaluator Progress","openapi":"get /test_framework/v1/scenarios/generate-progress/","href":"/api-reference/test_framework/generate-evaluator-poll-progress"},{"title":"Generate Scenario Instructions with AI","openapi":"post /test_framework/v1/scenarios/generate-instructions/","href":"/api-reference/test_framework/generate-instructions"}]},{"group":"API Chat","pages":[{"title":"Run Evaluator (API Chat)","openapi":"post /test_framework/v1/scenarios/run_scenarios_api_chat/","href":"/api-reference/test_framework/run-evaluator-api-chat"},{"title":"Submit API Chat Turn","openapi":"post /test_framework/v1/runs/{id}/chat/","href":"/api-reference/test_framework/api-chat-submit-turn"},{"title":"Poll API Chat Turn","openapi":"get /test_framework/v1/runs/{id}/chat/{turn_id}/","href":"/api-reference/test_framework/api-chat-poll-turn"},{"title":"End API Chat","openapi":"post /test_framework/v1/runs/{id}/end-chat/","href":"/api-reference/test_framework/api-chat-end"}]},{"title":"Fetch Scenarios JSON Schema","openapi":"get /test_framework/v1/scenarios/json_schema/","href":"/api-reference/test_framework/fetch-scenarios-json-schema"},{"title":"Run Scenarios From Spec JSON","openapi":"post /test_framework/v1/scenarios/run_scenarios_json/","href":"/api-reference/test_framework/run-scenarios-from-spec-json"},{"title":"Update External Scenario Condition Audio","openapi":"put /test_framework/v1/scenarios-external/{id}/condition-audio/{audio_id}/","href":"/api-reference/test_framework/update-external-scenario-condition-audio"},{"title":"Update Scenario Condition Audio","openapi":"put /test_framework/v1/scenarios/{id}/condition-audio/{audio_id}/","href":"/api-reference/test_framework/update-scenario-condition-audio"},{"title":"Update Scenario Condition Audio V2","openapi":"put /test_framework/v2/scenarios/{id}/condition-audio/{audio_id}/","href":"/api-reference/test_framework/update-scenario-condition-audio-v2"},{"title":"Validate Scenarios JSON","openapi":"post /test_framework/v1/scenarios/validate_scenarios_json/","href":"/api-reference/test_framework/validate-scenarios-json"},{"title":"Create Evaluator from Transcript V3","openapi":"post /test_framework/v3/scenarios/create-from-transcript/","href":"/api-reference/test_framework/create-evaluator-from-transcript-v3"},{"title":"Generate Evaluator V3","openapi":"post /test_framework/v3/scenarios/generate/","href":"/api-reference/test_framework/generate-evaluator-v3"},{"title":"Generate Scenario Instructions V3","openapi":"post /test_framework/v3/scenarios/generate-instructions/","href":"/api-reference/test_framework/generate-scenario-instructions-v3"},{"title":"Improve Scenario Instructions V3","openapi":"post /test_framework/v3/scenarios/improve_instructions/","href":"/api-reference/test_framework/improve-scenario-instructions-v3"},{"title":"Run Evaluator V2","openapi":"post /test_framework/v2/scenarios/run/","href":"/api-reference/test_framework/run-evaluator-v2"},{"title":"Correct External Scenario Condition Audio","openapi":"patch /test_framework/v1/scenarios-external/{id}/condition-audio/{audio_id}/","href":"/api-reference/test_framework/correct-external-scenario-condition-audio"},{"title":"Correct Scenario Condition Audio","openapi":"patch /test_framework/v1/scenarios/{id}/condition-audio/{audio_id}/","href":"/api-reference/test_framework/correct-scenario-condition-audio"},{"title":"Correct Scenario Condition Audio V2","openapi":"patch /test_framework/v2/scenarios/{id}/condition-audio/{audio_id}/","href":"/api-reference/test_framework/correct-scenario-condition-audio-v2"}]},{"group":"Test Profiles","pages":[{"title":"Get Test Profile","openapi":"get /test_framework/v1/test-profiles/{id}/","href":"/api-reference/test_framework/get-test-profile"},{"title":"List Test Profiles","openapi":"get /test_framework/v1/test-profiles/","href":"/api-reference/test_framework/list-test-profiles"},{"title":"Create Test Profile","openapi":"post /test_framework/v1/test-profiles/","href":"/api-reference/test_framework/create-test-profile"},{"title":"Update Test Profile","openapi":"patch /test_framework/v1/test-profiles/{id}/","href":"/api-reference/test_framework/update-test-profile"},{"title":"Delete Test Profile","openapi":"Delete /test_framework/v1/test-profiles/{id}/","href":"/api-reference/test_framework/delete-test-profile"}]},{"group":"Results","pages":[{"title":"Get Result","openapi":"get /test_framework/v2/results/{id}/","href":"/api-reference/test_framework/get-result"},{"title":"List Results","openapi":"get /test_framework/v2/results/","href":"/api-reference/test_framework/list-results"},{"title":"Get Combined Results Report","openapi":"get /test_framework/v2/results/reports/","href":"/api-reference/test_framework/get-combined-results-report"},{"title":"Reevaluate Metrics","openapi":"post /test_framework/v1/results/{id}/evaluate_metrics/","href":"/api-reference/test_framework/reevaluate-metrics"},{"title":"Rerun Results","openapi":"post /test_framework/v1/results/{id}/rerun/","href":"/api-reference/test_framework/rerun-results"},{"openapi":"post /test_framework/v1/results/{id}/delete_runs/","title":"Delete runs from result","href":"/api-reference/test_framework/post-test_frameworkresults-delete_runs"},{"openapi":"post /test_framework/v1/results/{id}/end_calls/","title":"End all calls in result","href":"/api-reference/test_framework/post-test_frameworkresults-end_calls"},{"openapi":"post /test_framework/v1/results/{id}/create_shareable_link_token/","title":"Generate shareable link for result","href":"/api-reference/test_framework/post-test_frameworkresults-create_shareable_link_token"},{"title":"Ask About Result Failures","openapi":"post /test_framework/v1/results/{id}/ask_about_failures/","href":"/api-reference/test_framework/ask-about-failures"},{"title":"Get Ask About Failures Progress","openapi":"get /test_framework/v1/results/failure-analysis-progress/","href":"/api-reference/test_framework/ask-about-failures-progress"},{"title":"Bulk Delete Results External","openapi":"post /test_framework/v1/results-external/bulk_delete/","href":"/api-reference/test_framework/bulk-delete-results-external"},{"title":"Bulk Evaluate Results Metrics External","openapi":"post /test_framework/v1/results-external/bulk_evaluate_metrics/","href":"/api-reference/test_framework/bulk-evaluate-results-metrics-external"},{"title":"Bulk Delete Results","openapi":"post /test_framework/v1/results/bulk_delete/","href":"/api-reference/test_framework/bulk-delete-results"},{"title":"Bulk Evaluate Results Metrics","openapi":"post /test_framework/v1/results/bulk_evaluate_metrics/","href":"/api-reference/test_framework/bulk-evaluate-results-metrics"},{"title":"Ask About Failures v3","openapi":"post /test_framework/v3/results/{id}/ask_about_failures/","href":"/api-reference/test_framework/ask-about-failures-v3"}]},{"group":"Runs","pages":[{"title":"List Runs with IDs","openapi":"get /test_framework/v2/runs/bulk/","href":"/api-reference/test_framework/list-runs-with-ids"},{"openapi":"post /test_framework/v1/runs/{id}/end_call/","title":"End a single call","href":"/api-reference/test_framework/post-test_frameworkruns-end_call"},{"title":"Vote on Run Metric","openapi":"post /test_framework/v1/runs/{id}/mark_metric_vote/","href":"/api-reference/test_framework/vote-run-metric"},{"title":"Get Run Trace","openapi":"get /test_framework/v1/runs/{id}/trace/","href":"/api-reference/test_framework/get-run-trace"},{"title":"Retrieve Execution Logs for a Simulation Run","openapi":"get /test_framework/v1/runs/{id}/logs/","href":"/api-reference/test_framework/get-run-logs"}]},{"group":"Schedules","pages":[{"title":"Get Schedule Job","openapi":"get /schedules/v1/cron-jobs/{id}/","href":"/api-reference/schedules/get-schedule-job"},{"title":"List Schedule Jobs","openapi":"get /schedules/v1/cron-jobs/","href":"/api-reference/schedules/list-schedule-jobs"},{"title":"Create Schedule Job","openapi":"post /schedules/v1/cron-jobs/","href":"/api-reference/schedules/create-schedule-job"},{"title":"Update Schedule Job","openapi":"patch /schedules/v1/cron-jobs/{id}/","href":"/api-reference/schedules/update-schedule-job"},{"title":"Delete Schedule Job","openapi":"delete /schedules/v1/cron-jobs/{id}/","href":"/api-reference/schedules/delete-schedule-job"}]},{"group":"Projects","pages":[{"title":"Get project","openapi":"get /user/v1/projects/{id}/","href":"/api-reference/user/get-project"},{"title":"List projects","openapi":"get /user/v1/projects/","href":"/api-reference/user/list-projects"},{"title":"Create project","openapi":"post /user/v1/projects/","href":"/api-reference/user/create-project"},{"title":"Update project","openapi":"patch /user/v1/projects/{id}/","href":"/api-reference/user/update-project"},{"title":"Delete project","openapi":"delete /user/v1/projects/{id}/","href":"/api-reference/user/delete-project"},{"title":"Enable personalities","openapi":"post /user/v1/projects/{id}/enable_personalities/","href":"/api-reference/user/enable-project-personalities"},{"title":"Disable personalities","openapi":"post /user/v1/projects/{id}/disable_personalities/","href":"/api-reference/user/disable-project-personalities"}]},{"group":"Organization","pages":[{"openapi":"get /user/organizations/","title":"List your organizations","href":"/api-reference/user/get-userorganizations"},{"title":"Get Billing Info","openapi":"get /test_framework/billing/info/","href":"/api-reference/organization/get-billing-info"},{"title":"Get Payment History","openapi":"get /test_framework/billing/payment-history/","href":"/api-reference/test_framework/get-payment-history"},{"title":"List Organizations","openapi":"get /user/v2/organizations/","href":"/api-reference/user/list-organizations"},{"title":"Get Unit Usage Report","openapi":"get /test_framework/billing/unit-usage-report/","href":"/api-reference/test_framework/get-unit-usage-report"}]},{"group":"Dashboards","pages":[{"title":"List Dashboards","openapi":"get /dashboards/dashboards/","href":"/api-reference/dashboards/list-dashboards"},{"title":"Create Dashboard","openapi":"post /dashboards/dashboards/","href":"/api-reference/dashboards/create-dashboard"},{"title":"Get Dashboard","openapi":"get /dashboards/dashboards/{id}/","href":"/api-reference/dashboards/get-dashboard"},{"title":"Update Dashboard","openapi":"patch /dashboards/dashboards/{id}/","href":"/api-reference/dashboards/update-dashboard"},{"title":"Delete Dashboard","openapi":"delete /dashboards/dashboards/{id}/","href":"/api-reference/dashboards/delete-dashboard"},{"title":"Duplicate Dashboard","openapi":"post /dashboards/dashboards/{id}/duplicate/","href":"/api-reference/dashboards/duplicate-dashboard"},{"title":"Bulk Widget Operations","openapi":"post /dashboards/dashboards/{id}/bulk_widgets/","href":"/api-reference/dashboards/bulk-widgets"}]},{"group":"Widgets","pages":[{"title":"List Widgets","openapi":"get /dashboards/widgets/","href":"/api-reference/dashboards/list-widgets"},{"title":"Create Widget","openapi":"post /dashboards/widgets/","href":"/api-reference/dashboards/create-widget"},{"title":"Get Widget","openapi":"get /dashboards/widgets/{id}/","href":"/api-reference/dashboards/get-widget"},{"title":"Update Widget","openapi":"patch /dashboards/widgets/{id}/","href":"/api-reference/dashboards/update-widget"},{"title":"Delete Widget","openapi":"delete /dashboards/widgets/{id}/","href":"/api-reference/dashboards/delete-widget"},{"title":"Get Widget Data","openapi":"get /dashboards/widgets/{id}/data/","href":"/api-reference/dashboards/get-widget-data"},{"title":"Preview Widget Data","openapi":"post /dashboards/widgets/preview_data/","href":"/api-reference/dashboards/preview-widget-data"},{"title":"Bulk Widget Data","openapi":"post /dashboards/widgets/bulk_data/","href":"/api-reference/dashboards/widget-bulk-data"}]},{"group":"Audit Logs","pages":[{"title":"List Audit Logs","openapi":"get /user/v1/audit-logs/","href":"/api-reference/user/list-audit-logs"}]},{"group":"API Keys","pages":[{"title":"Create API Key","openapi":"post /user/api/v1/user-api-key/","href":"/api-reference/user/create-api-key"}]},{"group":"Others","pages":[{"title":"List Personalities","openapi":"get /test_framework/v1/personalities/","href":"/api-reference/test_framework/list-personalities"},{"title":"Create Personality","openapi":"post /test_framework/v1/personalities/","href":"/api-reference/test_framework/create-personality"},{"title":"Update Personality","openapi":"patch /test_framework/v1/personalities/{id}/","href":"/api-reference/test_framework/update-personality"},{"title":"Fork Personality","openapi":"post /test_framework/v1/personalities/{id}/fork/","href":"/api-reference/test_framework/fork-personality"},{"title":"List Predefined Metrics","openapi":"get /test_framework/v1/predefined-metrics/","href":"/api-reference/test_framework/list-predefined-metrics"},{"title":"List Inbound Phone Numbers","openapi":"get /test_framework/v1/phone-numbers/inbound/","href":"/api-reference/test_framework/list-inbound-phone-numbers"},{"title":"Create Evaluators from Call Logs","openapi":"post /observability/v1/call-logs/create_scenarios/","href":"/api-reference/observability/create-scenarios-from-call-logs"},{"title":"Get Progress For Evaluator Creation","openapi":"get /observability/v1/call-logs/create_scenarios_progress/","href":"/api-reference/observability/create-scenarios-from-call-logs-progress"},{"title":"Get Alert Review Detail","openapi":"get /observability/v1/alerts/{id}/review_detail/","href":"/api-reference/observability/get-alert-review-detail"},{"title":"Summarize Alert","openapi":"post /observability/v1/alerts/{id}/summarize/","href":"/api-reference/observability/summarize-alert"},{"title":"List Alerts for Review","openapi":"get /observability/v1/alerts/review/","href":"/api-reference/observability/list-alerts-for-review"},{"title":"Get Alert Summarization Progress","openapi":"get /observability/v1/alerts/summarize_progress/","href":"/api-reference/observability/get-alert-summarization-progress"},{"title":"Trigger Alert Summary","openapi":"get /observability/v1/alerts/trigger_summary/","href":"/api-reference/observability/trigger-alert-summary"},{"title":"Bulk Generate Metric Failure Mode Insights","openapi":"post /observability/v1/metric-failure-mode-insights/bulk_generate/","href":"/api-reference/observability/bulk-generate-metric-failure-mode-insights"},{"title":"List Deep Research Insights","openapi":"get /observability/v1/deep-research-insights/","href":"/api-reference/observability/list-deep-research-insights"},{"title":"Get Deep Research Insight","openapi":"get /observability/v1/deep-research-insights/{id}/","href":"/api-reference/observability/get-deep-research-insight"},{"title":"Delete Deep Research Insight","openapi":"delete /observability/v1/deep-research-insights/{id}/","href":"/api-reference/observability/delete-deep-research-insight"},{"title":"Dismiss Deep Research Insight Mode","openapi":"post /observability/v1/deep-research-insights/dismiss_mode/","href":"/api-reference/observability/dismiss-deep-research-insight-mode"},{"title":"Generate Deep Research Insights","openapi":"post /observability/v1/deep-research-insights/generate/","href":"/api-reference/observability/generate-deep-research-insights"},{"title":"Get Metric Failure Mode Insights Available Dates","openapi":"get /observability/v1/metric-failure-mode-insights/available_dates/","href":"/api-reference/observability/get-metric-failure-mode-insights-available-dates"},{"title":"Retrieve Deep Research Insights Pricing","openapi":"get /observability/v1/deep-research-insights/pricing/","href":"/api-reference/observability/retrieve-deep-research-insights-pricing"},{"title":"List Metric Failure Mode Insight Categories","openapi":"get /observability/v1/metric-failure-mode-insights/categories/","href":"/api-reference/observability/list-metric-failure-mode-insight-categories"},{"title":"Add Metric Failure Mode Insight Category Example Calls to Labs","openapi":"post /observability/v1/metric-failure-mode-insights/categories/{category_slug}/fix-metric/","href":"/api-reference/observability/add-metric-failure-mode-insight-category-example-calls-to-labs"},{"title":"List Agent Improvement Sessions","openapi":"get /observability/v1/agent-improvement-sessions/","href":"/api-reference/observability/list-agent-improvement-sessions"},{"title":"Create Agent Improvement Session","openapi":"post /observability/v1/agent-improvement-sessions/","href":"/api-reference/observability/create-agent-improvement-session"},{"title":"Get Agent Improvement Session","openapi":"get /observability/v1/agent-improvement-sessions/{id}/","href":"/api-reference/observability/get-agent-improvement-session"},{"title":"List Metric Failure Mode Insight Category Calls","openapi":"get /observability/v1/metric-failure-mode-insights/categories/{category_slug}/calls/","href":"/api-reference/observability/list-metric-failure-mode-insight-category-calls"},{"title":"Delete Metric Failure Mode Insight Category","openapi":"delete /observability/v1/metric-failure-mode-insights/categories/{category_slug}/delete/","href":"/api-reference/observability/delete-metric-failure-mode-insight-category"},{"title":"List Metric Failure Rates","openapi":"get /observability/v1/metric-failure-mode-insights/failure-rates/","href":"/api-reference/observability/list-metric-failure-rates"},{"title":"List Tools","openapi":"get /test_framework/v1/tools/","href":"/api-reference/test_framework/list-tools"},{"title":"Get Tool","openapi":"get /test_framework/v1/tools/{id}/","href":"/api-reference/test_framework/get-tool"},{"title":"Create External Personality Voice Clone","openapi":"post /test_framework/v1/personalities-external/clone_voice/","href":"/api-reference/test_framework/create-external-personality-voice-clone"},{"title":"Create Personality Voice Clone","openapi":"post /test_framework/v1/personalities/clone_voice/","href":"/api-reference/test_framework/create-personality-voice-clone"},{"title":"Summarize Alert V3","openapi":"post /observability/v3/alerts/{id}/summarize/","href":"/api-reference/observability/summarize-alert-v3"},{"title":"Create Evaluators from Call Logs V3","openapi":"post /observability/v3/call-logs/create_scenarios/","href":"/api-reference/observability/create-evaluators-from-call-logs-v3"}]}]}]},{"tab":"MCP \u0026 Skills","pages":[{"title":"MCP \u0026 Skills","href":"/mcp/overview"}]},{"tab":"CLI \u0026 SDK","pages":[{"title":"CLI \u0026 SDK","href":"/cli-sdk/overview"}]}]},"basePath":"","title":"Generate Clean Metric Description - Cekura","buildId":"dpl_9VVk5y1P8k1ATeJguVngy9Q3cmbD","deploymentId":"dpl_9VVk5y1P8k1ATeJguVngy9Q3cmbD","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-DX1Meug0.js","utils-B_OMIQVC.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-ChxhRPMa.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-CuKvD8Iv.js","snippetPresets-C5d7p2hp.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","ApiExamples-CfHcE8m4.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-C1zZV314.js","shallow-CmQhqCJn.js","getApiPlaygroundDisplay-YRo9s1O7.js","CodeSnippet-RN1MTdfk.js","CodeSnippets-DKLPHxJA.js","Page-BAvA99GL.js","getPastedJson-bz0M41mU.js","icon-CsmhpPrv.js","MethodPill-CNGsVE77.js","DuplicateIcon-DilfU_Z2.js","createIcon-BdsYzQck.js","DynamicMarkdown-CbqEDjbV.js","SectionHeading-O6hXpFCN.js","axios-vUo_bRtp.js","Markdown-nKm-uidQ.js","clsx-ClVdStUn.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-CIQkMg3R.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-ImrFS4Fy.js"]}