List functions
List out all functions. The functions are sorted by creation date, with the most recently-created functions coming first
Authorization
Authorization
RequiredBearer <token>
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.
In: header
Query Parameters
limit
integer | null
Limit the number of objects to return
Minimum:0
starting_after
string
Pagination cursor id.
For example, if the final item in the last page you fetched had an id of foo
, pass starting_after=foo
to fetch the next page. Note: you may only pass one of starting_after
and ending_before
"uuid"
ending_before
string
Pagination cursor id.
For example, if the initial item in the last page you fetched had an id of foo
, pass ending_before=foo
to fetch the previous page. Note: you may only pass one of starting_after
and ending_before
"uuid"
ids
Any properties in string, array<string>
Filter search results to a particular set of object IDs. To specify a list of IDs, include the query param multiple times
function_name
string
Name of the function to search for
project_name
string
Name of the project to search for
project_id
string
Project id
Format:"uuid"
slug
string
Retrieve prompt with a specific slug
version
string
Retrieve prompt at a specific version.
The version id can either be a transaction id (e.g. '1000192656880881099') or a version identifier (e.g. '81cd05ee665fdfb3').
org_name
string
Filter search results to within a particular organization
Status code | Description |
---|---|
200 | Returns a list of function objects |
400 | The request was unacceptable, often due to missing a required parameter |
401 | No valid API key provided |
403 | The API key doesn’t have permissions to perform the request |
429 | Too many requests hit the API too quickly. We recommend an exponential backoff of your requests |
500 | Something went wrong on Braintrust's end. (These are rare.) |
Create function
Create a new function. If there is an existing function in the project with the same slug as the one specified in the request, will return the existing function unmodified
Authorization
Authorization
RequiredBearer <token>
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.
In: header
Request Body (Optional)
Any desired information about the new function object
project_id
Requiredstring
Unique identifier for the project that the prompt belongs under
Format:"uuid"
name
Requiredstring
Name of the prompt
Minimum length:1
slug
Requiredstring
Unique identifier for the prompt
Minimum length:1
description
string | null
Textual description of the prompt
prompt_data
object | null
The prompt, model, and its parameters
tags
array<string> | null
A list of tags for the prompt
function_type
string | null
Value in: "llm" | "scorer" | "task" | "tool" | null
function_data
RequiredAny properties in prompt, code, global
origin
object | null
function_schema
object | null
JSON schema for the function's parameters and return type
Status code | Description |
---|---|
200 | Returns the new function object |
400 | The request was unacceptable, often due to missing a required parameter |
401 | No valid API key provided |
403 | The API key doesn’t have permissions to perform the request |
429 | Too many requests hit the API too quickly. We recommend an exponential backoff of your requests |
500 | Something went wrong on Braintrust's end. (These are rare.) |
Create or replace function
Create or replace function. If there is an existing function in the project with the same slug as the one specified in the request, will replace the existing function with the provided fields
Authorization
Authorization
RequiredBearer <token>
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.
In: header
Request Body (Optional)
Any desired information about the new function object
project_id
Requiredstring
Unique identifier for the project that the prompt belongs under
Format:"uuid"
name
Requiredstring
Name of the prompt
Minimum length:1
slug
Requiredstring
Unique identifier for the prompt
Minimum length:1
description
string | null
Textual description of the prompt
prompt_data
object | null
The prompt, model, and its parameters
tags
array<string> | null
A list of tags for the prompt
function_type
string | null
Value in: "llm" | "scorer" | "task" | "tool" | null
function_data
RequiredAny properties in prompt, code, global
origin
object | null
function_schema
object | null
JSON schema for the function's parameters and return type
Status code | Description |
---|---|
200 | Returns the new function object |
400 | The request was unacceptable, often due to missing a required parameter |
401 | No valid API key provided |
403 | The API key doesn’t have permissions to perform the request |
429 | Too many requests hit the API too quickly. We recommend an exponential backoff of your requests |
500 | Something went wrong on Braintrust's end. (These are rare.) |
{function_id}
Get function
Get a function object by its id
Authorization
Authorization
RequiredBearer <token>
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.
In: header
Path Parameters
function_id
Requiredstring
Function id
Format:"uuid"
Status code | Description |
---|---|
200 | Returns the function object |
400 | The request was unacceptable, often due to missing a required parameter |
401 | No valid API key provided |
403 | The API key doesn’t have permissions to perform the request |
429 | Too many requests hit the API too quickly. We recommend an exponential backoff of your requests |
500 | Something went wrong on Braintrust's end. (These are rare.) |
{function_id}
Partially update function
Partially update a function object. Specify the fields to update in the payload. Any object-type fields will be deep-merged with existing content. Currently we do not support removing fields or setting them to null.
Authorization
Authorization
RequiredBearer <token>
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.
In: header
Request Body (Optional)
Fields to update
name
string | null
Name of the prompt
description
string | null
Textual description of the prompt
prompt_data
object | null
The prompt, model, and its parameters
function_data
Any properties in prompt, code, global, nullableVariant | null
tags
array<string> | null
A list of tags for the prompt
Path Parameters
function_id
Requiredstring
Function id
Format:"uuid"
Status code | Description |
---|---|
200 | Returns the function object |
400 | The request was unacceptable, often due to missing a required parameter |
401 | No valid API key provided |
403 | The API key doesn’t have permissions to perform the request |
429 | Too many requests hit the API too quickly. We recommend an exponential backoff of your requests |
500 | Something went wrong on Braintrust's end. (These are rare.) |
{function_id}
Delete function
Delete a function object by its id
Authorization
Authorization
RequiredBearer <token>
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.
In: header
Path Parameters
function_id
Requiredstring
Function id
Format:"uuid"
Status code | Description |
---|---|
200 | Returns the deleted function object |
400 | The request was unacceptable, often due to missing a required parameter |
401 | No valid API key provided |
403 | The API key doesn’t have permissions to perform the request |
429 | Too many requests hit the API too quickly. We recommend an exponential backoff of your requests |
500 | Something went wrong on Braintrust's end. (These are rare.) |
{function_id}
/invokeInvoke function
Invoke a function.
Authorization
Authorization
RequiredBearer <token>
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.
In: header
Request Body (Optional)
Function invocation parameters
input
null
Argument to the function, which can be any JSON serializable value
messages
array<Any properties in system, user, assistant, tool, function, fallback>
If the function is an LLM, additional messages to pass along to it
parent
Any properties in span_parent_struct, string
Options for tracing the function call
stream
boolean | null
Whether to stream the response. If true, results will be returned in the Braintrust SSE format.
mode
string | null
The mode format of the returned value (defaults to 'auto')
Value in:"auto" | "parallel" | null
version
string
The version of the function
Path Parameters
function_id
Requiredstring
Function id
Format:"uuid"
Status code | Description |
---|---|
200 | Function invocation response |