Evaluators
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_message describes the changes in this version.
- Provide either template_config or code_config to match the evaluator's type. code_config.type is a separate inner discriminator (MANAGED or CUSTOM) and is unrelated to the top-level type. Schema and constraints match Create Evaluator.
- For a template version, template_config.llm_config.ai_integration_id must reference an AI integration that exists and is accessible to the evaluator's space; otherwise the request fails with 404.
Responses
- 201 — version created; returns the new EvaluatorVersion.
- 400 — malformed request: evaluator_id fails ID-format validation, the request body fails schema validation (e.g. malformed JSON), or type/config mismatch 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_id does not exist or is not readable by the caller (Evaluator not found), or template_config.llm_config.ai_integration_id does 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. missing commit_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_if_available": 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_if_available": 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"
}
<Note>This endpoint is in beta, read more here.</Note>
post/v2/evaluators/{evaluator_id}/versions
Path parameters
evaluator_idstring required
A universally unique identifier (base64-encoded opaque string).
Example:RW50aXR5OjEyMzQ1
The unique evaluator identifier (base64)
Request body
Response
Returns an evaluator version