Create evaluator version
Endpoint: POST /v2/evaluators/{evaluator_id}/versions
Create a new version of an existing evaluator. The new version becomes the latest version immediately (versioning is append-only).
Payload Requirements
commit_messagedescribes the changes in this version.- Provide either
template_configorcode_configto match the evaluator’stype.code_config.typeis a separate inner discriminator (MANAGEDorCUSTOM) and is unrelated to the top-leveltype. Schema and constraints match Create Evaluator. - For a template version,
template_config.llm_config.ai_integration_idmust reference an AI integration that exists and is accessible to the evaluator’s space; otherwise the request fails with404.
Responses
201— version created; returns the newEvaluatorVersion.400— malformed request:evaluator_idfails ID-format validation, the request body fails schema validation (e.g. malformed JSON), ortype/configmismatch a documented invalid shape.401— missing or invalid credentials.403— the evaluator is readable but the caller lacks permission to create a version on it.404—evaluator_iddoes not exist or is not readable by the caller (Evaluator not found), ortemplate_config.llm_config.ai_integration_iddoes not exist or is not accessible to this space (LLM integration not found or not accessible to this space).422— the body is well-formed JSON but fails business validation (e.g. missingcommit_message, invalid template column name).429— rate limit exceeded.
Valid example (template version)
{
"commit_message": "Improve prompt template for better accuracy",
"template_config": {
"name": "hallucination",
"template": "Given the input: {input}\nand output: {output}\nIs the output a hallucination? Explain your reasoning.",
"include_explanations": true,
"use_function_calling": true,
"classification_choices": {"hallucinated": 0, "factual": 1},
"llm_config": {
"ai_integration_id": "TGxtSW50ZWdyYXRpb246MTI6YUJjRA==",
"model_name": "gpt-4o",
"invocation_parameters": {"temperature": 0},
"provider_parameters": {}
}
}
}
Invalid example (missing required commit_message)
{
"template_config": {
"name": "hallucination",
"template": "Is this a hallucination?",
"include_explanations": false,
"use_function_calling": false,
"llm_config": {
"ai_integration_id": "TGxtSW50ZWdyYXRpb246MTI6YUJjRA==",
"model_name": "gpt-4o",
"invocation_parameters": {},
"provider_parameters": {}
}
}
}
Response 422:
{
"status": 422,
"title": "Unprocessable Entity",
"type": "https://arize.com/docs/ax/rest-reference/errors#validation-error",
"detail": "Invalid input"
}
Invalid example (ai_integration_id does not exist or is not
accessible to this space)
{
"commit_message": "Try a nonexistent integration",
"template_config": {
"name": "hallucination",
"template": "Given {input} and {output}, is it a hallucination?",
"include_explanations": true,
"use_function_calling_if_available": true,
"classification_choices": {"hallucinated": 0, "factual": 1},
"llm_config": {
"ai_integration_id": "TGxtSW50ZWdyYXRpb246OTk5OTk6ZmFrZQ==",
"model_name": "gpt-4o",
"invocation_parameters": {},
"provider_parameters": {}
}
}
}
Response 404:
{
"status": 404,
"title": "Not Found",
"type": "https://arize.com/docs/ax/rest-reference/errors#resource-not-found",
"detail": "LLM integration not found or not accessible to this space"
}
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 evaluator identifier (base64) A universally unique identifier (base64-encoded opaque string).
"RW50aXR5OjEyMzQ1"
Body
Body containing evaluator version creation parameters
- Option 1
- Option 2
Payload for an evaluator version: exactly one of template_config or code_config.
Used both when creating an evaluator (initial version) and when appending a version.
Response
Returns an evaluator version
- Option 1
- Option 2
- Option 3
- Option 4
A versioned snapshot of an evaluator's configuration. The type field
discriminates the branch and matches the parent evaluator's type.
The unique identifier for this version
The parent evaluator ID
A unique hash identifying this version
A message describing the changes in this version
When this version was created
The unique identifier for the user who created this version
Discriminator identifying this as a template evaluator version. Always TEMPLATE for this variant.
TEMPLATE The LLM template configuration for this version