curl --request PUT \
--url https://api.braintrust.dev/v1/project_score \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"project_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"name": "<string>",
"description": "<string>",
"categories": [
{
"name": "<string>",
"value": 123
}
],
"config": {
"multi_select": true,
"destination": "<string>",
"visibility": {
"users": [
"<string>"
],
"groups": [
"<string>"
]
},
"online": {
"sampling_rate": 0.5,
"scorers": [
{
"type": "function",
"id": "<string>",
"version": "<string>"
}
],
"btql_filter": "<string>",
"apply_to_root_span": true,
"apply_to_span_names": [
"<string>"
],
"skip_logging": true,
"scope": {
"type": "span"
}
},
"condition": {
"when": {
"clauses": [
"<string>"
],
"subspan_clauses": [
"<string>"
],
"trace_clauses": [
"<string>"
]
},
"behavior": "hidden"
},
"object_types": []
}
}
'import requests
url = "https://api.braintrust.dev/v1/project_score"
payload = {
"project_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"name": "<string>",
"description": "<string>",
"categories": [
{
"name": "<string>",
"value": 123
}
],
"config": {
"multi_select": True,
"destination": "<string>",
"visibility": {
"users": ["<string>"],
"groups": ["<string>"]
},
"online": {
"sampling_rate": 0.5,
"scorers": [
{
"type": "function",
"id": "<string>",
"version": "<string>"
}
],
"btql_filter": "<string>",
"apply_to_root_span": True,
"apply_to_span_names": ["<string>"],
"skip_logging": True,
"scope": { "type": "span" }
},
"condition": {
"when": {
"clauses": ["<string>"],
"subspan_clauses": ["<string>"],
"trace_clauses": ["<string>"]
},
"behavior": "hidden"
},
"object_types": []
}
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.put(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PUT',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
project_id: '3c90c3cc-0d44-4b50-8888-8dd25736052a',
name: '<string>',
description: '<string>',
categories: [{name: '<string>', value: 123}],
config: {
multi_select: true,
destination: '<string>',
visibility: {users: ['<string>'], groups: ['<string>']},
online: {
sampling_rate: 0.5,
scorers: [{type: 'function', id: '<string>', version: '<string>'}],
btql_filter: '<string>',
apply_to_root_span: true,
apply_to_span_names: ['<string>'],
skip_logging: true,
scope: {type: 'span'}
},
condition: {
when: {
clauses: ['<string>'],
subspan_clauses: ['<string>'],
trace_clauses: ['<string>']
},
behavior: 'hidden'
},
object_types: []
}
})
};
fetch('https://api.braintrust.dev/v1/project_score', 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.braintrust.dev/v1/project_score",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => json_encode([
'project_id' => '3c90c3cc-0d44-4b50-8888-8dd25736052a',
'name' => '<string>',
'description' => '<string>',
'categories' => [
[
'name' => '<string>',
'value' => 123
]
],
'config' => [
'multi_select' => true,
'destination' => '<string>',
'visibility' => [
'users' => [
'<string>'
],
'groups' => [
'<string>'
]
],
'online' => [
'sampling_rate' => 0.5,
'scorers' => [
[
'type' => 'function',
'id' => '<string>',
'version' => '<string>'
]
],
'btql_filter' => '<string>',
'apply_to_root_span' => true,
'apply_to_span_names' => [
'<string>'
],
'skip_logging' => true,
'scope' => [
'type' => 'span'
]
],
'condition' => [
'when' => [
'clauses' => [
'<string>'
],
'subspan_clauses' => [
'<string>'
],
'trace_clauses' => [
'<string>'
]
],
'behavior' => 'hidden'
],
'object_types' => [
]
]
]),
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://api.braintrust.dev/v1/project_score"
payload := strings.NewReader("{\n \"project_id\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"name\": \"<string>\",\n \"description\": \"<string>\",\n \"categories\": [\n {\n \"name\": \"<string>\",\n \"value\": 123\n }\n ],\n \"config\": {\n \"multi_select\": true,\n \"destination\": \"<string>\",\n \"visibility\": {\n \"users\": [\n \"<string>\"\n ],\n \"groups\": [\n \"<string>\"\n ]\n },\n \"online\": {\n \"sampling_rate\": 0.5,\n \"scorers\": [\n {\n \"type\": \"function\",\n \"id\": \"<string>\",\n \"version\": \"<string>\"\n }\n ],\n \"btql_filter\": \"<string>\",\n \"apply_to_root_span\": true,\n \"apply_to_span_names\": [\n \"<string>\"\n ],\n \"skip_logging\": true,\n \"scope\": {\n \"type\": \"span\"\n }\n },\n \"condition\": {\n \"when\": {\n \"clauses\": [\n \"<string>\"\n ],\n \"subspan_clauses\": [\n \"<string>\"\n ],\n \"trace_clauses\": [\n \"<string>\"\n ]\n },\n \"behavior\": \"hidden\"\n },\n \"object_types\": []\n }\n}")
req, _ := http.NewRequest("PUT", 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.put("https://api.braintrust.dev/v1/project_score")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"project_id\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"name\": \"<string>\",\n \"description\": \"<string>\",\n \"categories\": [\n {\n \"name\": \"<string>\",\n \"value\": 123\n }\n ],\n \"config\": {\n \"multi_select\": true,\n \"destination\": \"<string>\",\n \"visibility\": {\n \"users\": [\n \"<string>\"\n ],\n \"groups\": [\n \"<string>\"\n ]\n },\n \"online\": {\n \"sampling_rate\": 0.5,\n \"scorers\": [\n {\n \"type\": \"function\",\n \"id\": \"<string>\",\n \"version\": \"<string>\"\n }\n ],\n \"btql_filter\": \"<string>\",\n \"apply_to_root_span\": true,\n \"apply_to_span_names\": [\n \"<string>\"\n ],\n \"skip_logging\": true,\n \"scope\": {\n \"type\": \"span\"\n }\n },\n \"condition\": {\n \"when\": {\n \"clauses\": [\n \"<string>\"\n ],\n \"subspan_clauses\": [\n \"<string>\"\n ],\n \"trace_clauses\": [\n \"<string>\"\n ]\n },\n \"behavior\": \"hidden\"\n },\n \"object_types\": []\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.braintrust.dev/v1/project_score")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Put.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"project_id\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"name\": \"<string>\",\n \"description\": \"<string>\",\n \"categories\": [\n {\n \"name\": \"<string>\",\n \"value\": 123\n }\n ],\n \"config\": {\n \"multi_select\": true,\n \"destination\": \"<string>\",\n \"visibility\": {\n \"users\": [\n \"<string>\"\n ],\n \"groups\": [\n \"<string>\"\n ]\n },\n \"online\": {\n \"sampling_rate\": 0.5,\n \"scorers\": [\n {\n \"type\": \"function\",\n \"id\": \"<string>\",\n \"version\": \"<string>\"\n }\n ],\n \"btql_filter\": \"<string>\",\n \"apply_to_root_span\": true,\n \"apply_to_span_names\": [\n \"<string>\"\n ],\n \"skip_logging\": true,\n \"scope\": {\n \"type\": \"span\"\n }\n },\n \"condition\": {\n \"when\": {\n \"clauses\": [\n \"<string>\"\n ],\n \"subspan_clauses\": [\n \"<string>\"\n ],\n \"trace_clauses\": [\n \"<string>\"\n ]\n },\n \"behavior\": \"hidden\"\n },\n \"object_types\": []\n }\n}"
response = http.request(request)
puts response.read_body{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"project_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"user_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"name": "<string>",
"created": "2023-11-07T05:31:56Z",
"description": "<string>",
"categories": [
{
"name": "<string>",
"value": 123
}
],
"config": {
"multi_select": true,
"destination": "<string>",
"visibility": {
"users": [
"<string>"
],
"groups": [
"<string>"
]
},
"online": {
"sampling_rate": 0.5,
"scorers": [
{
"type": "function",
"id": "<string>",
"version": "<string>"
}
],
"btql_filter": "<string>",
"apply_to_root_span": true,
"apply_to_span_names": [
"<string>"
],
"skip_logging": true,
"scope": {
"type": "span"
}
},
"condition": {
"when": {
"clauses": [
"<string>"
],
"subspan_clauses": [
"<string>"
],
"trace_clauses": [
"<string>"
]
},
"behavior": "hidden"
},
"object_types": []
},
"position": "<string>"
}"<string>""<string>""<string>""<string>""<string>"Create or replace project_score
Create or replace project_score. If there is an existing project_score in the project with the same name as the one specified in the request, will replace the existing project_score with the provided fields
curl --request PUT \
--url https://api.braintrust.dev/v1/project_score \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"project_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"name": "<string>",
"description": "<string>",
"categories": [
{
"name": "<string>",
"value": 123
}
],
"config": {
"multi_select": true,
"destination": "<string>",
"visibility": {
"users": [
"<string>"
],
"groups": [
"<string>"
]
},
"online": {
"sampling_rate": 0.5,
"scorers": [
{
"type": "function",
"id": "<string>",
"version": "<string>"
}
],
"btql_filter": "<string>",
"apply_to_root_span": true,
"apply_to_span_names": [
"<string>"
],
"skip_logging": true,
"scope": {
"type": "span"
}
},
"condition": {
"when": {
"clauses": [
"<string>"
],
"subspan_clauses": [
"<string>"
],
"trace_clauses": [
"<string>"
]
},
"behavior": "hidden"
},
"object_types": []
}
}
'import requests
url = "https://api.braintrust.dev/v1/project_score"
payload = {
"project_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"name": "<string>",
"description": "<string>",
"categories": [
{
"name": "<string>",
"value": 123
}
],
"config": {
"multi_select": True,
"destination": "<string>",
"visibility": {
"users": ["<string>"],
"groups": ["<string>"]
},
"online": {
"sampling_rate": 0.5,
"scorers": [
{
"type": "function",
"id": "<string>",
"version": "<string>"
}
],
"btql_filter": "<string>",
"apply_to_root_span": True,
"apply_to_span_names": ["<string>"],
"skip_logging": True,
"scope": { "type": "span" }
},
"condition": {
"when": {
"clauses": ["<string>"],
"subspan_clauses": ["<string>"],
"trace_clauses": ["<string>"]
},
"behavior": "hidden"
},
"object_types": []
}
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.put(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PUT',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
project_id: '3c90c3cc-0d44-4b50-8888-8dd25736052a',
name: '<string>',
description: '<string>',
categories: [{name: '<string>', value: 123}],
config: {
multi_select: true,
destination: '<string>',
visibility: {users: ['<string>'], groups: ['<string>']},
online: {
sampling_rate: 0.5,
scorers: [{type: 'function', id: '<string>', version: '<string>'}],
btql_filter: '<string>',
apply_to_root_span: true,
apply_to_span_names: ['<string>'],
skip_logging: true,
scope: {type: 'span'}
},
condition: {
when: {
clauses: ['<string>'],
subspan_clauses: ['<string>'],
trace_clauses: ['<string>']
},
behavior: 'hidden'
},
object_types: []
}
})
};
fetch('https://api.braintrust.dev/v1/project_score', 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.braintrust.dev/v1/project_score",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => json_encode([
'project_id' => '3c90c3cc-0d44-4b50-8888-8dd25736052a',
'name' => '<string>',
'description' => '<string>',
'categories' => [
[
'name' => '<string>',
'value' => 123
]
],
'config' => [
'multi_select' => true,
'destination' => '<string>',
'visibility' => [
'users' => [
'<string>'
],
'groups' => [
'<string>'
]
],
'online' => [
'sampling_rate' => 0.5,
'scorers' => [
[
'type' => 'function',
'id' => '<string>',
'version' => '<string>'
]
],
'btql_filter' => '<string>',
'apply_to_root_span' => true,
'apply_to_span_names' => [
'<string>'
],
'skip_logging' => true,
'scope' => [
'type' => 'span'
]
],
'condition' => [
'when' => [
'clauses' => [
'<string>'
],
'subspan_clauses' => [
'<string>'
],
'trace_clauses' => [
'<string>'
]
],
'behavior' => 'hidden'
],
'object_types' => [
]
]
]),
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://api.braintrust.dev/v1/project_score"
payload := strings.NewReader("{\n \"project_id\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"name\": \"<string>\",\n \"description\": \"<string>\",\n \"categories\": [\n {\n \"name\": \"<string>\",\n \"value\": 123\n }\n ],\n \"config\": {\n \"multi_select\": true,\n \"destination\": \"<string>\",\n \"visibility\": {\n \"users\": [\n \"<string>\"\n ],\n \"groups\": [\n \"<string>\"\n ]\n },\n \"online\": {\n \"sampling_rate\": 0.5,\n \"scorers\": [\n {\n \"type\": \"function\",\n \"id\": \"<string>\",\n \"version\": \"<string>\"\n }\n ],\n \"btql_filter\": \"<string>\",\n \"apply_to_root_span\": true,\n \"apply_to_span_names\": [\n \"<string>\"\n ],\n \"skip_logging\": true,\n \"scope\": {\n \"type\": \"span\"\n }\n },\n \"condition\": {\n \"when\": {\n \"clauses\": [\n \"<string>\"\n ],\n \"subspan_clauses\": [\n \"<string>\"\n ],\n \"trace_clauses\": [\n \"<string>\"\n ]\n },\n \"behavior\": \"hidden\"\n },\n \"object_types\": []\n }\n}")
req, _ := http.NewRequest("PUT", 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.put("https://api.braintrust.dev/v1/project_score")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"project_id\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"name\": \"<string>\",\n \"description\": \"<string>\",\n \"categories\": [\n {\n \"name\": \"<string>\",\n \"value\": 123\n }\n ],\n \"config\": {\n \"multi_select\": true,\n \"destination\": \"<string>\",\n \"visibility\": {\n \"users\": [\n \"<string>\"\n ],\n \"groups\": [\n \"<string>\"\n ]\n },\n \"online\": {\n \"sampling_rate\": 0.5,\n \"scorers\": [\n {\n \"type\": \"function\",\n \"id\": \"<string>\",\n \"version\": \"<string>\"\n }\n ],\n \"btql_filter\": \"<string>\",\n \"apply_to_root_span\": true,\n \"apply_to_span_names\": [\n \"<string>\"\n ],\n \"skip_logging\": true,\n \"scope\": {\n \"type\": \"span\"\n }\n },\n \"condition\": {\n \"when\": {\n \"clauses\": [\n \"<string>\"\n ],\n \"subspan_clauses\": [\n \"<string>\"\n ],\n \"trace_clauses\": [\n \"<string>\"\n ]\n },\n \"behavior\": \"hidden\"\n },\n \"object_types\": []\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.braintrust.dev/v1/project_score")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Put.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"project_id\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"name\": \"<string>\",\n \"description\": \"<string>\",\n \"categories\": [\n {\n \"name\": \"<string>\",\n \"value\": 123\n }\n ],\n \"config\": {\n \"multi_select\": true,\n \"destination\": \"<string>\",\n \"visibility\": {\n \"users\": [\n \"<string>\"\n ],\n \"groups\": [\n \"<string>\"\n ]\n },\n \"online\": {\n \"sampling_rate\": 0.5,\n \"scorers\": [\n {\n \"type\": \"function\",\n \"id\": \"<string>\",\n \"version\": \"<string>\"\n }\n ],\n \"btql_filter\": \"<string>\",\n \"apply_to_root_span\": true,\n \"apply_to_span_names\": [\n \"<string>\"\n ],\n \"skip_logging\": true,\n \"scope\": {\n \"type\": \"span\"\n }\n },\n \"condition\": {\n \"when\": {\n \"clauses\": [\n \"<string>\"\n ],\n \"subspan_clauses\": [\n \"<string>\"\n ],\n \"trace_clauses\": [\n \"<string>\"\n ]\n },\n \"behavior\": \"hidden\"\n },\n \"object_types\": []\n }\n}"
response = http.request(request)
puts response.read_body{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"project_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"user_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"name": "<string>",
"created": "2023-11-07T05:31:56Z",
"description": "<string>",
"categories": [
{
"name": "<string>",
"value": 123
}
],
"config": {
"multi_select": true,
"destination": "<string>",
"visibility": {
"users": [
"<string>"
],
"groups": [
"<string>"
]
},
"online": {
"sampling_rate": 0.5,
"scorers": [
{
"type": "function",
"id": "<string>",
"version": "<string>"
}
],
"btql_filter": "<string>",
"apply_to_root_span": true,
"apply_to_span_names": [
"<string>"
],
"skip_logging": true,
"scope": {
"type": "span"
}
},
"condition": {
"when": {
"clauses": [
"<string>"
],
"subspan_clauses": [
"<string>"
],
"trace_clauses": [
"<string>"
]
},
"behavior": "hidden"
},
"object_types": []
},
"position": "<string>"
}"<string>""<string>""<string>""<string>""<string>"Authorizations
Most Braintrust endpoints are authenticated by providing your API key as a header Authorization: Bearer [api_key] to your HTTP request. You can create an API key in the Braintrust organization settings page.
Body
Any desired information about the new project_score object
A project score is a user-configured score, which can be manually-labeled through the UI
Unique identifier for the project that the project score belongs under
Name of the project score
The type of the configured score
slider, categorical, weighted, minimum, maximum, online, free-form Textual description of the project score
For categorical-type project scores, the list of all categories
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Response
Returns the new project_score object
A project score is a user-configured score, which can be manually-labeled through the UI
Unique identifier for the project score
Unique identifier for the project that the project score belongs under
Name of the project score
The type of the configured score
slider, categorical, weighted, minimum, maximum, online, free-form Date of project score creation
Textual description of the project score
For categorical-type project scores, the list of all categories
Show child attributes
Show child attributes
Show child attributes
Show child attributes
An optional LexoRank-based string that sets the sort position for the score in the UI
Was this page helpful?