Create scores

Attaches an eval score or human-feedback signal to a trace or a single observation.

POST /v1/o11y/llm/scores

Addresshttps://api.hanzo.ai/v1/o11y/llm/scores
MethodPOST
OperationCreateLLMScore
AuthAuthorization: Bearer $HANZO_API_KEY

Attaches an eval score or human-feedback signal to a trace or a single observation.

Callers need the editor role; the runtime's own gate enforces it, and it validates the payload and stamps the score's author and org.

Request

8 fields, body application/json (required).

FieldInTypeRequiredDescription
commentbodystring—Comment is a free-text note.
dataTypebodystring—DataType is the score's kind — NUMERIC or CATEGORICAL.
namebodystring—Name is the score's name, e.g. helpfulness.
observationIdbodystring—ObservationID is the single observation the score attaches to, when narrowed to one.
sourcebodystring—Source is where the score came from, e.g. API, EVAL.
stringValuebodystring—StringValue is the categorical score, when the score is categorical.
traceIdbodystring—TraceID is the trace the score attaches to.
valuebodynumber (double)—Value is the numeric score.

Response

StatusBodyMeaning
201o11y.O11yLLMScoreOutcreated
202Approvalheld for approval
defaultproblem-detailsrefused

201 body — 15 fields.

FieldInTypeAlwaysDescription
databodyo11y.O11yLLMScore—
data.commentbodystring—Comment is a free-text note.
data.createdAtbodystring (date-time)—CreatedAt is when the score was stored.
data.createdBybodystring—CreatedBy is who created the score.
data.dataTypebodystring—DataType is the score's kind — NUMERIC or CATEGORICAL.
data.idbodystring—ID is the score's id.
data.namebodystring—Name is the score's name.
data.observationIdbodystring—ObservationID is the observation the score attaches to, when narrowed.
data.sourcebodystring—Source is where the score came from, e.g. API, EVAL.
data.stringValuebodystring—StringValue is the categorical score, when the score is categorical.
data.timestampbodystring (date-time)—Timestamp is the score's own event time.
data.traceIdbodystring—TraceID is the trace the score attaches to.
data.updatedAtbodystring (date-time)—UpdatedAt is when the score last changed.
data.valuebodynumber (double)—Value is the numeric score.
statusbodystring—Status is "success".

Failure carries the platform error shape — see Errors.

Examples

hanzo o11y llm scores create
import { Configuration, O11yApi } from 'hanzoai';

const api = new O11yApi(new Configuration({ accessToken: process.env.HANZO_API_KEY }));
const { data } = await api.createLLMScore({ comment: "<comment>", dataType: "<dataType>" });
from hanzoai.cloud import ApiClient, Configuration
from hanzoai.cloud.api import O11yApi

client = ApiClient(Configuration(access_token=os.environ["HANZO_API_KEY"]))
result = O11yApi(client).create_llm_score(comment="<comment>", data_type="<dataType>")
cfg := hanzoai.NewConfiguration()
cfg.AddDefaultHeader("Authorization", "Bearer "+os.Getenv("HANZO_API_KEY"))
client := hanzoai.NewAPIClient(cfg)

resp, _, err := client.O11yAPI.CreateLLMScore(context.Background()).Execute()
if err != nil {
	return err
}
use hanzo_client::apis::{configuration::Configuration, o11y_api};

let mut cfg = Configuration::new();
cfg.bearer_access_token = std::env::var("HANZO_API_KEY").ok();

let result = o11y_api::create_llm_score(&cfg, Default::default()).await?;
import ai.hanzo.cloud.ApiClient;
import ai.hanzo.cloud.api.O11yApi;

ApiClient client = new ApiClient();
client.setBearerToken(System.getenv("HANZO_API_KEY"));

var result = new O11yApi(client).createLLMScore();
curl -X POST https://api.hanzo.ai/v1/o11y/llm/scores \
  -H "Authorization: Bearer $HANZO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
       "comment": "<comment>",
       "dataType": "<dataType>"
     }'

Tool o11y, op CreateLLMScore — POST the JSON-RPC envelope to https://api.hanzo.ai/v1/mcp.

curl -X POST https://api.hanzo.ai/v1/mcp \
  -H "Authorization: Bearer $HANZO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
       "jsonrpc": "2.0",
       "id": 1,
       "method": "tools/call",
       "params": {
         "name": "o11y",
         "arguments": {
           "op": "CreateLLMScore",
           "input": {
             "comment": "<comment>",
             "dataType": "<dataType>"
           }
         }
       }
     }'

O11y API · All Hanzo APIs · Interactive reference

Was this page useful?