benchmarks
Create benchmarks results
Requires scopes: eval:write
POST
/
api
/
benchmarks
/
{id}
/
results
Create benchmarks results
curl --request POST \
--url https://evalgate.com/api/benchmarks/{id}/results \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"agentConfigId": 123,
"customMetrics": {},
"successRate": 123,
"totalCost": "<string>",
"workflowRunId": 123,
"accuracy": 123,
"latencyP50": 123,
"latencyP95": 123,
"toolUseEfficiency": 123,
"taskResults": [
{
"passed": true,
"taskIndex": 123,
"expectedOutput": "<string>",
"metadata": {},
"score": 123,
"actualOutput": "<string>",
"latencyMs": 123,
"errorMessage": "<string>",
"taskInput": "<string>"
}
]
}
'import requests
url = "https://evalgate.com/api/benchmarks/{id}/results"
payload = {
"agentConfigId": 123,
"customMetrics": {},
"successRate": 123,
"totalCost": "<string>",
"workflowRunId": 123,
"accuracy": 123,
"latencyP50": 123,
"latencyP95": 123,
"toolUseEfficiency": 123,
"taskResults": [
{
"passed": True,
"taskIndex": 123,
"expectedOutput": "<string>",
"metadata": {},
"score": 123,
"actualOutput": "<string>",
"latencyMs": 123,
"errorMessage": "<string>",
"taskInput": "<string>"
}
]
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
agentConfigId: 123,
customMetrics: {},
successRate: 123,
totalCost: '<string>',
workflowRunId: 123,
accuracy: 123,
latencyP50: 123,
latencyP95: 123,
toolUseEfficiency: 123,
taskResults: [
{
passed: true,
taskIndex: 123,
expectedOutput: '<string>',
metadata: {},
score: 123,
actualOutput: '<string>',
latencyMs: 123,
errorMessage: '<string>',
taskInput: '<string>'
}
]
})
};
fetch('https://evalgate.com/api/benchmarks/{id}/results', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://evalgate.com/api/benchmarks/{id}/results",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'agentConfigId' => 123,
'customMetrics' => [
],
'successRate' => 123,
'totalCost' => '<string>',
'workflowRunId' => 123,
'accuracy' => 123,
'latencyP50' => 123,
'latencyP95' => 123,
'toolUseEfficiency' => 123,
'taskResults' => [
[
'passed' => true,
'taskIndex' => 123,
'expectedOutput' => '<string>',
'metadata' => [
],
'score' => 123,
'actualOutput' => '<string>',
'latencyMs' => 123,
'errorMessage' => '<string>',
'taskInput' => '<string>'
]
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://evalgate.com/api/benchmarks/{id}/results"
payload := strings.NewReader("{\n \"agentConfigId\": 123,\n \"customMetrics\": {},\n \"successRate\": 123,\n \"totalCost\": \"<string>\",\n \"workflowRunId\": 123,\n \"accuracy\": 123,\n \"latencyP50\": 123,\n \"latencyP95\": 123,\n \"toolUseEfficiency\": 123,\n \"taskResults\": [\n {\n \"passed\": true,\n \"taskIndex\": 123,\n \"expectedOutput\": \"<string>\",\n \"metadata\": {},\n \"score\": 123,\n \"actualOutput\": \"<string>\",\n \"latencyMs\": 123,\n \"errorMessage\": \"<string>\",\n \"taskInput\": \"<string>\"\n }\n ]\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://evalgate.com/api/benchmarks/{id}/results")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"agentConfigId\": 123,\n \"customMetrics\": {},\n \"successRate\": 123,\n \"totalCost\": \"<string>\",\n \"workflowRunId\": 123,\n \"accuracy\": 123,\n \"latencyP50\": 123,\n \"latencyP95\": 123,\n \"toolUseEfficiency\": 123,\n \"taskResults\": [\n {\n \"passed\": true,\n \"taskIndex\": 123,\n \"expectedOutput\": \"<string>\",\n \"metadata\": {},\n \"score\": 123,\n \"actualOutput\": \"<string>\",\n \"latencyMs\": 123,\n \"errorMessage\": \"<string>\",\n \"taskInput\": \"<string>\"\n }\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://evalgate.com/api/benchmarks/{id}/results")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"agentConfigId\": 123,\n \"customMetrics\": {},\n \"successRate\": 123,\n \"totalCost\": \"<string>\",\n \"workflowRunId\": 123,\n \"accuracy\": 123,\n \"latencyP50\": 123,\n \"latencyP95\": 123,\n \"toolUseEfficiency\": 123,\n \"taskResults\": [\n {\n \"passed\": true,\n \"taskIndex\": 123,\n \"expectedOutput\": \"<string>\",\n \"metadata\": {},\n \"score\": 123,\n \"actualOutput\": \"<string>\",\n \"latencyMs\": 123,\n \"errorMessage\": \"<string>\",\n \"taskInput\": \"<string>\"\n }\n ]\n}"
response = http.request(request)
puts response.read_body{
"id": 123,
"createdAt": "2023-11-07T05:31:56Z",
"customMetrics": {},
"successRate": 123,
"totalCost": "<string>",
"workflowRunId": 123,
"accuracy": 123,
"benchmarkId": 123,
"agentConfigId": 123,
"latencyP50": 123,
"latencyP95": 123,
"toolUseEfficiency": 123,
"runCount": 123,
"accuracyStddev": 123,
"latencyP50Stddev": 123,
"successRateStddev": 123
}{
"error": {
"message": "<string>",
"details": "<unknown>",
"requestId": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}
}{
"error": {
"message": "<string>",
"details": "<unknown>",
"requestId": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}
}{
"error": {
"message": "<string>",
"details": "<unknown>",
"requestId": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}
}{
"error": {
"message": "<string>",
"details": "<unknown>",
"requestId": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}
}{
"error": {
"message": "<string>",
"details": "<unknown>",
"requestId": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}
}{
"error": {
"message": "<string>",
"details": "<unknown>",
"requestId": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}
}{
"error": {
"message": "<string>",
"details": "<unknown>",
"requestId": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Path Parameters
Body
application/json
Response
Successful response
Show child attributes
Show child attributes
⌘I
Create benchmarks results
curl --request POST \
--url https://evalgate.com/api/benchmarks/{id}/results \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"agentConfigId": 123,
"customMetrics": {},
"successRate": 123,
"totalCost": "<string>",
"workflowRunId": 123,
"accuracy": 123,
"latencyP50": 123,
"latencyP95": 123,
"toolUseEfficiency": 123,
"taskResults": [
{
"passed": true,
"taskIndex": 123,
"expectedOutput": "<string>",
"metadata": {},
"score": 123,
"actualOutput": "<string>",
"latencyMs": 123,
"errorMessage": "<string>",
"taskInput": "<string>"
}
]
}
'import requests
url = "https://evalgate.com/api/benchmarks/{id}/results"
payload = {
"agentConfigId": 123,
"customMetrics": {},
"successRate": 123,
"totalCost": "<string>",
"workflowRunId": 123,
"accuracy": 123,
"latencyP50": 123,
"latencyP95": 123,
"toolUseEfficiency": 123,
"taskResults": [
{
"passed": True,
"taskIndex": 123,
"expectedOutput": "<string>",
"metadata": {},
"score": 123,
"actualOutput": "<string>",
"latencyMs": 123,
"errorMessage": "<string>",
"taskInput": "<string>"
}
]
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
agentConfigId: 123,
customMetrics: {},
successRate: 123,
totalCost: '<string>',
workflowRunId: 123,
accuracy: 123,
latencyP50: 123,
latencyP95: 123,
toolUseEfficiency: 123,
taskResults: [
{
passed: true,
taskIndex: 123,
expectedOutput: '<string>',
metadata: {},
score: 123,
actualOutput: '<string>',
latencyMs: 123,
errorMessage: '<string>',
taskInput: '<string>'
}
]
})
};
fetch('https://evalgate.com/api/benchmarks/{id}/results', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://evalgate.com/api/benchmarks/{id}/results",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'agentConfigId' => 123,
'customMetrics' => [
],
'successRate' => 123,
'totalCost' => '<string>',
'workflowRunId' => 123,
'accuracy' => 123,
'latencyP50' => 123,
'latencyP95' => 123,
'toolUseEfficiency' => 123,
'taskResults' => [
[
'passed' => true,
'taskIndex' => 123,
'expectedOutput' => '<string>',
'metadata' => [
],
'score' => 123,
'actualOutput' => '<string>',
'latencyMs' => 123,
'errorMessage' => '<string>',
'taskInput' => '<string>'
]
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://evalgate.com/api/benchmarks/{id}/results"
payload := strings.NewReader("{\n \"agentConfigId\": 123,\n \"customMetrics\": {},\n \"successRate\": 123,\n \"totalCost\": \"<string>\",\n \"workflowRunId\": 123,\n \"accuracy\": 123,\n \"latencyP50\": 123,\n \"latencyP95\": 123,\n \"toolUseEfficiency\": 123,\n \"taskResults\": [\n {\n \"passed\": true,\n \"taskIndex\": 123,\n \"expectedOutput\": \"<string>\",\n \"metadata\": {},\n \"score\": 123,\n \"actualOutput\": \"<string>\",\n \"latencyMs\": 123,\n \"errorMessage\": \"<string>\",\n \"taskInput\": \"<string>\"\n }\n ]\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://evalgate.com/api/benchmarks/{id}/results")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"agentConfigId\": 123,\n \"customMetrics\": {},\n \"successRate\": 123,\n \"totalCost\": \"<string>\",\n \"workflowRunId\": 123,\n \"accuracy\": 123,\n \"latencyP50\": 123,\n \"latencyP95\": 123,\n \"toolUseEfficiency\": 123,\n \"taskResults\": [\n {\n \"passed\": true,\n \"taskIndex\": 123,\n \"expectedOutput\": \"<string>\",\n \"metadata\": {},\n \"score\": 123,\n \"actualOutput\": \"<string>\",\n \"latencyMs\": 123,\n \"errorMessage\": \"<string>\",\n \"taskInput\": \"<string>\"\n }\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://evalgate.com/api/benchmarks/{id}/results")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"agentConfigId\": 123,\n \"customMetrics\": {},\n \"successRate\": 123,\n \"totalCost\": \"<string>\",\n \"workflowRunId\": 123,\n \"accuracy\": 123,\n \"latencyP50\": 123,\n \"latencyP95\": 123,\n \"toolUseEfficiency\": 123,\n \"taskResults\": [\n {\n \"passed\": true,\n \"taskIndex\": 123,\n \"expectedOutput\": \"<string>\",\n \"metadata\": {},\n \"score\": 123,\n \"actualOutput\": \"<string>\",\n \"latencyMs\": 123,\n \"errorMessage\": \"<string>\",\n \"taskInput\": \"<string>\"\n }\n ]\n}"
response = http.request(request)
puts response.read_body{
"id": 123,
"createdAt": "2023-11-07T05:31:56Z",
"customMetrics": {},
"successRate": 123,
"totalCost": "<string>",
"workflowRunId": 123,
"accuracy": 123,
"benchmarkId": 123,
"agentConfigId": 123,
"latencyP50": 123,
"latencyP95": 123,
"toolUseEfficiency": 123,
"runCount": 123,
"accuracyStddev": 123,
"latencyP50Stddev": 123,
"successRateStddev": 123
}{
"error": {
"message": "<string>",
"details": "<unknown>",
"requestId": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}
}{
"error": {
"message": "<string>",
"details": "<unknown>",
"requestId": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}
}{
"error": {
"message": "<string>",
"details": "<unknown>",
"requestId": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}
}{
"error": {
"message": "<string>",
"details": "<unknown>",
"requestId": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}
}{
"error": {
"message": "<string>",
"details": "<unknown>",
"requestId": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}
}{
"error": {
"message": "<string>",
"details": "<unknown>",
"requestId": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}
}{
"error": {
"message": "<string>",
"details": "<unknown>",
"requestId": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}
}