Atomically create a parent category metric plus its children.
The parent gets metric_type=text (it's a category label, not a
score) and selection_mode from the payload. Every child is
forced to boolean so the LLM-evaluation path treats them as
yes/no labels. Both the parent and all children are stamped with
the same scope: either the active workspace (scope="workspace",
default) or workspace_id=NULL (scope="organization", the
org-shared shape).
JWT access token. Use: Authorization: Bearer .
In: header
Header Parameters
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
One-shot create body: a parent metric + N children, atomically.
Children are persisted as full Metric rows with
parent_metric_id set to the new parent. metric_type on every
child is forced to boolean server-side regardless of what's
passed in the parent body.
Response Body
application/json
application/json
curl -X POST "https://example.com/api/v1/metrics/with-children" \ -H "Content-Type: application/json" \ -d '{ "name": "string", "selection_mode": "single_choice" }'{ "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "organization_id": "7c60d51f-b44e-4682-87d6-449835ea4de6", "workspace_id": "0967198e-ec7b-4c6b-b4d3-f71244cadbe9", "scope": "workspace", "name": "string", "description": "string", "example": "string", "metric_type": "number", "metric_category": "quality", "trigger": "always", "enabled": true, "is_default": true, "metric_origin": "string", "supported_surfaces": [ "string" ], "enabled_surfaces": [ "string" ], "custom_data_type": "string", "custom_config": {}, "tags": [ "string" ], "capture_rationale": false, "parent_metric_id": "a4a6359f-6ade-48cb-af32-ccbc80976b98", "selection_mode": "single_choice", "allow_discovery": false, "compare_transcripts": false, "lifecycle": "active", "promoted_from_draft_at": "2019-08-24T14:15:22Z", "studio_notes": "string", "children": [ {} ], "created_at": "2019-08-24T14:15:22Z", "updated_at": "2019-08-24T14:15:22Z", "created_by": "string"}Community & contact
- Found a bug or have a feature request? Open a GitHub issue.
- Join our Discord for faster replies!
