Annotate a batch of experiment runs
Write human annotations to a batch of runs in an experiment.
Idempotency: Writes use upsert semantics — submitting the same annotation config name for the same run overwrites the previous value. Retrying on network failure will not create duplicates.
202 Accepted: The annotations have been accepted and will be written. Visibility in read queries may lag by a short interval. No response body is returned.
Unmatched record IDs: If a record_id does not correspond to an existing
run in the experiment, the annotation for that record is silently ignored.
No error is returned.
Payload Requirements
experiment_idis the path parameter for the target experiment.annotationsis a list of per-run annotation inputs, each identified byrecord_id.- Annotation names must match existing annotation configs in the experiment’s space.
- Up to 1000 runs may be annotated per request.
Valid example
{
"annotations": [
{"record_id": "run_abc", "values": [{"name": "quality", "label": "good"}]}
]
}
Invalid example (annotation name not found in space)
{
"annotations": [
{"record_id": "run_abc", "values": [{"name": "nonexistent_config"}]}
]
}
Authorizations
Most Arize AI endpoints require authentication. For those endpoints that require authentication, include your API key in the request header using the format
Path Parameters
The unique experiment identifier (base64) A universally unique identifier (base64-encoded opaque string).
"RW50aXR5OjEyMzQ1"
Body
Body containing experiment run annotation batch
Batch annotation request for experiment runs.
Batch of experiment run annotations to write. Up to 1000 runs per request.
1 - 1000 elementsResponse
Annotations written successfully. The annotations have been accepted and will be written. Visibility in read queries may lag by a short interval.