v1/functionList functions
List out all functions. The functions are sorted by creation date, with the most recently-created functions coming first
Authorization
AuthorizationRequiredBearer <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
limitinteger | null
Limit the number of objects to return
0starting_afterstring
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_beforestring
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"idsAny 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_namestring
Name of the function to search for
project_namestring
Name of the project to search for
project_idstring
Project id
"uuid"slugstring
Retrieve prompt with a specific slug
versionstring
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_namestring
Filter search results to within a particular organization
Returns a list of function objects
v1/functionCreate 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
AuthorizationRequiredBearer <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
application/jsonOptionalAny desired information about the new function object
project_idRequiredstring
Unique identifier for the project that the prompt belongs under
"uuid"nameRequiredstring
Name of the prompt
1slugRequiredstring
Unique identifier for the prompt
1descriptionstring | null
Textual description of the prompt
prompt_dataobject | null
The prompt, model, and its parameters
tagsarray<string> | null
A list of tags for the prompt
function_typestring | null
"llm" | "scorer" | "task" | "tool" | nullfunction_dataRequiredAny properties in prompt, code, global
originobject | null
function_schemaobject | null
JSON schema for the function's parameters and return type
Returns the new function object
v1/functionCreate 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
AuthorizationRequiredBearer <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
application/jsonOptionalAny desired information about the new function object
project_idRequiredstring
Unique identifier for the project that the prompt belongs under
"uuid"nameRequiredstring
Name of the prompt
1slugRequiredstring
Unique identifier for the prompt
1descriptionstring | null
Textual description of the prompt
prompt_dataobject | null
The prompt, model, and its parameters
tagsarray<string> | null
A list of tags for the prompt
function_typestring | null
"llm" | "scorer" | "task" | "tool" | nullfunction_dataRequiredAny properties in prompt, code, global
originobject | null
function_schemaobject | null
JSON schema for the function's parameters and return type
Returns the new function object
v1/function/{function_id}Get function
Get a function object by its id
Authorization
AuthorizationRequiredBearer <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_idRequiredstring
Function id
"uuid"Returns the function object
v1/function/{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
AuthorizationRequiredBearer <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
application/jsonOptionalFields to update
namestring | null
Name of the prompt
descriptionstring | null
Textual description of the prompt
prompt_dataobject | null
The prompt, model, and its parameters
function_dataAny properties in prompt, code, global, null
tagsarray<string> | null
A list of tags for the prompt
Path Parameters
function_idRequiredstring
Function id
"uuid"Returns the function object
v1/function/{function_id}Delete function
Delete a function object by its id
Authorization
AuthorizationRequiredBearer <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_idRequiredstring
Function id
"uuid"Returns the deleted function object
v1/function/{function_id}/invokeInvoke function
Invoke a function.
Authorization
AuthorizationRequiredBearer <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
application/jsonOptionalFunction invocation parameters
inputnull
Argument to the function, which can be any JSON serializable value
expectednull
The expected output of the function
metadataobject | null
Any relevant metadata
messagesarray<Any properties in system, user, assistant, tool, function, fallback>
If the function is an LLM, additional messages to pass along to it
parentAny properties in span_parent_struct, string
Options for tracing the function call
streamboolean | null
Whether to stream the response. If true, results will be returned in the Braintrust SSE format.
modestring | null
The mode format of the returned value (defaults to 'auto')
"auto" | "parallel" | nullversionstring
The version of the function
Path Parameters
function_idRequiredstring
Function id
"uuid"Function invocation response