curl --request PATCH \
--url https://api.egp.scale.com/v5/evaluation-groups/{group_id} \
--header 'Content-Type: application/json' \
--header 'x-api-key: <api-key>' \
--data '
{
"tags": [
"<string>"
],
"name": "<string>",
"description": "<string>",
"metadata": {},
"row_identifiers": {}
}
'import requests
url = "https://api.egp.scale.com/v5/evaluation-groups/{group_id}"
payload = {
"tags": ["<string>"],
"name": "<string>",
"description": "<string>",
"metadata": {},
"row_identifiers": {}
}
headers = {
"x-api-key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {'x-api-key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
tags: ['<string>'],
name: '<string>',
description: '<string>',
metadata: {},
row_identifiers: {}
})
};
fetch('https://api.egp.scale.com/v5/evaluation-groups/{group_id}', 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://api.egp.scale.com/v5/evaluation-groups/{group_id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PATCH",
CURLOPT_POSTFIELDS => json_encode([
'tags' => [
'<string>'
],
'name' => '<string>',
'description' => '<string>',
'metadata' => [
],
'row_identifiers' => [
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"x-api-key: <api-key>"
],
]);
$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://api.egp.scale.com/v5/evaluation-groups/{group_id}"
payload := strings.NewReader("{\n \"tags\": [\n \"<string>\"\n ],\n \"name\": \"<string>\",\n \"description\": \"<string>\",\n \"metadata\": {},\n \"row_identifiers\": {}\n}")
req, _ := http.NewRequest("PATCH", url, payload)
req.Header.Add("x-api-key", "<api-key>")
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.patch("https://api.egp.scale.com/v5/evaluation-groups/{group_id}")
.header("x-api-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"tags\": [\n \"<string>\"\n ],\n \"name\": \"<string>\",\n \"description\": \"<string>\",\n \"metadata\": {},\n \"row_identifiers\": {}\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.egp.scale.com/v5/evaluation-groups/{group_id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["x-api-key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"tags\": [\n \"<string>\"\n ],\n \"name\": \"<string>\",\n \"description\": \"<string>\",\n \"metadata\": {},\n \"row_identifiers\": {}\n}"
response = http.request(request)
puts response.read_body{
"id": "<string>",
"tags": [
"<string>"
],
"name": "<string>",
"created_at": "2023-11-07T05:31:56Z",
"account_id": "<string>",
"object": "evaluation_group",
"description": "<string>",
"metadata": {},
"deleted_at": "2023-11-07T05:31:56Z",
"members": [
{
"id": "<string>",
"evaluation_group_id": "<string>",
"evaluation_id": "<string>",
"created_at": "2023-11-07T05:31:56Z",
"object": "evaluation_group.member",
"evaluation_name": "<string>",
"evaluation_tags": [
"<string>"
],
"evaluation_created_at": "2023-11-07T05:31:56Z",
"deleted_at": "2023-11-07T05:31:56Z"
}
],
"row_identifiers": [
{
"evaluation_id": "<string>",
"column_name": "<string>",
"object": "evaluation_group.row_identifier"
}
]
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>",
"input": "<unknown>",
"ctx": {}
}
]
}Patch Evaluation Group
Partially update an evaluation group’s attributes.
Only the fields present in the request are changed; unset fields are left untouched. Unlike the PUT endpoint, metadata is merged into the existing metadata key-by-key rather than replaced wholesale, and group membership (evaluation_ids) cannot be changed here — use PUT to replace members. At least one field must be supplied or the request fails with a 400. Supplying row_identifiers replaces the group’s entire row identifier set (an evaluation_id-to-column-name mapping for cross-dataset joins); passing an empty mapping clears it.
curl --request PATCH \
--url https://api.egp.scale.com/v5/evaluation-groups/{group_id} \
--header 'Content-Type: application/json' \
--header 'x-api-key: <api-key>' \
--data '
{
"tags": [
"<string>"
],
"name": "<string>",
"description": "<string>",
"metadata": {},
"row_identifiers": {}
}
'import requests
url = "https://api.egp.scale.com/v5/evaluation-groups/{group_id}"
payload = {
"tags": ["<string>"],
"name": "<string>",
"description": "<string>",
"metadata": {},
"row_identifiers": {}
}
headers = {
"x-api-key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {'x-api-key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
tags: ['<string>'],
name: '<string>',
description: '<string>',
metadata: {},
row_identifiers: {}
})
};
fetch('https://api.egp.scale.com/v5/evaluation-groups/{group_id}', 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://api.egp.scale.com/v5/evaluation-groups/{group_id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PATCH",
CURLOPT_POSTFIELDS => json_encode([
'tags' => [
'<string>'
],
'name' => '<string>',
'description' => '<string>',
'metadata' => [
],
'row_identifiers' => [
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"x-api-key: <api-key>"
],
]);
$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://api.egp.scale.com/v5/evaluation-groups/{group_id}"
payload := strings.NewReader("{\n \"tags\": [\n \"<string>\"\n ],\n \"name\": \"<string>\",\n \"description\": \"<string>\",\n \"metadata\": {},\n \"row_identifiers\": {}\n}")
req, _ := http.NewRequest("PATCH", url, payload)
req.Header.Add("x-api-key", "<api-key>")
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.patch("https://api.egp.scale.com/v5/evaluation-groups/{group_id}")
.header("x-api-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"tags\": [\n \"<string>\"\n ],\n \"name\": \"<string>\",\n \"description\": \"<string>\",\n \"metadata\": {},\n \"row_identifiers\": {}\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.egp.scale.com/v5/evaluation-groups/{group_id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["x-api-key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"tags\": [\n \"<string>\"\n ],\n \"name\": \"<string>\",\n \"description\": \"<string>\",\n \"metadata\": {},\n \"row_identifiers\": {}\n}"
response = http.request(request)
puts response.read_body{
"id": "<string>",
"tags": [
"<string>"
],
"name": "<string>",
"created_at": "2023-11-07T05:31:56Z",
"account_id": "<string>",
"object": "evaluation_group",
"description": "<string>",
"metadata": {},
"deleted_at": "2023-11-07T05:31:56Z",
"members": [
{
"id": "<string>",
"evaluation_group_id": "<string>",
"evaluation_id": "<string>",
"created_at": "2023-11-07T05:31:56Z",
"object": "evaluation_group.member",
"evaluation_name": "<string>",
"evaluation_tags": [
"<string>"
],
"evaluation_created_at": "2023-11-07T05:31:56Z",
"deleted_at": "2023-11-07T05:31:56Z"
}
],
"row_identifiers": [
{
"evaluation_id": "<string>",
"column_name": "<string>",
"object": "evaluation_group.row_identifier"
}
]
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>",
"input": "<unknown>",
"ctx": {}
}
]
}Authorizations
Headers
Path Parameters
Body
Request model for partial update of evaluation group attributes (name, description, tags, metadata, row_identifiers) (PATCH)
The tags associated with the entity
Name of the evaluation group
128Optional description
Optional metadata key-value pairs
Optional mapping of evaluation_id to column name for cross-dataset joins
Show child attributes
Show child attributes
Response
Successful Response
Response model for evaluation group
Unique identifier of the evaluation group
The tags associated with the entity
Name of the evaluation group
When the group was created
Account that owns this evaluation group
"evaluation_group"Optional description
Optional metadata key-value pairs
When the group was soft-deleted
Evaluation members in this group. Populated with 'members' view.
Show child attributes
Show child attributes
Row identifier mappings. Populated with 'row_identifiers' view.
Show child attributes
Show child attributes

