braintrust

package module
v0.2.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 9, 2024 License: Apache-2.0 Imports: 15 Imported by: 2

README

Braintrust Go API Library

Go Reference

The Braintrust Go library provides convenient access to the Braintrust REST API from applications written in Go. The full API of this library can be found in api.md.

It is generated with Stainless.

Installation

import (
	"github.com/braintrustdata/braintrust-go" // imported as braintrust
)

Or to pin the version:

go get -u 'github.com/braintrustdata/braintrust-go@v0.2.0'

Requirements

This library requires Go 1.18+.

Usage

The full API of this library can be found in api.md.

package main

import (
	"context"
	"fmt"

	"github.com/braintrustdata/braintrust-go"
	"github.com/braintrustdata/braintrust-go/option"
	"github.com/braintrustdata/braintrust-go/shared"
)

func main() {
	client := braintrust.NewClient(
		option.WithAPIKey("My API Key"), // defaults to os.LookupEnv("BRAINTRUST_API_KEY")
	)
	project, err := client.Projects.New(context.TODO(), braintrust.ProjectNewParams{
		CreateProject: shared.CreateProjectParam{
			Name: braintrust.F("name"),
		},
	})
	if err != nil {
		panic(err.Error())
	}
	fmt.Printf("%+v\n", project.ID)
}

Request fields

All request parameters are wrapped in a generic Field type, which we use to distinguish zero values from null or omitted fields.

This prevents accidentally sending a zero value if you forget a required parameter, and enables explicitly sending null, false, '', or 0 on optional parameters. Any field not specified is not sent.

To construct fields with values, use the helpers String(), Int(), Float(), or most commonly, the generic F[T](). To send a null, use Null[T](), and to send a nonconforming value, use Raw[T](any). For example:

params := FooParams{
	Name: braintrust.F("hello"),

	// Explicitly send `"description": null`
	Description: braintrust.Null[string](),

	Point: braintrust.F(braintrust.Point{
		X: braintrust.Int(0),
		Y: braintrust.Int(1),

		// In cases where the API specifies a given type,
		// but you want to send something else, use `Raw`:
		Z: braintrust.Raw[int64](0.01), // sends a float
	}),
}
Response objects

All fields in response structs are value types (not pointers or wrappers).

If a given field is null, not present, or invalid, the corresponding field will simply be its zero value.

All response structs also include a special JSON field, containing more detailed information about each property, which you can use like so:

if res.Name == "" {
	// true if `"name"` is either not present or explicitly null
	res.JSON.Name.IsNull()

	// true if the `"name"` key was not present in the repsonse JSON at all
	res.JSON.Name.IsMissing()

	// When the API returns data that cannot be coerced to the expected type:
	if res.JSON.Name.IsInvalid() {
		raw := res.JSON.Name.Raw()

		legacyName := struct{
			First string `json:"first"`
			Last  string `json:"last"`
		}{}
		json.Unmarshal([]byte(raw), &legacyName)
		name = legacyName.First + " " + legacyName.Last
	}
}

These .JSON structs also include an Extras map containing any properties in the json response that were not specified in the struct. This can be useful for API features not yet present in the SDK.

body := res.JSON.ExtraFields["my_unexpected_field"].Raw()
RequestOptions

This library uses the functional options pattern. Functions defined in the option package return a RequestOption, which is a closure that mutates a RequestConfig. These options can be supplied to the client or at individual requests. For example:

client := braintrust.NewClient(
	// Adds a header to every request made by the client
	option.WithHeader("X-Some-Header", "custom_header_info"),
)

client.Projects.New(context.TODO(), ...,
	// Override the header
	option.WithHeader("X-Some-Header", "some_other_custom_header_info"),
	// Add an undocumented field to the request body, using sjson syntax
	option.WithJSONSet("some.json.path", map[string]string{"my": "object"}),
)

See the full list of request options.

Pagination

This library provides some conveniences for working with paginated list endpoints.

You can use .ListAutoPaging() methods to iterate through items across all pages:

iter := client.Projects.ListAutoPaging(context.TODO(), braintrust.ProjectListParams{})
// Automatically fetches more pages as needed.
for iter.Next() {
	project := iter.Current()
	fmt.Printf("%+v\n", project)
}
if err := iter.Err(); err != nil {
	panic(err.Error())
}

Or you can use simple .List() methods to fetch a single page and receive a standard response object with additional helper methods like .GetNextPage(), e.g.:

page, err := client.Projects.List(context.TODO(), braintrust.ProjectListParams{})
for page != nil {
	for _, project := range page.Objects {
		fmt.Printf("%+v\n", project)
	}
	page, err = page.GetNextPage()
}
if err != nil {
	panic(err.Error())
}
Errors

When the API returns a non-success status code, we return an error with type *braintrust.Error. This contains the StatusCode, *http.Request, and *http.Response values of the request, as well as the JSON of the error body (much like other response objects in the SDK).

To handle errors, we recommend that you use the errors.As pattern:

_, err := client.Projects.New(context.TODO(), braintrust.ProjectNewParams{
	CreateProject: shared.CreateProjectParam{
		Name: braintrust.F("name"),
	},
})
if err != nil {
	var apierr *braintrust.Error
	if errors.As(err, &apierr) {
		println(string(apierr.DumpRequest(true)))  // Prints the serialized HTTP request
		println(string(apierr.DumpResponse(true))) // Prints the serialized HTTP response
	}
	panic(err.Error()) // GET "/v1/project": 400 Bad Request { ... }
}

When other errors occur, they are returned unwrapped; for example, if HTTP transport fails, you might receive *url.Error wrapping *net.OpError.

Timeouts

Requests do not time out by default; use context to configure a timeout for a request lifecycle.

Note that if a request is retried, the context timeout does not start over. To set a per-retry timeout, use option.WithRequestTimeout().

// This sets the timeout for the request, including all the retries.
ctx, cancel := context.WithTimeout(context.Background(), 5*time.Minute)
defer cancel()
client.Projects.New(
	ctx,
	braintrust.ProjectNewParams{
		CreateProject: shared.CreateProjectParam{
			Name: braintrust.F("name"),
		},
	},
	// This sets the per-retry timeout
	option.WithRequestTimeout(20*time.Second),
)
File uploads

Request parameters that correspond to file uploads in multipart requests are typed as param.Field[io.Reader]. The contents of the io.Reader will by default be sent as a multipart form part with the file name of "anonymous_file" and content-type of "application/octet-stream".

The file name and content-type can be customized by implementing Name() string or ContentType() string on the run-time type of io.Reader. Note that os.File implements Name() string, so a file returned by os.Open will be sent with the file name on disk.

We also provide a helper braintrust.FileParam(reader io.Reader, filename string, contentType string) which can be used to wrap any io.Reader with the appropriate file name and content type.

Retries

Certain errors will be automatically retried 2 times by default, with a short exponential backoff. We retry by default all connection errors, 408 Request Timeout, 409 Conflict, 429 Rate Limit, and >=500 Internal errors.

You can use the WithMaxRetries option to configure or disable this:

// Configure the default for all requests:
client := braintrust.NewClient(
	option.WithMaxRetries(0), // default is 2
)

// Override per-request:
client.Projects.New(
	context.TODO(),
	braintrust.ProjectNewParams{
		CreateProject: shared.CreateProjectParam{
			Name: braintrust.F("name"),
		},
	},
	option.WithMaxRetries(5),
)
Making custom/undocumented requests

This library is typed for convenient access to the documented API. If you need to access undocumented endpoints, params, or response properties, the library can still be used.

Undocumented endpoints

To make requests to undocumented endpoints, you can use client.Get, client.Post, and other HTTP verbs. RequestOptions on the client, such as retries, will be respected when making these requests.

var (
    // params can be an io.Reader, a []byte, an encoding/json serializable object,
    // or a "…Params" struct defined in this library.
    params map[string]interface{}

    // result can be an []byte, *http.Response, a encoding/json deserializable object,
    // or a model defined in this library.
    result *http.Response
)
err := client.Post(context.Background(), "/unspecified", params, &result)
if err != nil {
    …
}
Undocumented request params

To make requests using undocumented parameters, you may use either the option.WithQuerySet() or the option.WithJSONSet() methods.

params := FooNewParams{
    ID:   braintrust.F("id_xxxx"),
    Data: braintrust.F(FooNewParamsData{
        FirstName: braintrust.F("John"),
    }),
}
client.Foo.New(context.Background(), params, option.WithJSONSet("data.last_name", "Doe"))
Undocumented response properties

To access undocumented response properties, you may either access the raw JSON of the response as a string with result.JSON.RawJSON(), or get the raw JSON of a particular field on the result with result.JSON.Foo.Raw().

Any fields that are not present on the response struct will be saved and can be accessed by result.JSON.ExtraFields() which returns the extra fields as a map[string]Field.

Middleware

We provide option.WithMiddleware which applies the given middleware to requests.

func Logger(req *http.Request, next option.MiddlewareNext) (res *http.Response, err error) {
	// Before the request
	start := time.Now()
	LogReq(req)

	// Forward the request to the next handler
	res, err = next(req)

	// Handle stuff after the request
	end := time.Now()
	LogRes(res, err, start - end)

    return res, err
}

client := braintrust.NewClient(
	option.WithMiddleware(Logger),
)

When multiple middlewares are provided as variadic arguments, the middlewares are applied left to right. If option.WithMiddleware is given multiple times, for example first in the client then the method, the middleware in the client will run first and the middleware given in the method will run next.

You may also replace the default http.Client with option.WithHTTPClient(client). Only one http client is accepted (this overwrites any previous client) and receives requests after any middleware has been applied.

Semantic versioning

This package generally follows SemVer conventions, though certain backwards-incompatible changes may be released as minor versions:

  1. Changes to library internals which are technically public but not intended or documented for external use. (Please open a GitHub issue to let us know if you are relying on such internals).
  2. Changes that we do not expect to impact the vast majority of users in practice.

We take backwards-compatibility seriously and work hard to ensure you can rely on a smooth upgrade experience.

We are keen for your feedback; please open an issue with questions, bugs, or suggestions.

Documentation

Index

Constants

View Source
const ACLObjectTypeDataset = shared.ACLObjectTypeDataset

This is an alias to an internal value.

View Source
const ACLObjectTypeExperiment = shared.ACLObjectTypeExperiment

This is an alias to an internal value.

View Source
const ACLObjectTypeGroup = shared.ACLObjectTypeGroup

This is an alias to an internal value.

View Source
const ACLObjectTypeOrgMember = shared.ACLObjectTypeOrgMember

This is an alias to an internal value.

View Source
const ACLObjectTypeOrgProject = shared.ACLObjectTypeOrgProject

This is an alias to an internal value.

View Source
const ACLObjectTypeOrganization = shared.ACLObjectTypeOrganization

This is an alias to an internal value.

View Source
const ACLObjectTypeProject = shared.ACLObjectTypeProject

This is an alias to an internal value.

View Source
const ACLObjectTypeProjectLog = shared.ACLObjectTypeProjectLog

This is an alias to an internal value.

View Source
const ACLObjectTypePrompt = shared.ACLObjectTypePrompt

This is an alias to an internal value.

View Source
const ACLObjectTypePromptSession = shared.ACLObjectTypePromptSession

This is an alias to an internal value.

View Source
const ACLObjectTypeRole = shared.ACLObjectTypeRole

This is an alias to an internal value.

View Source
const ACLPermissionCreate = shared.ACLPermissionCreate

This is an alias to an internal value.

View Source
const ACLPermissionCreateACLs = shared.ACLPermissionCreateACLs

This is an alias to an internal value.

View Source
const ACLPermissionDelete = shared.ACLPermissionDelete

This is an alias to an internal value.

View Source
const ACLPermissionDeleteACLs = shared.ACLPermissionDeleteACLs

This is an alias to an internal value.

View Source
const ACLPermissionRead = shared.ACLPermissionRead

This is an alias to an internal value.

View Source
const ACLPermissionReadACLs = shared.ACLPermissionReadACLs

This is an alias to an internal value.

View Source
const ACLPermissionUpdate = shared.ACLPermissionUpdate

This is an alias to an internal value.

View Source
const ACLPermissionUpdateACLs = shared.ACLPermissionUpdateACLs

This is an alias to an internal value.

View Source
const ACLRestrictObjectTypeDataset = shared.ACLRestrictObjectTypeDataset

This is an alias to an internal value.

View Source
const ACLRestrictObjectTypeExperiment = shared.ACLRestrictObjectTypeExperiment

This is an alias to an internal value.

View Source
const ACLRestrictObjectTypeGroup = shared.ACLRestrictObjectTypeGroup

This is an alias to an internal value.

View Source
const ACLRestrictObjectTypeOrgMember = shared.ACLRestrictObjectTypeOrgMember

This is an alias to an internal value.

View Source
const ACLRestrictObjectTypeOrgProject = shared.ACLRestrictObjectTypeOrgProject

This is an alias to an internal value.

View Source
const ACLRestrictObjectTypeOrganization = shared.ACLRestrictObjectTypeOrganization

This is an alias to an internal value.

View Source
const ACLRestrictObjectTypeProject = shared.ACLRestrictObjectTypeProject

This is an alias to an internal value.

View Source
const ACLRestrictObjectTypeProjectLog = shared.ACLRestrictObjectTypeProjectLog

This is an alias to an internal value.

View Source
const ACLRestrictObjectTypePrompt = shared.ACLRestrictObjectTypePrompt

This is an alias to an internal value.

View Source
const ACLRestrictObjectTypePromptSession = shared.ACLRestrictObjectTypePromptSession

This is an alias to an internal value.

View Source
const ACLRestrictObjectTypeRole = shared.ACLRestrictObjectTypeRole

This is an alias to an internal value.

View Source
const CreateACLObjectTypeDataset = shared.CreateACLObjectTypeDataset

This is an alias to an internal value.

View Source
const CreateACLObjectTypeExperiment = shared.CreateACLObjectTypeExperiment

This is an alias to an internal value.

View Source
const CreateACLObjectTypeGroup = shared.CreateACLObjectTypeGroup

This is an alias to an internal value.

View Source
const CreateACLObjectTypeOrgMember = shared.CreateACLObjectTypeOrgMember

This is an alias to an internal value.

View Source
const CreateACLObjectTypeOrgProject = shared.CreateACLObjectTypeOrgProject

This is an alias to an internal value.

View Source
const CreateACLObjectTypeOrganization = shared.CreateACLObjectTypeOrganization

This is an alias to an internal value.

View Source
const CreateACLObjectTypeProject = shared.CreateACLObjectTypeProject

This is an alias to an internal value.

View Source
const CreateACLObjectTypeProjectLog = shared.CreateACLObjectTypeProjectLog

This is an alias to an internal value.

View Source
const CreateACLObjectTypePrompt = shared.CreateACLObjectTypePrompt

This is an alias to an internal value.

View Source
const CreateACLObjectTypePromptSession = shared.CreateACLObjectTypePromptSession

This is an alias to an internal value.

View Source
const CreateACLObjectTypeRole = shared.CreateACLObjectTypeRole

This is an alias to an internal value.

View Source
const CreateACLPermissionCreate = shared.CreateACLPermissionCreate

This is an alias to an internal value.

View Source
const CreateACLPermissionCreateACLs = shared.CreateACLPermissionCreateACLs

This is an alias to an internal value.

View Source
const CreateACLPermissionDelete = shared.CreateACLPermissionDelete

This is an alias to an internal value.

View Source
const CreateACLPermissionDeleteACLs = shared.CreateACLPermissionDeleteACLs

This is an alias to an internal value.

View Source
const CreateACLPermissionRead = shared.CreateACLPermissionRead

This is an alias to an internal value.

View Source
const CreateACLPermissionReadACLs = shared.CreateACLPermissionReadACLs

This is an alias to an internal value.

View Source
const CreateACLPermissionUpdate = shared.CreateACLPermissionUpdate

This is an alias to an internal value.

View Source
const CreateACLPermissionUpdateACLs = shared.CreateACLPermissionUpdateACLs

This is an alias to an internal value.

View Source
const CreateACLRestrictObjectTypeDataset = shared.CreateACLRestrictObjectTypeDataset

This is an alias to an internal value.

View Source
const CreateACLRestrictObjectTypeExperiment = shared.CreateACLRestrictObjectTypeExperiment

This is an alias to an internal value.

View Source
const CreateACLRestrictObjectTypeGroup = shared.CreateACLRestrictObjectTypeGroup

This is an alias to an internal value.

View Source
const CreateACLRestrictObjectTypeOrgMember = shared.CreateACLRestrictObjectTypeOrgMember

This is an alias to an internal value.

View Source
const CreateACLRestrictObjectTypeOrgProject = shared.CreateACLRestrictObjectTypeOrgProject

This is an alias to an internal value.

View Source
const CreateACLRestrictObjectTypeOrganization = shared.CreateACLRestrictObjectTypeOrganization

This is an alias to an internal value.

View Source
const CreateACLRestrictObjectTypeProject = shared.CreateACLRestrictObjectTypeProject

This is an alias to an internal value.

View Source
const CreateACLRestrictObjectTypeProjectLog = shared.CreateACLRestrictObjectTypeProjectLog

This is an alias to an internal value.

View Source
const CreateACLRestrictObjectTypePrompt = shared.CreateACLRestrictObjectTypePrompt

This is an alias to an internal value.

View Source
const CreateACLRestrictObjectTypePromptSession = shared.CreateACLRestrictObjectTypePromptSession

This is an alias to an internal value.

View Source
const CreateACLRestrictObjectTypeRole = shared.CreateACLRestrictObjectTypeRole

This is an alias to an internal value.

View Source
const CreateFunctionFunctionDataCodeDataLocationPositionTaskTask = shared.CreateFunctionFunctionDataCodeDataLocationPositionTaskTask

This is an alias to an internal value.

View Source
const CreateFunctionFunctionDataCodeDataLocationTypeExperiment = shared.CreateFunctionFunctionDataCodeDataLocationTypeExperiment

This is an alias to an internal value.

View Source
const CreateFunctionFunctionDataCodeDataRuntimeContextRuntimeNode = shared.CreateFunctionFunctionDataCodeDataRuntimeContextRuntimeNode

This is an alias to an internal value.

View Source
const CreateFunctionFunctionDataCodeTypeCode = shared.CreateFunctionFunctionDataCodeTypeCode

This is an alias to an internal value.

View Source
const CreateFunctionFunctionDataGlobalTypeGlobal = shared.CreateFunctionFunctionDataGlobalTypeGlobal

This is an alias to an internal value.

View Source
const CreateFunctionFunctionDataPromptTypePrompt = shared.CreateFunctionFunctionDataPromptTypePrompt

This is an alias to an internal value.

View Source
const CreateFunctionFunctionDataTypeCode = shared.CreateFunctionFunctionDataTypeCode

This is an alias to an internal value.

View Source
const CreateFunctionFunctionDataTypeGlobal = shared.CreateFunctionFunctionDataTypeGlobal

This is an alias to an internal value.

View Source
const CreateFunctionFunctionDataTypePrompt = shared.CreateFunctionFunctionDataTypePrompt

This is an alias to an internal value.

View Source
const CreateProjectScoreScoreTypeCategorical = shared.CreateProjectScoreScoreTypeCategorical

This is an alias to an internal value.

View Source
const CreateProjectScoreScoreTypeMinimum = shared.CreateProjectScoreScoreTypeMinimum

This is an alias to an internal value.

View Source
const CreateProjectScoreScoreTypeSlider = shared.CreateProjectScoreScoreTypeSlider

This is an alias to an internal value.

View Source
const CreateProjectScoreScoreTypeWeighted = shared.CreateProjectScoreScoreTypeWeighted

This is an alias to an internal value.

View Source
const CreateRoleMemberPermissionsPermissionCreate = shared.CreateRoleMemberPermissionsPermissionCreate

This is an alias to an internal value.

View Source
const CreateRoleMemberPermissionsPermissionCreateACLs = shared.CreateRoleMemberPermissionsPermissionCreateACLs

This is an alias to an internal value.

View Source
const CreateRoleMemberPermissionsPermissionDelete = shared.CreateRoleMemberPermissionsPermissionDelete

This is an alias to an internal value.

View Source
const CreateRoleMemberPermissionsPermissionDeleteACLs = shared.CreateRoleMemberPermissionsPermissionDeleteACLs

This is an alias to an internal value.

View Source
const CreateRoleMemberPermissionsPermissionRead = shared.CreateRoleMemberPermissionsPermissionRead

This is an alias to an internal value.

View Source
const CreateRoleMemberPermissionsPermissionReadACLs = shared.CreateRoleMemberPermissionsPermissionReadACLs

This is an alias to an internal value.

View Source
const CreateRoleMemberPermissionsPermissionUpdate = shared.CreateRoleMemberPermissionsPermissionUpdate

This is an alias to an internal value.

View Source
const CreateRoleMemberPermissionsPermissionUpdateACLs = shared.CreateRoleMemberPermissionsPermissionUpdateACLs

This is an alias to an internal value.

View Source
const CreateRoleMemberPermissionsRestrictObjectTypeDataset = shared.CreateRoleMemberPermissionsRestrictObjectTypeDataset

This is an alias to an internal value.

View Source
const CreateRoleMemberPermissionsRestrictObjectTypeExperiment = shared.CreateRoleMemberPermissionsRestrictObjectTypeExperiment

This is an alias to an internal value.

View Source
const CreateRoleMemberPermissionsRestrictObjectTypeGroup = shared.CreateRoleMemberPermissionsRestrictObjectTypeGroup

This is an alias to an internal value.

View Source
const CreateRoleMemberPermissionsRestrictObjectTypeOrgMember = shared.CreateRoleMemberPermissionsRestrictObjectTypeOrgMember

This is an alias to an internal value.

View Source
const CreateRoleMemberPermissionsRestrictObjectTypeOrgProject = shared.CreateRoleMemberPermissionsRestrictObjectTypeOrgProject

This is an alias to an internal value.

View Source
const CreateRoleMemberPermissionsRestrictObjectTypeOrganization = shared.CreateRoleMemberPermissionsRestrictObjectTypeOrganization

This is an alias to an internal value.

View Source
const CreateRoleMemberPermissionsRestrictObjectTypeProject = shared.CreateRoleMemberPermissionsRestrictObjectTypeProject

This is an alias to an internal value.

View Source
const CreateRoleMemberPermissionsRestrictObjectTypeProjectLog = shared.CreateRoleMemberPermissionsRestrictObjectTypeProjectLog

This is an alias to an internal value.

View Source
const CreateRoleMemberPermissionsRestrictObjectTypePrompt = shared.CreateRoleMemberPermissionsRestrictObjectTypePrompt

This is an alias to an internal value.

View Source
const CreateRoleMemberPermissionsRestrictObjectTypePromptSession = shared.CreateRoleMemberPermissionsRestrictObjectTypePromptSession

This is an alias to an internal value.

View Source
const CreateRoleMemberPermissionsRestrictObjectTypeRole = shared.CreateRoleMemberPermissionsRestrictObjectTypeRole

This is an alias to an internal value.

View Source
const CreateViewObjectTypeDataset = shared.CreateViewObjectTypeDataset

This is an alias to an internal value.

View Source
const CreateViewObjectTypeExperiment = shared.CreateViewObjectTypeExperiment

This is an alias to an internal value.

View Source
const CreateViewObjectTypeGroup = shared.CreateViewObjectTypeGroup

This is an alias to an internal value.

View Source
const CreateViewObjectTypeOrgMember = shared.CreateViewObjectTypeOrgMember

This is an alias to an internal value.

View Source
const CreateViewObjectTypeOrgProject = shared.CreateViewObjectTypeOrgProject

This is an alias to an internal value.

View Source
const CreateViewObjectTypeOrganization = shared.CreateViewObjectTypeOrganization

This is an alias to an internal value.

View Source
const CreateViewObjectTypeProject = shared.CreateViewObjectTypeProject

This is an alias to an internal value.

View Source
const CreateViewObjectTypeProjectLog = shared.CreateViewObjectTypeProjectLog

This is an alias to an internal value.

View Source
const CreateViewObjectTypePrompt = shared.CreateViewObjectTypePrompt

This is an alias to an internal value.

View Source
const CreateViewObjectTypePromptSession = shared.CreateViewObjectTypePromptSession

This is an alias to an internal value.

View Source
const CreateViewObjectTypeRole = shared.CreateViewObjectTypeRole

This is an alias to an internal value.

View Source
const CreateViewViewTypeDataset = shared.CreateViewViewTypeDataset

This is an alias to an internal value.

View Source
const CreateViewViewTypeDatasets = shared.CreateViewViewTypeDatasets

This is an alias to an internal value.

View Source
const CreateViewViewTypeExperiment = shared.CreateViewViewTypeExperiment

This is an alias to an internal value.

View Source
const CreateViewViewTypeExperiments = shared.CreateViewViewTypeExperiments

This is an alias to an internal value.

View Source
const CreateViewViewTypeLogs = shared.CreateViewViewTypeLogs

This is an alias to an internal value.

View Source
const CreateViewViewTypePlaygrounds = shared.CreateViewViewTypePlaygrounds

This is an alias to an internal value.

View Source
const CreateViewViewTypeProjects = shared.CreateViewViewTypeProjects

This is an alias to an internal value.

View Source
const CreateViewViewTypePrompts = shared.CreateViewViewTypePrompts

This is an alias to an internal value.

View Source
const DeleteViewObjectTypeDataset = shared.DeleteViewObjectTypeDataset

This is an alias to an internal value.

View Source
const DeleteViewObjectTypeExperiment = shared.DeleteViewObjectTypeExperiment

This is an alias to an internal value.

View Source
const DeleteViewObjectTypeGroup = shared.DeleteViewObjectTypeGroup

This is an alias to an internal value.

View Source
const DeleteViewObjectTypeOrgMember = shared.DeleteViewObjectTypeOrgMember

This is an alias to an internal value.

View Source
const DeleteViewObjectTypeOrgProject = shared.DeleteViewObjectTypeOrgProject

This is an alias to an internal value.

View Source
const DeleteViewObjectTypeOrganization = shared.DeleteViewObjectTypeOrganization

This is an alias to an internal value.

View Source
const DeleteViewObjectTypeProject = shared.DeleteViewObjectTypeProject

This is an alias to an internal value.

View Source
const DeleteViewObjectTypeProjectLog = shared.DeleteViewObjectTypeProjectLog

This is an alias to an internal value.

View Source
const DeleteViewObjectTypePrompt = shared.DeleteViewObjectTypePrompt

This is an alias to an internal value.

View Source
const DeleteViewObjectTypePromptSession = shared.DeleteViewObjectTypePromptSession

This is an alias to an internal value.

View Source
const DeleteViewObjectTypeRole = shared.DeleteViewObjectTypeRole

This is an alias to an internal value.

View Source
const ExperimentEventSpanAttributesTypeEval = shared.ExperimentEventSpanAttributesTypeEval

This is an alias to an internal value.

View Source
const ExperimentEventSpanAttributesTypeFunction = shared.ExperimentEventSpanAttributesTypeFunction

This is an alias to an internal value.

View Source
const ExperimentEventSpanAttributesTypeLlm = shared.ExperimentEventSpanAttributesTypeLlm

This is an alias to an internal value.

View Source
const ExperimentEventSpanAttributesTypeScore = shared.ExperimentEventSpanAttributesTypeScore

This is an alias to an internal value.

View Source
const ExperimentEventSpanAttributesTypeTask = shared.ExperimentEventSpanAttributesTypeTask

This is an alias to an internal value.

View Source
const ExperimentEventSpanAttributesTypeTool = shared.ExperimentEventSpanAttributesTypeTool

This is an alias to an internal value.

View Source
const FeedbackDatasetItemSourceAPI = shared.FeedbackDatasetItemSourceAPI

This is an alias to an internal value.

View Source
const FeedbackDatasetItemSourceApp = shared.FeedbackDatasetItemSourceApp

This is an alias to an internal value.

View Source
const FeedbackDatasetItemSourceExternal = shared.FeedbackDatasetItemSourceExternal

This is an alias to an internal value.

View Source
const FeedbackExperimentItemSourceAPI = shared.FeedbackExperimentItemSourceAPI

This is an alias to an internal value.

View Source
const FeedbackExperimentItemSourceApp = shared.FeedbackExperimentItemSourceApp

This is an alias to an internal value.

View Source
const FeedbackExperimentItemSourceExternal = shared.FeedbackExperimentItemSourceExternal

This is an alias to an internal value.

View Source
const FeedbackProjectLogsItemSourceAPI = shared.FeedbackProjectLogsItemSourceAPI

This is an alias to an internal value.

View Source
const FeedbackProjectLogsItemSourceApp = shared.FeedbackProjectLogsItemSourceApp

This is an alias to an internal value.

View Source
const FeedbackProjectLogsItemSourceExternal = shared.FeedbackProjectLogsItemSourceExternal

This is an alias to an internal value.

View Source
const FunctionFunctionDataCodeDataLocationPositionTaskTask = shared.FunctionFunctionDataCodeDataLocationPositionTaskTask

This is an alias to an internal value.

View Source
const FunctionFunctionDataCodeDataLocationTypeExperiment = shared.FunctionFunctionDataCodeDataLocationTypeExperiment

This is an alias to an internal value.

View Source
const FunctionFunctionDataCodeDataRuntimeContextRuntimeNode = shared.FunctionFunctionDataCodeDataRuntimeContextRuntimeNode

This is an alias to an internal value.

View Source
const FunctionFunctionDataCodeTypeCode = shared.FunctionFunctionDataCodeTypeCode

This is an alias to an internal value.

View Source
const FunctionFunctionDataGlobalTypeGlobal = shared.FunctionFunctionDataGlobalTypeGlobal

This is an alias to an internal value.

View Source
const FunctionFunctionDataPromptTypePrompt = shared.FunctionFunctionDataPromptTypePrompt

This is an alias to an internal value.

View Source
const FunctionFunctionDataTypeCode = shared.FunctionFunctionDataTypeCode

This is an alias to an internal value.

View Source
const FunctionFunctionDataTypeGlobal = shared.FunctionFunctionDataTypeGlobal

This is an alias to an internal value.

View Source
const FunctionFunctionDataTypePrompt = shared.FunctionFunctionDataTypePrompt

This is an alias to an internal value.

View Source
const FunctionLogIDP = shared.FunctionLogIDP

This is an alias to an internal value.

View Source
const InsertExperimentEventMergeSpanAttributesTypeEval = shared.InsertExperimentEventMergeSpanAttributesTypeEval

This is an alias to an internal value.

View Source
const InsertExperimentEventMergeSpanAttributesTypeFunction = shared.InsertExperimentEventMergeSpanAttributesTypeFunction

This is an alias to an internal value.

View Source
const InsertExperimentEventMergeSpanAttributesTypeLlm = shared.InsertExperimentEventMergeSpanAttributesTypeLlm

This is an alias to an internal value.

View Source
const InsertExperimentEventMergeSpanAttributesTypeScore = shared.InsertExperimentEventMergeSpanAttributesTypeScore

This is an alias to an internal value.

View Source
const InsertExperimentEventMergeSpanAttributesTypeTask = shared.InsertExperimentEventMergeSpanAttributesTypeTask

This is an alias to an internal value.

View Source
const InsertExperimentEventMergeSpanAttributesTypeTool = shared.InsertExperimentEventMergeSpanAttributesTypeTool

This is an alias to an internal value.

View Source
const InsertExperimentEventReplaceSpanAttributesTypeEval = shared.InsertExperimentEventReplaceSpanAttributesTypeEval

This is an alias to an internal value.

View Source
const InsertExperimentEventReplaceSpanAttributesTypeFunction = shared.InsertExperimentEventReplaceSpanAttributesTypeFunction

This is an alias to an internal value.

View Source
const InsertExperimentEventReplaceSpanAttributesTypeLlm = shared.InsertExperimentEventReplaceSpanAttributesTypeLlm

This is an alias to an internal value.

View Source
const InsertExperimentEventReplaceSpanAttributesTypeScore = shared.InsertExperimentEventReplaceSpanAttributesTypeScore

This is an alias to an internal value.

View Source
const InsertExperimentEventReplaceSpanAttributesTypeTask = shared.InsertExperimentEventReplaceSpanAttributesTypeTask

This is an alias to an internal value.

View Source
const InsertExperimentEventReplaceSpanAttributesTypeTool = shared.InsertExperimentEventReplaceSpanAttributesTypeTool

This is an alias to an internal value.

View Source
const InsertProjectLogsEventMergeSpanAttributesTypeEval = shared.InsertProjectLogsEventMergeSpanAttributesTypeEval

This is an alias to an internal value.

View Source
const InsertProjectLogsEventMergeSpanAttributesTypeFunction = shared.InsertProjectLogsEventMergeSpanAttributesTypeFunction

This is an alias to an internal value.

View Source
const InsertProjectLogsEventMergeSpanAttributesTypeLlm = shared.InsertProjectLogsEventMergeSpanAttributesTypeLlm

This is an alias to an internal value.

View Source
const InsertProjectLogsEventMergeSpanAttributesTypeScore = shared.InsertProjectLogsEventMergeSpanAttributesTypeScore

This is an alias to an internal value.

View Source
const InsertProjectLogsEventMergeSpanAttributesTypeTask = shared.InsertProjectLogsEventMergeSpanAttributesTypeTask

This is an alias to an internal value.

View Source
const InsertProjectLogsEventMergeSpanAttributesTypeTool = shared.InsertProjectLogsEventMergeSpanAttributesTypeTool

This is an alias to an internal value.

View Source
const InsertProjectLogsEventReplaceSpanAttributesTypeEval = shared.InsertProjectLogsEventReplaceSpanAttributesTypeEval

This is an alias to an internal value.

View Source
const InsertProjectLogsEventReplaceSpanAttributesTypeFunction = shared.InsertProjectLogsEventReplaceSpanAttributesTypeFunction

This is an alias to an internal value.

View Source
const InsertProjectLogsEventReplaceSpanAttributesTypeLlm = shared.InsertProjectLogsEventReplaceSpanAttributesTypeLlm

This is an alias to an internal value.

View Source
const InsertProjectLogsEventReplaceSpanAttributesTypeScore = shared.InsertProjectLogsEventReplaceSpanAttributesTypeScore

This is an alias to an internal value.

View Source
const InsertProjectLogsEventReplaceSpanAttributesTypeTask = shared.InsertProjectLogsEventReplaceSpanAttributesTypeTask

This is an alias to an internal value.

View Source
const InsertProjectLogsEventReplaceSpanAttributesTypeTool = shared.InsertProjectLogsEventReplaceSpanAttributesTypeTool

This is an alias to an internal value.

View Source
const PatchFunctionFunctionDataCodeDataLocationPositionTaskTask = shared.PatchFunctionFunctionDataCodeDataLocationPositionTaskTask

This is an alias to an internal value.

View Source
const PatchFunctionFunctionDataCodeDataLocationTypeExperiment = shared.PatchFunctionFunctionDataCodeDataLocationTypeExperiment

This is an alias to an internal value.

View Source
const PatchFunctionFunctionDataCodeDataRuntimeContextRuntimeNode = shared.PatchFunctionFunctionDataCodeDataRuntimeContextRuntimeNode

This is an alias to an internal value.

View Source
const PatchFunctionFunctionDataCodeTypeCode = shared.PatchFunctionFunctionDataCodeTypeCode

This is an alias to an internal value.

View Source
const PatchFunctionFunctionDataGlobalTypeGlobal = shared.PatchFunctionFunctionDataGlobalTypeGlobal

This is an alias to an internal value.

View Source
const PatchFunctionFunctionDataPromptTypePrompt = shared.PatchFunctionFunctionDataPromptTypePrompt

This is an alias to an internal value.

View Source
const PatchFunctionFunctionDataTypeCode = shared.PatchFunctionFunctionDataTypeCode

This is an alias to an internal value.

View Source
const PatchFunctionFunctionDataTypeGlobal = shared.PatchFunctionFunctionDataTypeGlobal

This is an alias to an internal value.

View Source
const PatchFunctionFunctionDataTypePrompt = shared.PatchFunctionFunctionDataTypePrompt

This is an alias to an internal value.

View Source
const PatchProjectScoreScoreTypeCategorical = shared.PatchProjectScoreScoreTypeCategorical

This is an alias to an internal value.

View Source
const PatchProjectScoreScoreTypeMinimum = shared.PatchProjectScoreScoreTypeMinimum

This is an alias to an internal value.

View Source
const PatchProjectScoreScoreTypeSlider = shared.PatchProjectScoreScoreTypeSlider

This is an alias to an internal value.

View Source
const PatchProjectScoreScoreTypeWeighted = shared.PatchProjectScoreScoreTypeWeighted

This is an alias to an internal value.

View Source
const PatchRoleAddMemberPermissionsPermissionCreate = shared.PatchRoleAddMemberPermissionsPermissionCreate

This is an alias to an internal value.

View Source
const PatchRoleAddMemberPermissionsPermissionCreateACLs = shared.PatchRoleAddMemberPermissionsPermissionCreateACLs

This is an alias to an internal value.

View Source
const PatchRoleAddMemberPermissionsPermissionDelete = shared.PatchRoleAddMemberPermissionsPermissionDelete

This is an alias to an internal value.

View Source
const PatchRoleAddMemberPermissionsPermissionDeleteACLs = shared.PatchRoleAddMemberPermissionsPermissionDeleteACLs

This is an alias to an internal value.

View Source
const PatchRoleAddMemberPermissionsPermissionRead = shared.PatchRoleAddMemberPermissionsPermissionRead

This is an alias to an internal value.

View Source
const PatchRoleAddMemberPermissionsPermissionReadACLs = shared.PatchRoleAddMemberPermissionsPermissionReadACLs

This is an alias to an internal value.

View Source
const PatchRoleAddMemberPermissionsPermissionUpdate = shared.PatchRoleAddMemberPermissionsPermissionUpdate

This is an alias to an internal value.

View Source
const PatchRoleAddMemberPermissionsPermissionUpdateACLs = shared.PatchRoleAddMemberPermissionsPermissionUpdateACLs

This is an alias to an internal value.

View Source
const PatchRoleAddMemberPermissionsRestrictObjectTypeDataset = shared.PatchRoleAddMemberPermissionsRestrictObjectTypeDataset

This is an alias to an internal value.

View Source
const PatchRoleAddMemberPermissionsRestrictObjectTypeExperiment = shared.PatchRoleAddMemberPermissionsRestrictObjectTypeExperiment

This is an alias to an internal value.

View Source
const PatchRoleAddMemberPermissionsRestrictObjectTypeGroup = shared.PatchRoleAddMemberPermissionsRestrictObjectTypeGroup

This is an alias to an internal value.

View Source
const PatchRoleAddMemberPermissionsRestrictObjectTypeOrgMember = shared.PatchRoleAddMemberPermissionsRestrictObjectTypeOrgMember

This is an alias to an internal value.

View Source
const PatchRoleAddMemberPermissionsRestrictObjectTypeOrgProject = shared.PatchRoleAddMemberPermissionsRestrictObjectTypeOrgProject

This is an alias to an internal value.

View Source
const PatchRoleAddMemberPermissionsRestrictObjectTypeOrganization = shared.PatchRoleAddMemberPermissionsRestrictObjectTypeOrganization

This is an alias to an internal value.

View Source
const PatchRoleAddMemberPermissionsRestrictObjectTypeProject = shared.PatchRoleAddMemberPermissionsRestrictObjectTypeProject

This is an alias to an internal value.

View Source
const PatchRoleAddMemberPermissionsRestrictObjectTypeProjectLog = shared.PatchRoleAddMemberPermissionsRestrictObjectTypeProjectLog

This is an alias to an internal value.

View Source
const PatchRoleAddMemberPermissionsRestrictObjectTypePrompt = shared.PatchRoleAddMemberPermissionsRestrictObjectTypePrompt

This is an alias to an internal value.

View Source
const PatchRoleAddMemberPermissionsRestrictObjectTypePromptSession = shared.PatchRoleAddMemberPermissionsRestrictObjectTypePromptSession

This is an alias to an internal value.

View Source
const PatchRoleAddMemberPermissionsRestrictObjectTypeRole = shared.PatchRoleAddMemberPermissionsRestrictObjectTypeRole

This is an alias to an internal value.

View Source
const PatchRoleRemoveMemberPermissionsPermissionCreate = shared.PatchRoleRemoveMemberPermissionsPermissionCreate

This is an alias to an internal value.

View Source
const PatchRoleRemoveMemberPermissionsPermissionCreateACLs = shared.PatchRoleRemoveMemberPermissionsPermissionCreateACLs

This is an alias to an internal value.

View Source
const PatchRoleRemoveMemberPermissionsPermissionDelete = shared.PatchRoleRemoveMemberPermissionsPermissionDelete

This is an alias to an internal value.

View Source
const PatchRoleRemoveMemberPermissionsPermissionDeleteACLs = shared.PatchRoleRemoveMemberPermissionsPermissionDeleteACLs

This is an alias to an internal value.

View Source
const PatchRoleRemoveMemberPermissionsPermissionRead = shared.PatchRoleRemoveMemberPermissionsPermissionRead

This is an alias to an internal value.

View Source
const PatchRoleRemoveMemberPermissionsPermissionReadACLs = shared.PatchRoleRemoveMemberPermissionsPermissionReadACLs

This is an alias to an internal value.

View Source
const PatchRoleRemoveMemberPermissionsPermissionUpdate = shared.PatchRoleRemoveMemberPermissionsPermissionUpdate

This is an alias to an internal value.

View Source
const PatchRoleRemoveMemberPermissionsPermissionUpdateACLs = shared.PatchRoleRemoveMemberPermissionsPermissionUpdateACLs

This is an alias to an internal value.

View Source
const PatchRoleRemoveMemberPermissionsRestrictObjectTypeDataset = shared.PatchRoleRemoveMemberPermissionsRestrictObjectTypeDataset

This is an alias to an internal value.

View Source
const PatchRoleRemoveMemberPermissionsRestrictObjectTypeExperiment = shared.PatchRoleRemoveMemberPermissionsRestrictObjectTypeExperiment

This is an alias to an internal value.

View Source
const PatchRoleRemoveMemberPermissionsRestrictObjectTypeGroup = shared.PatchRoleRemoveMemberPermissionsRestrictObjectTypeGroup

This is an alias to an internal value.

View Source
const PatchRoleRemoveMemberPermissionsRestrictObjectTypeOrgMember = shared.PatchRoleRemoveMemberPermissionsRestrictObjectTypeOrgMember

This is an alias to an internal value.

View Source
const PatchRoleRemoveMemberPermissionsRestrictObjectTypeOrgProject = shared.PatchRoleRemoveMemberPermissionsRestrictObjectTypeOrgProject

This is an alias to an internal value.

View Source
const PatchRoleRemoveMemberPermissionsRestrictObjectTypeOrganization = shared.PatchRoleRemoveMemberPermissionsRestrictObjectTypeOrganization

This is an alias to an internal value.

View Source
const PatchRoleRemoveMemberPermissionsRestrictObjectTypeProject = shared.PatchRoleRemoveMemberPermissionsRestrictObjectTypeProject

This is an alias to an internal value.

View Source
const PatchRoleRemoveMemberPermissionsRestrictObjectTypeProjectLog = shared.PatchRoleRemoveMemberPermissionsRestrictObjectTypeProjectLog

This is an alias to an internal value.

View Source
const PatchRoleRemoveMemberPermissionsRestrictObjectTypePrompt = shared.PatchRoleRemoveMemberPermissionsRestrictObjectTypePrompt

This is an alias to an internal value.

View Source
const PatchRoleRemoveMemberPermissionsRestrictObjectTypePromptSession = shared.PatchRoleRemoveMemberPermissionsRestrictObjectTypePromptSession

This is an alias to an internal value.

View Source
const PatchRoleRemoveMemberPermissionsRestrictObjectTypeRole = shared.PatchRoleRemoveMemberPermissionsRestrictObjectTypeRole

This is an alias to an internal value.

View Source
const PatchViewObjectTypeDataset = shared.PatchViewObjectTypeDataset

This is an alias to an internal value.

View Source
const PatchViewObjectTypeExperiment = shared.PatchViewObjectTypeExperiment

This is an alias to an internal value.

View Source
const PatchViewObjectTypeGroup = shared.PatchViewObjectTypeGroup

This is an alias to an internal value.

View Source
const PatchViewObjectTypeOrgMember = shared.PatchViewObjectTypeOrgMember

This is an alias to an internal value.

View Source
const PatchViewObjectTypeOrgProject = shared.PatchViewObjectTypeOrgProject

This is an alias to an internal value.

View Source
const PatchViewObjectTypeOrganization = shared.PatchViewObjectTypeOrganization

This is an alias to an internal value.

View Source
const PatchViewObjectTypeProject = shared.PatchViewObjectTypeProject

This is an alias to an internal value.

View Source
const PatchViewObjectTypeProjectLog = shared.PatchViewObjectTypeProjectLog

This is an alias to an internal value.

View Source
const PatchViewObjectTypePrompt = shared.PatchViewObjectTypePrompt

This is an alias to an internal value.

View Source
const PatchViewObjectTypePromptSession = shared.PatchViewObjectTypePromptSession

This is an alias to an internal value.

View Source
const PatchViewObjectTypeRole = shared.PatchViewObjectTypeRole

This is an alias to an internal value.

View Source
const PatchViewViewTypeDataset = shared.PatchViewViewTypeDataset

This is an alias to an internal value.

View Source
const PatchViewViewTypeDatasets = shared.PatchViewViewTypeDatasets

This is an alias to an internal value.

View Source
const PatchViewViewTypeExperiment = shared.PatchViewViewTypeExperiment

This is an alias to an internal value.

View Source
const PatchViewViewTypeExperiments = shared.PatchViewViewTypeExperiments

This is an alias to an internal value.

View Source
const PatchViewViewTypeLogs = shared.PatchViewViewTypeLogs

This is an alias to an internal value.

View Source
const PatchViewViewTypePlaygrounds = shared.PatchViewViewTypePlaygrounds

This is an alias to an internal value.

View Source
const PatchViewViewTypeProjects = shared.PatchViewViewTypeProjects

This is an alias to an internal value.

View Source
const PatchViewViewTypePrompts = shared.PatchViewViewTypePrompts

This is an alias to an internal value.

View Source
const PathLookupFilterTypePathLookup = shared.PathLookupFilterTypePathLookup

This is an alias to an internal value.

View Source
const ProjectLogsEventLogIDG = shared.ProjectLogsEventLogIDG

This is an alias to an internal value.

View Source
const ProjectLogsEventSpanAttributesTypeEval = shared.ProjectLogsEventSpanAttributesTypeEval

This is an alias to an internal value.

View Source
const ProjectLogsEventSpanAttributesTypeFunction = shared.ProjectLogsEventSpanAttributesTypeFunction

This is an alias to an internal value.

View Source
const ProjectLogsEventSpanAttributesTypeLlm = shared.ProjectLogsEventSpanAttributesTypeLlm

This is an alias to an internal value.

View Source
const ProjectLogsEventSpanAttributesTypeScore = shared.ProjectLogsEventSpanAttributesTypeScore

This is an alias to an internal value.

View Source
const ProjectLogsEventSpanAttributesTypeTask = shared.ProjectLogsEventSpanAttributesTypeTask

This is an alias to an internal value.

View Source
const ProjectLogsEventSpanAttributesTypeTool = shared.ProjectLogsEventSpanAttributesTypeTool

This is an alias to an internal value.

View Source
const ProjectScoreConfigDestinationExpected = shared.ProjectScoreConfigDestinationExpected

This is an alias to an internal value.

View Source
const ProjectScoreScoreTypeCategorical = shared.ProjectScoreScoreTypeCategorical

This is an alias to an internal value.

View Source
const ProjectScoreScoreTypeMinimum = shared.ProjectScoreScoreTypeMinimum

This is an alias to an internal value.

View Source
const ProjectScoreScoreTypeSlider = shared.ProjectScoreScoreTypeSlider

This is an alias to an internal value.

View Source
const ProjectScoreScoreTypeWeighted = shared.ProjectScoreScoreTypeWeighted

This is an alias to an internal value.

View Source
const PromptDataOptionsParamsOpenAIModelParamsFunctionCallAutoAuto = shared.PromptDataOptionsParamsOpenAIModelParamsFunctionCallAutoAuto

This is an alias to an internal value.

View Source
const PromptDataOptionsParamsOpenAIModelParamsFunctionCallNoneNone = shared.PromptDataOptionsParamsOpenAIModelParamsFunctionCallNoneNone

This is an alias to an internal value.

View Source
const PromptDataOptionsParamsOpenAIModelParamsResponseFormatTypeJsonObject = shared.PromptDataOptionsParamsOpenAIModelParamsResponseFormatTypeJsonObject

This is an alias to an internal value.

View Source
const PromptDataOptionsParamsOpenAIModelParamsToolChoiceAutoAuto = shared.PromptDataOptionsParamsOpenAIModelParamsToolChoiceAutoAuto

This is an alias to an internal value.

View Source
const PromptDataOptionsParamsOpenAIModelParamsToolChoiceFunctionTypeFunction = shared.PromptDataOptionsParamsOpenAIModelParamsToolChoiceFunctionTypeFunction

This is an alias to an internal value.

View Source
const PromptDataOptionsParamsOpenAIModelParamsToolChoiceNoneNone = shared.PromptDataOptionsParamsOpenAIModelParamsToolChoiceNoneNone

This is an alias to an internal value.

View Source
const PromptDataPromptChatMessagesAssistantRoleAssistant = shared.PromptDataPromptChatMessagesAssistantRoleAssistant

This is an alias to an internal value.

View Source
const PromptDataPromptChatMessagesAssistantToolCallsTypeFunction = shared.PromptDataPromptChatMessagesAssistantToolCallsTypeFunction

This is an alias to an internal value.

View Source
const PromptDataPromptChatMessagesFallbackRoleModel = shared.PromptDataPromptChatMessagesFallbackRoleModel

This is an alias to an internal value.

View Source
const PromptDataPromptChatMessagesFunctionRoleFunction = shared.PromptDataPromptChatMessagesFunctionRoleFunction

This is an alias to an internal value.

View Source
const PromptDataPromptChatMessagesRoleAssistant = shared.PromptDataPromptChatMessagesRoleAssistant

This is an alias to an internal value.

View Source
const PromptDataPromptChatMessagesRoleFunction = shared.PromptDataPromptChatMessagesRoleFunction

This is an alias to an internal value.

View Source
const PromptDataPromptChatMessagesRoleModel = shared.PromptDataPromptChatMessagesRoleModel

This is an alias to an internal value.

View Source
const PromptDataPromptChatMessagesRoleSystem = shared.PromptDataPromptChatMessagesRoleSystem

This is an alias to an internal value.

View Source
const PromptDataPromptChatMessagesRoleTool = shared.PromptDataPromptChatMessagesRoleTool

This is an alias to an internal value.

View Source
const PromptDataPromptChatMessagesRoleUser = shared.PromptDataPromptChatMessagesRoleUser

This is an alias to an internal value.

View Source
const PromptDataPromptChatMessagesSystemRoleSystem = shared.PromptDataPromptChatMessagesSystemRoleSystem

This is an alias to an internal value.

View Source
const PromptDataPromptChatMessagesToolRoleTool = shared.PromptDataPromptChatMessagesToolRoleTool

This is an alias to an internal value.

View Source
const PromptDataPromptChatMessagesUserContentArrayImageURLImageURLDetailAuto = shared.PromptDataPromptChatMessagesUserContentArrayImageURLImageURLDetailAuto

This is an alias to an internal value.

View Source
const PromptDataPromptChatMessagesUserContentArrayImageURLImageURLDetailHigh = shared.PromptDataPromptChatMessagesUserContentArrayImageURLImageURLDetailHigh

This is an alias to an internal value.

View Source
const PromptDataPromptChatMessagesUserContentArrayImageURLImageURLDetailLow = shared.PromptDataPromptChatMessagesUserContentArrayImageURLImageURLDetailLow

This is an alias to an internal value.

View Source
const PromptDataPromptChatMessagesUserContentArrayImageURLTypeImageURL = shared.PromptDataPromptChatMessagesUserContentArrayImageURLTypeImageURL

This is an alias to an internal value.

View Source
const PromptDataPromptChatMessagesUserContentArrayTextTypeText = shared.PromptDataPromptChatMessagesUserContentArrayTextTypeText

This is an alias to an internal value.

View Source
const PromptDataPromptChatMessagesUserContentArrayTypeImageURL = shared.PromptDataPromptChatMessagesUserContentArrayTypeImageURL

This is an alias to an internal value.

View Source
const PromptDataPromptChatMessagesUserContentArrayTypeText = shared.PromptDataPromptChatMessagesUserContentArrayTypeText

This is an alias to an internal value.

View Source
const PromptDataPromptChatMessagesUserRoleUser = shared.PromptDataPromptChatMessagesUserRoleUser

This is an alias to an internal value.

View Source
const PromptDataPromptChatTypeChat = shared.PromptDataPromptChatTypeChat

This is an alias to an internal value.

View Source
const PromptDataPromptCompletionTypeCompletion = shared.PromptDataPromptCompletionTypeCompletion

This is an alias to an internal value.

View Source
const PromptDataPromptTypeChat = shared.PromptDataPromptTypeChat

This is an alias to an internal value.

View Source
const PromptDataPromptTypeCompletion = shared.PromptDataPromptTypeCompletion

This is an alias to an internal value.

View Source
const PromptLogIDP = shared.PromptLogIDP

This is an alias to an internal value.

View Source
const RoleMemberPermissionsPermissionCreate = shared.RoleMemberPermissionsPermissionCreate

This is an alias to an internal value.

View Source
const RoleMemberPermissionsPermissionCreateACLs = shared.RoleMemberPermissionsPermissionCreateACLs

This is an alias to an internal value.

View Source
const RoleMemberPermissionsPermissionDelete = shared.RoleMemberPermissionsPermissionDelete

This is an alias to an internal value.

View Source
const RoleMemberPermissionsPermissionDeleteACLs = shared.RoleMemberPermissionsPermissionDeleteACLs

This is an alias to an internal value.

View Source
const RoleMemberPermissionsPermissionRead = shared.RoleMemberPermissionsPermissionRead

This is an alias to an internal value.

View Source
const RoleMemberPermissionsPermissionReadACLs = shared.RoleMemberPermissionsPermissionReadACLs

This is an alias to an internal value.

View Source
const RoleMemberPermissionsPermissionUpdate = shared.RoleMemberPermissionsPermissionUpdate

This is an alias to an internal value.

View Source
const RoleMemberPermissionsPermissionUpdateACLs = shared.RoleMemberPermissionsPermissionUpdateACLs

This is an alias to an internal value.

View Source
const RoleMemberPermissionsRestrictObjectTypeDataset = shared.RoleMemberPermissionsRestrictObjectTypeDataset

This is an alias to an internal value.

View Source
const RoleMemberPermissionsRestrictObjectTypeExperiment = shared.RoleMemberPermissionsRestrictObjectTypeExperiment

This is an alias to an internal value.

View Source
const RoleMemberPermissionsRestrictObjectTypeGroup = shared.RoleMemberPermissionsRestrictObjectTypeGroup

This is an alias to an internal value.

View Source
const RoleMemberPermissionsRestrictObjectTypeOrgMember = shared.RoleMemberPermissionsRestrictObjectTypeOrgMember

This is an alias to an internal value.

View Source
const RoleMemberPermissionsRestrictObjectTypeOrgProject = shared.RoleMemberPermissionsRestrictObjectTypeOrgProject

This is an alias to an internal value.

View Source
const RoleMemberPermissionsRestrictObjectTypeOrganization = shared.RoleMemberPermissionsRestrictObjectTypeOrganization

This is an alias to an internal value.

View Source
const RoleMemberPermissionsRestrictObjectTypeProject = shared.RoleMemberPermissionsRestrictObjectTypeProject

This is an alias to an internal value.

View Source
const RoleMemberPermissionsRestrictObjectTypeProjectLog = shared.RoleMemberPermissionsRestrictObjectTypeProjectLog

This is an alias to an internal value.

View Source
const RoleMemberPermissionsRestrictObjectTypePrompt = shared.RoleMemberPermissionsRestrictObjectTypePrompt

This is an alias to an internal value.

View Source
const RoleMemberPermissionsRestrictObjectTypePromptSession = shared.RoleMemberPermissionsRestrictObjectTypePromptSession

This is an alias to an internal value.

View Source
const RoleMemberPermissionsRestrictObjectTypeRole = shared.RoleMemberPermissionsRestrictObjectTypeRole

This is an alias to an internal value.

View Source
const ViewObjectTypeDataset = shared.ViewObjectTypeDataset

This is an alias to an internal value.

View Source
const ViewObjectTypeExperiment = shared.ViewObjectTypeExperiment

This is an alias to an internal value.

View Source
const ViewObjectTypeGroup = shared.ViewObjectTypeGroup

This is an alias to an internal value.

View Source
const ViewObjectTypeOrgMember = shared.ViewObjectTypeOrgMember

This is an alias to an internal value.

View Source
const ViewObjectTypeOrgProject = shared.ViewObjectTypeOrgProject

This is an alias to an internal value.

View Source
const ViewObjectTypeOrganization = shared.ViewObjectTypeOrganization

This is an alias to an internal value.

View Source
const ViewObjectTypeProject = shared.ViewObjectTypeProject

This is an alias to an internal value.

View Source
const ViewObjectTypeProjectLog = shared.ViewObjectTypeProjectLog

This is an alias to an internal value.

View Source
const ViewObjectTypePrompt = shared.ViewObjectTypePrompt

This is an alias to an internal value.

View Source
const ViewObjectTypePromptSession = shared.ViewObjectTypePromptSession

This is an alias to an internal value.

View Source
const ViewObjectTypeRole = shared.ViewObjectTypeRole

This is an alias to an internal value.

View Source
const ViewViewTypeDataset = shared.ViewViewTypeDataset

This is an alias to an internal value.

View Source
const ViewViewTypeDatasets = shared.ViewViewTypeDatasets

This is an alias to an internal value.

View Source
const ViewViewTypeExperiment = shared.ViewViewTypeExperiment

This is an alias to an internal value.

View Source
const ViewViewTypeExperiments = shared.ViewViewTypeExperiments

This is an alias to an internal value.

View Source
const ViewViewTypeLogs = shared.ViewViewTypeLogs

This is an alias to an internal value.

View Source
const ViewViewTypePlaygrounds = shared.ViewViewTypePlaygrounds

This is an alias to an internal value.

View Source
const ViewViewTypeProjects = shared.ViewViewTypeProjects

This is an alias to an internal value.

View Source
const ViewViewTypePrompts = shared.ViewViewTypePrompts

This is an alias to an internal value.

Variables

This section is empty.

Functions

func Bool

func Bool(value bool) param.Field[bool]

Bool is a param field helper which helps specify bools.

func F

func F[T any](value T) param.Field[T]

F is a param field helper used to initialize a param.Field generic struct. This helps specify null, zero values, and overrides, as well as normal values. You can read more about this in our README.

func FileParam added in v0.2.0

func FileParam(reader io.Reader, filename string, contentType string) param.Field[io.Reader]

FileParam is a param field helper which helps files with a mime content-type.

func Float

func Float(value float64) param.Field[float64]

Float is a param field helper which helps specify floats.

func Int

func Int(value int64) param.Field[int64]

Int is a param field helper which helps specify integers. This is particularly helpful when specifying integer constants for fields.

func Null

func Null[T any]() param.Field[T]

Null is a param field helper which explicitly sends null to the API.

func Raw

func Raw[T any](value any) param.Field[T]

Raw is a param field helper for specifying values for fields when the type you are looking to send is different from the type that is specified in the SDK. For example, if the type of the field is an integer, but you want to send a float, you could do that by setting the corresponding field with Raw[int](0.5).

func String

func String(value string) param.Field[string]

String is a param field helper which helps specify strings.

Types

type ACL added in v0.2.0

type ACL = shared.ACL

An ACL grants a certain permission or role to a certain user or group on an object.

ACLs are inherited across the object hierarchy. So for example, if a user has read permissions on a project, they will also have read permissions on any experiment, dataset, etc. created within that project.

To restrict a grant to a particular sub-object, you may specify `restrict_object_type` in the ACL, as part of a direct permission grant or as part of a role.

This is an alias to an internal type.

type ACLListParams added in v0.2.0

type ACLListParams struct {
	// The id of the object the ACL applies to
	ObjectID param.Field[string] `query:"object_id,required" format:"uuid"`
	// The object type that the ACL applies to
	ObjectType param.Field[ACLListParamsObjectType] `query:"object_type,required"`
	// 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`
	EndingBefore param.Field[string] `query:"ending_before" format:"uuid"`
	// Filter search results to a particular set of object IDs. To specify a list of
	// IDs, include the query param multiple times
	IDs param.Field[ACLListParamsIDsUnion] `query:"ids" format:"uuid"`
	// Limit the number of objects to return
	Limit param.Field[int64] `query:"limit"`
	// 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`
	StartingAfter param.Field[string] `query:"starting_after" format:"uuid"`
}

func (ACLListParams) URLQuery added in v0.2.0

func (r ACLListParams) URLQuery() (v url.Values)

URLQuery serializes ACLListParams's query parameters as `url.Values`.

type ACLListParamsIDsArray added in v0.2.0

type ACLListParamsIDsArray []string

func (ACLListParamsIDsArray) ImplementsACLListParamsIDsUnion added in v0.2.0

func (r ACLListParamsIDsArray) ImplementsACLListParamsIDsUnion()

type ACLListParamsIDsUnion added in v0.2.0

type ACLListParamsIDsUnion interface {
	ImplementsACLListParamsIDsUnion()
}

Filter search results to a particular set of object IDs. To specify a list of IDs, include the query param multiple times

Satisfied by shared.UnionString, ACLListParamsIDsArray.

type ACLListParamsObjectType added in v0.2.0

type ACLListParamsObjectType string

The object type that the ACL applies to

const (
	ACLListParamsObjectTypeOrganization  ACLListParamsObjectType = "organization"
	ACLListParamsObjectTypeProject       ACLListParamsObjectType = "project"
	ACLListParamsObjectTypeExperiment    ACLListParamsObjectType = "experiment"
	ACLListParamsObjectTypeDataset       ACLListParamsObjectType = "dataset"
	ACLListParamsObjectTypePrompt        ACLListParamsObjectType = "prompt"
	ACLListParamsObjectTypePromptSession ACLListParamsObjectType = "prompt_session"
	ACLListParamsObjectTypeGroup         ACLListParamsObjectType = "group"
	ACLListParamsObjectTypeRole          ACLListParamsObjectType = "role"
	ACLListParamsObjectTypeOrgMember     ACLListParamsObjectType = "org_member"
	ACLListParamsObjectTypeProjectLog    ACLListParamsObjectType = "project_log"
	ACLListParamsObjectTypeOrgProject    ACLListParamsObjectType = "org_project"
)

func (ACLListParamsObjectType) IsKnown added in v0.2.0

func (r ACLListParamsObjectType) IsKnown() bool

type ACLNewParams added in v0.2.0

type ACLNewParams struct {
	// An ACL grants a certain permission or role to a certain user or group on an
	// object.
	//
	// ACLs are inherited across the object hierarchy. So for example, if a user has
	// read permissions on a project, they will also have read permissions on any
	// experiment, dataset, etc. created within that project.
	//
	// To restrict a grant to a particular sub-object, you may specify
	// `restrict_object_type` in the ACL, as part of a direct permission grant or as
	// part of a role.
	CreateACL shared.CreateACLParam `json:"create_acl,required"`
}

func (ACLNewParams) MarshalJSON added in v0.2.0

func (r ACLNewParams) MarshalJSON() (data []byte, err error)

type ACLObjectType added in v0.2.0

type ACLObjectType = shared.ACLObjectType

The object type that the ACL applies to

This is an alias to an internal type.

type ACLPermission added in v0.2.0

type ACLPermission = shared.ACLPermission

Permission the ACL grants. Exactly one of `permission` and `role_id` will be provided

This is an alias to an internal type.

type ACLRestrictObjectType added in v0.2.0

type ACLRestrictObjectType = shared.ACLRestrictObjectType

When setting a permission directly, optionally restricts the permission grant to just the specified object type. Cannot be set alongside a `role_id`.

This is an alias to an internal type.

type ACLService added in v0.2.0

type ACLService struct {
	Options []option.RequestOption
}

ACLService contains methods and other services that help with interacting with the braintrust API.

Note, unlike clients, this service does not read variables from the environment automatically. You should not instantiate this service directly, and instead use the NewACLService method instead.

func NewACLService added in v0.2.0

func NewACLService(opts ...option.RequestOption) (r *ACLService)

NewACLService generates a new service that applies the given options to each request. These options are applied after the parent client's options (if there is one), and before any request-specific options.

func (*ACLService) Delete added in v0.2.0

func (r *ACLService) Delete(ctx context.Context, aclID string, opts ...option.RequestOption) (res *shared.ACL, err error)

Delete an acl object by its id

func (*ACLService) Get added in v0.2.0

func (r *ACLService) Get(ctx context.Context, aclID string, opts ...option.RequestOption) (res *shared.ACL, err error)

Get an acl object by its id

func (*ACLService) List added in v0.2.0

func (r *ACLService) List(ctx context.Context, query ACLListParams, opts ...option.RequestOption) (res *pagination.ListObjects[shared.ACL], err error)

List out all acls. The acls are sorted by creation date, with the most recently-created acls coming first

func (*ACLService) ListAutoPaging added in v0.2.0

List out all acls. The acls are sorted by creation date, with the most recently-created acls coming first

func (*ACLService) New added in v0.2.0

func (r *ACLService) New(ctx context.Context, body ACLNewParams, opts ...option.RequestOption) (res *shared.ACL, err error)

Create a new acl. If there is an existing acl with the same contents as the one specified in the request, will return the existing acl unmodified

type APIKey added in v0.2.0

type APIKey = shared.APIKey

This is an alias to an internal type.

type APIKeyListParams added in v0.2.0

type APIKeyListParams struct {
	// Name of the api_key to search for
	APIKeyName param.Field[string] `query:"api_key_name"`
	// 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`
	EndingBefore param.Field[string] `query:"ending_before" format:"uuid"`
	// Filter search results to a particular set of object IDs. To specify a list of
	// IDs, include the query param multiple times
	IDs param.Field[APIKeyListParamsIDsUnion] `query:"ids" format:"uuid"`
	// Limit the number of objects to return
	Limit param.Field[int64] `query:"limit"`
	// Filter search results to within a particular organization
	OrgName param.Field[string] `query:"org_name"`
	// 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`
	StartingAfter param.Field[string] `query:"starting_after" format:"uuid"`
}

func (APIKeyListParams) URLQuery added in v0.2.0

func (r APIKeyListParams) URLQuery() (v url.Values)

URLQuery serializes APIKeyListParams's query parameters as `url.Values`.

type APIKeyListParamsIDsArray added in v0.2.0

type APIKeyListParamsIDsArray []string

func (APIKeyListParamsIDsArray) ImplementsAPIKeyListParamsIDsUnion added in v0.2.0

func (r APIKeyListParamsIDsArray) ImplementsAPIKeyListParamsIDsUnion()

type APIKeyListParamsIDsUnion added in v0.2.0

type APIKeyListParamsIDsUnion interface {
	ImplementsAPIKeyListParamsIDsUnion()
}

Filter search results to a particular set of object IDs. To specify a list of IDs, include the query param multiple times

Satisfied by shared.UnionString, APIKeyListParamsIDsArray.

type APIKeyNewParams added in v0.2.0

type APIKeyNewParams struct {
	// Name of the api key. Does not have to be unique
	Name param.Field[string] `json:"name,required"`
	// For nearly all users, this parameter should be unnecessary. But in the rare case
	// that your API key belongs to multiple organizations, you may specify the name of
	// the organization the API key belongs in.
	OrgName param.Field[string] `json:"org_name"`
}

func (APIKeyNewParams) MarshalJSON added in v0.2.0

func (r APIKeyNewParams) MarshalJSON() (data []byte, err error)

type APIKeyService added in v0.2.0

type APIKeyService struct {
	Options []option.RequestOption
}

APIKeyService contains methods and other services that help with interacting with the braintrust API.

Note, unlike clients, this service does not read variables from the environment automatically. You should not instantiate this service directly, and instead use the NewAPIKeyService method instead.

func NewAPIKeyService added in v0.2.0

func NewAPIKeyService(opts ...option.RequestOption) (r *APIKeyService)

NewAPIKeyService generates a new service that applies the given options to each request. These options are applied after the parent client's options (if there is one), and before any request-specific options.

func (*APIKeyService) Delete added in v0.2.0

func (r *APIKeyService) Delete(ctx context.Context, apiKeyID string, opts ...option.RequestOption) (res *shared.APIKey, err error)

Delete an api_key object by its id

func (*APIKeyService) Get added in v0.2.0

func (r *APIKeyService) Get(ctx context.Context, apiKeyID string, opts ...option.RequestOption) (res *shared.APIKey, err error)

Get an api_key object by its id

func (*APIKeyService) List added in v0.2.0

List out all api_keys. The api_keys are sorted by creation date, with the most recently-created api_keys coming first

func (*APIKeyService) ListAutoPaging added in v0.2.0

List out all api_keys. The api_keys are sorted by creation date, with the most recently-created api_keys coming first

func (*APIKeyService) New added in v0.2.0

Create a new api_key. It is possible to have multiple API keys with the same name. There is no de-duplication

type Client

type Client struct {
	Options       []option.RequestOption
	TopLevel      *TopLevelService
	Projects      *ProjectService
	Experiments   *ExperimentService
	Datasets      *DatasetService
	Prompts       *PromptService
	Roles         *RoleService
	Groups        *GroupService
	ACLs          *ACLService
	Users         *UserService
	ProjectScores *ProjectScoreService
	ProjectTags   *ProjectTagService
	Functions     *FunctionService
	Views         *ViewService
	Organizations *OrganizationService
	APIKeys       *APIKeyService
}

Client creates a struct with services and top level methods that help with interacting with the braintrust API. You should not instantiate this client directly, and instead use the NewClient method instead.

func NewClient

func NewClient(opts ...option.RequestOption) (r *Client)

NewClient generates a new client with the default option read from the environment (BRAINTRUST_API_KEY). The option passed in as arguments are applied after these default arguments, and all option will be passed down to the services and requests that this client makes.

func (*Client) Delete added in v0.2.0

func (r *Client) Delete(ctx context.Context, path string, params interface{}, res interface{}, opts ...option.RequestOption) error

Delete makes a DELETE request with the given URL, params, and optionally deserializes to a response. See [Execute] documentation on the params and response.

func (*Client) Execute added in v0.2.0

func (r *Client) Execute(ctx context.Context, method string, path string, params interface{}, res interface{}, opts ...option.RequestOption) error

Execute makes a request with the given context, method, URL, request params, response, and request options. This is useful for hitting undocumented endpoints while retaining the base URL, auth, retries, and other options from the client.

If a byte slice or an io.Reader is supplied to params, it will be used as-is for the request body.

The params is by default serialized into the body using encoding/json. If your type implements a MarshalJSON function, it will be used instead to serialize the request. If a URLQuery method is implemented, the returned url.Values will be used as query strings to the url.

If your params struct uses param.Field, you must provide either [MarshalJSON], [URLQuery], and/or [MarshalForm] functions. It is undefined behavior to use a struct uses param.Field without specifying how it is serialized.

Any "…Params" object defined in this library can be used as the request argument. Note that 'path' arguments will not be forwarded into the url.

The response body will be deserialized into the res variable, depending on its type:

  • A pointer to a *http.Response is populated by the raw response.
  • A pointer to a byte array will be populated with the contents of the request body.
  • A pointer to any other type uses this library's default JSON decoding, which respects UnmarshalJSON if it is defined on the type.
  • A nil value will not read the response body.

For even greater flexibility, see option.WithResponseInto and option.WithResponseBodyInto.

func (*Client) Get added in v0.2.0

func (r *Client) Get(ctx context.Context, path string, params interface{}, res interface{}, opts ...option.RequestOption) error

Get makes a GET request with the given URL, params, and optionally deserializes to a response. See [Execute] documentation on the params and response.

func (*Client) Patch added in v0.2.0

func (r *Client) Patch(ctx context.Context, path string, params interface{}, res interface{}, opts ...option.RequestOption) error

Patch makes a PATCH request with the given URL, params, and optionally deserializes to a response. See [Execute] documentation on the params and response.

func (*Client) Post added in v0.2.0

func (r *Client) Post(ctx context.Context, path string, params interface{}, res interface{}, opts ...option.RequestOption) error

Post makes a POST request with the given URL, params, and optionally deserializes to a response. See [Execute] documentation on the params and response.

func (*Client) Put added in v0.2.0

func (r *Client) Put(ctx context.Context, path string, params interface{}, res interface{}, opts ...option.RequestOption) error

Put makes a PUT request with the given URL, params, and optionally deserializes to a response. See [Execute] documentation on the params and response.

type CreateACLObjectType added in v0.2.0

type CreateACLObjectType = shared.CreateACLObjectType

The object type that the ACL applies to

This is an alias to an internal type.

type CreateACLParam added in v0.2.0

type CreateACLParam = shared.CreateACLParam

An ACL grants a certain permission or role to a certain user or group on an object.

ACLs are inherited across the object hierarchy. So for example, if a user has read permissions on a project, they will also have read permissions on any experiment, dataset, etc. created within that project.

To restrict a grant to a particular sub-object, you may specify `restrict_object_type` in the ACL, as part of a direct permission grant or as part of a role.

This is an alias to an internal type.

type CreateACLPermission added in v0.2.0

type CreateACLPermission = shared.CreateACLPermission

Permission the ACL grants. Exactly one of `permission` and `role_id` will be provided

This is an alias to an internal type.

type CreateACLRestrictObjectType added in v0.2.0

type CreateACLRestrictObjectType = shared.CreateACLRestrictObjectType

When setting a permission directly, optionally restricts the permission grant to just the specified object type. Cannot be set alongside a `role_id`.

This is an alias to an internal type.

type CreateAPIKeyOutput added in v0.2.0

type CreateAPIKeyOutput = shared.CreateAPIKeyOutput

This is an alias to an internal type.

type CreateDatasetParam added in v0.2.0

type CreateDatasetParam = shared.CreateDatasetParam

This is an alias to an internal type.

type CreateExperimentParam added in v0.2.0

type CreateExperimentParam = shared.CreateExperimentParam

This is an alias to an internal type.

type CreateFunctionFunctionDataCodeDataLocationParam added in v0.2.0

type CreateFunctionFunctionDataCodeDataLocationParam = shared.CreateFunctionFunctionDataCodeDataLocationParam

This is an alias to an internal type.

type CreateFunctionFunctionDataCodeDataLocationPositionScoreParam added in v0.2.0

type CreateFunctionFunctionDataCodeDataLocationPositionScoreParam = shared.CreateFunctionFunctionDataCodeDataLocationPositionScoreParam

This is an alias to an internal type.

type CreateFunctionFunctionDataCodeDataLocationPositionTask added in v0.2.0

type CreateFunctionFunctionDataCodeDataLocationPositionTask = shared.CreateFunctionFunctionDataCodeDataLocationPositionTask

This is an alias to an internal type.

type CreateFunctionFunctionDataCodeDataLocationPositionUnionParam added in v0.2.0

type CreateFunctionFunctionDataCodeDataLocationPositionUnionParam = shared.CreateFunctionFunctionDataCodeDataLocationPositionUnionParam

This is an alias to an internal type.

type CreateFunctionFunctionDataCodeDataLocationType added in v0.2.0

type CreateFunctionFunctionDataCodeDataLocationType = shared.CreateFunctionFunctionDataCodeDataLocationType

This is an alias to an internal type.

type CreateFunctionFunctionDataCodeDataParam added in v0.2.0

type CreateFunctionFunctionDataCodeDataParam = shared.CreateFunctionFunctionDataCodeDataParam

This is an alias to an internal type.

type CreateFunctionFunctionDataCodeDataRuntimeContextParam added in v0.2.0

type CreateFunctionFunctionDataCodeDataRuntimeContextParam = shared.CreateFunctionFunctionDataCodeDataRuntimeContextParam

This is an alias to an internal type.

type CreateFunctionFunctionDataCodeDataRuntimeContextRuntime added in v0.2.0

type CreateFunctionFunctionDataCodeDataRuntimeContextRuntime = shared.CreateFunctionFunctionDataCodeDataRuntimeContextRuntime

This is an alias to an internal type.

type CreateFunctionFunctionDataCodeParam added in v0.2.0

type CreateFunctionFunctionDataCodeParam = shared.CreateFunctionFunctionDataCodeParam

This is an alias to an internal type.

type CreateFunctionFunctionDataCodeType added in v0.2.0

type CreateFunctionFunctionDataCodeType = shared.CreateFunctionFunctionDataCodeType

This is an alias to an internal type.

type CreateFunctionFunctionDataGlobalParam added in v0.2.0

type CreateFunctionFunctionDataGlobalParam = shared.CreateFunctionFunctionDataGlobalParam

This is an alias to an internal type.

type CreateFunctionFunctionDataGlobalType added in v0.2.0

type CreateFunctionFunctionDataGlobalType = shared.CreateFunctionFunctionDataGlobalType

This is an alias to an internal type.

type CreateFunctionFunctionDataPromptParam added in v0.2.0

type CreateFunctionFunctionDataPromptParam = shared.CreateFunctionFunctionDataPromptParam

This is an alias to an internal type.

type CreateFunctionFunctionDataPromptType added in v0.2.0

type CreateFunctionFunctionDataPromptType = shared.CreateFunctionFunctionDataPromptType

This is an alias to an internal type.

type CreateFunctionFunctionDataType added in v0.2.0

type CreateFunctionFunctionDataType = shared.CreateFunctionFunctionDataType

This is an alias to an internal type.

type CreateFunctionFunctionDataUnionParam added in v0.2.0

type CreateFunctionFunctionDataUnionParam = shared.CreateFunctionFunctionDataUnionParam

This is an alias to an internal type.

type CreateFunctionParam added in v0.2.0

type CreateFunctionParam = shared.CreateFunctionParam

This is an alias to an internal type.

type CreateGroupParam added in v0.2.0

type CreateGroupParam = shared.CreateGroupParam

This is an alias to an internal type.

type CreateProjectParam added in v0.2.0

type CreateProjectParam = shared.CreateProjectParam

This is an alias to an internal type.

type CreateProjectScoreCategoriesCategoricalParam added in v0.2.0

type CreateProjectScoreCategoriesCategoricalParam = shared.CreateProjectScoreCategoriesCategoricalParam

For categorical-type project scores, the list of all categories

This is an alias to an internal type.

type CreateProjectScoreCategoriesMinimumParam added in v0.2.0

type CreateProjectScoreCategoriesMinimumParam = shared.CreateProjectScoreCategoriesMinimumParam

For minimum-type project scores, the list of included scores

This is an alias to an internal type.

type CreateProjectScoreCategoriesNullableVariantParam added in v0.2.0

type CreateProjectScoreCategoriesNullableVariantParam = shared.CreateProjectScoreCategoriesNullableVariantParam

This is an alias to an internal type.

type CreateProjectScoreCategoriesUnionParam added in v0.2.0

type CreateProjectScoreCategoriesUnionParam = shared.CreateProjectScoreCategoriesUnionParam

For categorical-type project scores, the list of all categories

This is an alias to an internal type.

type CreateProjectScoreParam added in v0.2.0

type CreateProjectScoreParam = shared.CreateProjectScoreParam

This is an alias to an internal type.

type CreateProjectScoreScoreType added in v0.2.0

type CreateProjectScoreScoreType = shared.CreateProjectScoreScoreType

The type of the configured score

This is an alias to an internal type.

type CreateProjectTagParam added in v0.2.0

type CreateProjectTagParam = shared.CreateProjectTagParam

This is an alias to an internal type.

type CreatePromptParam added in v0.2.0

type CreatePromptParam = shared.CreatePromptParam

This is an alias to an internal type.

type CreateRoleMemberPermissionParam added in v0.2.0

type CreateRoleMemberPermissionParam = shared.CreateRoleMemberPermissionParam

This is an alias to an internal type.

type CreateRoleMemberPermissionsPermission added in v0.2.0

type CreateRoleMemberPermissionsPermission = shared.CreateRoleMemberPermissionsPermission

Each permission permits a certain type of operation on an object in the system

Permissions can be assigned to to objects on an individual basis, or grouped into roles

This is an alias to an internal type.

type CreateRoleMemberPermissionsRestrictObjectType added in v0.2.0

type CreateRoleMemberPermissionsRestrictObjectType = shared.CreateRoleMemberPermissionsRestrictObjectType

The object type that the ACL applies to

This is an alias to an internal type.

type CreateRoleParam added in v0.2.0

type CreateRoleParam = shared.CreateRoleParam

This is an alias to an internal type.

type CreateViewObjectType added in v0.2.0

type CreateViewObjectType = shared.CreateViewObjectType

The object type that the ACL applies to

This is an alias to an internal type.

type CreateViewParam added in v0.2.0

type CreateViewParam = shared.CreateViewParam

This is an alias to an internal type.

type CreateViewViewType added in v0.2.0

type CreateViewViewType = shared.CreateViewViewType

Type of table that the view corresponds to.

This is an alias to an internal type.

type DataSummary added in v0.2.0

type DataSummary = shared.DataSummary

Summary of a dataset's data

This is an alias to an internal type.

type Dataset

type Dataset = shared.Dataset

This is an alias to an internal type.

type DatasetEvent added in v0.2.0

type DatasetEvent = shared.DatasetEvent

This is an alias to an internal type.

type DatasetFeedbackParams

type DatasetFeedbackParams struct {
	FeedbackDatasetEventRequest shared.FeedbackDatasetEventRequestParam `json:"feedback_dataset_event_request,required"`
}

func (DatasetFeedbackParams) MarshalJSON

func (r DatasetFeedbackParams) MarshalJSON() (data []byte, err error)

type DatasetFetchParams

type DatasetFetchParams struct {
	// limit the number of traces fetched
	//
	// Fetch queries may be paginated if the total result size is expected to be large
	// (e.g. project_logs which accumulate over a long time). Note that fetch queries
	// only support pagination in descending time order (from latest to earliest
	// `_xact_id`. Furthermore, later pages may return rows which showed up in earlier
	// pages, except with an earlier `_xact_id`. This happens because pagination occurs
	// over the whole version history of the event log. You will most likely want to
	// exclude any such duplicate, outdated rows (by `id`) from your combined result
	// set.
	//
	// The `limit` parameter controls the number of full traces to return. So you may
	// end up with more individual rows than the specified limit if you are fetching
	// events containing traces.
	Limit param.Field[int64] `query:"limit"`
	// DEPRECATION NOTICE: The manually-constructed pagination cursor is deprecated in
	// favor of the explicit 'cursor' returned by object fetch requests. Please prefer
	// the 'cursor' argument going forwards.
	//
	// Together, `max_xact_id` and `max_root_span_id` form a pagination cursor
	//
	// Since a paginated fetch query returns results in order from latest to earliest,
	// the cursor for the next page can be found as the row with the minimum (earliest)
	// value of the tuple `(_xact_id, root_span_id)`. See the documentation of `limit`
	// for an overview of paginating fetch queries.
	MaxRootSpanID param.Field[string] `query:"max_root_span_id"`
	// DEPRECATION NOTICE: The manually-constructed pagination cursor is deprecated in
	// favor of the explicit 'cursor' returned by object fetch requests. Please prefer
	// the 'cursor' argument going forwards.
	//
	// Together, `max_xact_id` and `max_root_span_id` form a pagination cursor
	//
	// Since a paginated fetch query returns results in order from latest to earliest,
	// the cursor for the next page can be found as the row with the minimum (earliest)
	// value of the tuple `(_xact_id, root_span_id)`. See the documentation of `limit`
	// for an overview of paginating fetch queries.
	MaxXactID param.Field[string] `query:"max_xact_id"`
	// Retrieve a snapshot of events from a past time
	//
	// The version id is essentially a filter on the latest event transaction id. You
	// can use the `max_xact_id` returned by a past fetch as the version to reproduce
	// that exact fetch.
	Version param.Field[string] `query:"version"`
}

func (DatasetFetchParams) URLQuery

func (r DatasetFetchParams) URLQuery() (v url.Values)

URLQuery serializes DatasetFetchParams's query parameters as `url.Values`.

type DatasetFetchPostParams

type DatasetFetchPostParams struct {
	FetchEventsRequest shared.FetchEventsRequestParam `json:"fetch_events_request,required"`
}

func (DatasetFetchPostParams) MarshalJSON

func (r DatasetFetchPostParams) MarshalJSON() (data []byte, err error)

type DatasetInsertParams

type DatasetInsertParams struct {
	InsertDatasetEventRequest shared.InsertDatasetEventRequestParam `json:"insert_dataset_event_request,required"`
}

func (DatasetInsertParams) MarshalJSON

func (r DatasetInsertParams) MarshalJSON() (data []byte, err error)

type DatasetListParams

type DatasetListParams struct {
	// Name of the dataset to search for
	DatasetName param.Field[string] `query:"dataset_name"`
	// 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`
	EndingBefore param.Field[string] `query:"ending_before" format:"uuid"`
	// Filter search results to a particular set of object IDs. To specify a list of
	// IDs, include the query param multiple times
	IDs param.Field[DatasetListParamsIDsUnion] `query:"ids" format:"uuid"`
	// Limit the number of objects to return
	Limit param.Field[int64] `query:"limit"`
	// Filter search results to within a particular organization
	OrgName param.Field[string] `query:"org_name"`
	// Project id
	ProjectID param.Field[string] `query:"project_id" format:"uuid"`
	// Name of the project to search for
	ProjectName param.Field[string] `query:"project_name"`
	// 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`
	StartingAfter param.Field[string] `query:"starting_after" format:"uuid"`
}

func (DatasetListParams) URLQuery

func (r DatasetListParams) URLQuery() (v url.Values)

URLQuery serializes DatasetListParams's query parameters as `url.Values`.

type DatasetListParamsIDsArray added in v0.2.0

type DatasetListParamsIDsArray []string

func (DatasetListParamsIDsArray) ImplementsDatasetListParamsIDsUnion added in v0.2.0

func (r DatasetListParamsIDsArray) ImplementsDatasetListParamsIDsUnion()

type DatasetListParamsIDsUnion added in v0.2.0

type DatasetListParamsIDsUnion interface {
	ImplementsDatasetListParamsIDsUnion()
}

Filter search results to a particular set of object IDs. To specify a list of IDs, include the query param multiple times

Satisfied by shared.UnionString, DatasetListParamsIDsArray.

type DatasetNewParams

type DatasetNewParams struct {
	CreateDataset shared.CreateDatasetParam `json:"create_dataset,required"`
}

func (DatasetNewParams) MarshalJSON

func (r DatasetNewParams) MarshalJSON() (data []byte, err error)

type DatasetService

type DatasetService struct {
	Options []option.RequestOption
}

DatasetService contains methods and other services that help with interacting with the braintrust API.

Note, unlike clients, this service does not read variables from the environment automatically. You should not instantiate this service directly, and instead use the NewDatasetService method instead.

func NewDatasetService

func NewDatasetService(opts ...option.RequestOption) (r *DatasetService)

NewDatasetService generates a new service that applies the given options to each request. These options are applied after the parent client's options (if there is one), and before any request-specific options.

func (*DatasetService) Delete

func (r *DatasetService) Delete(ctx context.Context, datasetID string, opts ...option.RequestOption) (res *shared.Dataset, err error)

Delete a dataset object by its id

func (*DatasetService) Feedback

func (r *DatasetService) Feedback(ctx context.Context, datasetID string, body DatasetFeedbackParams, opts ...option.RequestOption) (err error)

Log feedback for a set of dataset events

func (*DatasetService) Fetch

Fetch the events in a dataset. Equivalent to the POST form of the same path, but with the parameters in the URL query rather than in the request body

func (*DatasetService) FetchPost

Fetch the events in a dataset. Equivalent to the GET form of the same path, but with the parameters in the request body rather than in the URL query

func (*DatasetService) Get

func (r *DatasetService) Get(ctx context.Context, datasetID string, opts ...option.RequestOption) (res *shared.Dataset, err error)

Get a dataset object by its id

func (*DatasetService) Insert

func (r *DatasetService) Insert(ctx context.Context, datasetID string, body DatasetInsertParams, opts ...option.RequestOption) (res *shared.InsertEventsResponse, err error)

Insert a set of events into the dataset

func (*DatasetService) List

List out all datasets. The datasets are sorted by creation date, with the most recently-created datasets coming first

func (*DatasetService) ListAutoPaging

List out all datasets. The datasets are sorted by creation date, with the most recently-created datasets coming first

func (*DatasetService) New

func (r *DatasetService) New(ctx context.Context, body DatasetNewParams, opts ...option.RequestOption) (res *shared.Dataset, err error)

Create a new dataset. If there is an existing dataset in the project with the same name as the one specified in the request, will return the existing dataset unmodified

func (*DatasetService) Summarize added in v0.2.0

func (r *DatasetService) Summarize(ctx context.Context, datasetID string, query DatasetSummarizeParams, opts ...option.RequestOption) (res *shared.SummarizeDatasetResponse, err error)

Summarize dataset

func (*DatasetService) Update

func (r *DatasetService) Update(ctx context.Context, datasetID string, body DatasetUpdateParams, opts ...option.RequestOption) (res *shared.Dataset, err error)

Partially update a dataset 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.

type DatasetSummarizeParams added in v0.2.0

type DatasetSummarizeParams struct {
	// Whether to summarize the data. If false (or omitted), only the metadata will be
	// returned.
	SummarizeData param.Field[bool] `query:"summarize_data"`
}

func (DatasetSummarizeParams) URLQuery added in v0.2.0

func (r DatasetSummarizeParams) URLQuery() (v url.Values)

URLQuery serializes DatasetSummarizeParams's query parameters as `url.Values`.

type DatasetUpdateParams

type DatasetUpdateParams struct {
	PatchDataset shared.PatchDatasetParam `json:"patch_dataset,required"`
}

func (DatasetUpdateParams) MarshalJSON

func (r DatasetUpdateParams) MarshalJSON() (data []byte, err error)

type DeleteViewObjectType added in v0.2.0

type DeleteViewObjectType = shared.DeleteViewObjectType

The object type that the ACL applies to

This is an alias to an internal type.

type DeleteViewParam added in v0.2.0

type DeleteViewParam = shared.DeleteViewParam

This is an alias to an internal type.

type Error

type Error = apierror.Error

type Experiment

type Experiment = shared.Experiment

This is an alias to an internal type.

type ExperimentEvent added in v0.2.0

type ExperimentEvent = shared.ExperimentEvent

This is an alias to an internal type.

type ExperimentEventContext added in v0.2.0

type ExperimentEventContext = shared.ExperimentEventContext

Context is additional information about the code that produced the experiment event. It is essentially the textual counterpart to `metrics`. Use the `caller_*` attributes to track the location in code which produced the experiment event

This is an alias to an internal type.

type ExperimentEventMetrics added in v0.2.0

type ExperimentEventMetrics = shared.ExperimentEventMetrics

Metrics are numerical measurements tracking the execution of the code that produced the experiment event. Use "start" and "end" to track the time span over which the experiment event was produced

This is an alias to an internal type.

type ExperimentEventSpanAttributes added in v0.2.0

type ExperimentEventSpanAttributes = shared.ExperimentEventSpanAttributes

Human-identifying attributes of the span, such as name, type, etc.

This is an alias to an internal type.

type ExperimentEventSpanAttributesType added in v0.2.0

type ExperimentEventSpanAttributesType = shared.ExperimentEventSpanAttributesType

Type of the span, for display purposes only

This is an alias to an internal type.

type ExperimentFeedbackParams

type ExperimentFeedbackParams struct {
	FeedbackExperimentEventRequest shared.FeedbackExperimentEventRequestParam `json:"feedback_experiment_event_request,required"`
}

func (ExperimentFeedbackParams) MarshalJSON

func (r ExperimentFeedbackParams) MarshalJSON() (data []byte, err error)

type ExperimentFetchParams

type ExperimentFetchParams struct {
	// limit the number of traces fetched
	//
	// Fetch queries may be paginated if the total result size is expected to be large
	// (e.g. project_logs which accumulate over a long time). Note that fetch queries
	// only support pagination in descending time order (from latest to earliest
	// `_xact_id`. Furthermore, later pages may return rows which showed up in earlier
	// pages, except with an earlier `_xact_id`. This happens because pagination occurs
	// over the whole version history of the event log. You will most likely want to
	// exclude any such duplicate, outdated rows (by `id`) from your combined result
	// set.
	//
	// The `limit` parameter controls the number of full traces to return. So you may
	// end up with more individual rows than the specified limit if you are fetching
	// events containing traces.
	Limit param.Field[int64] `query:"limit"`
	// DEPRECATION NOTICE: The manually-constructed pagination cursor is deprecated in
	// favor of the explicit 'cursor' returned by object fetch requests. Please prefer
	// the 'cursor' argument going forwards.
	//
	// Together, `max_xact_id` and `max_root_span_id` form a pagination cursor
	//
	// Since a paginated fetch query returns results in order from latest to earliest,
	// the cursor for the next page can be found as the row with the minimum (earliest)
	// value of the tuple `(_xact_id, root_span_id)`. See the documentation of `limit`
	// for an overview of paginating fetch queries.
	MaxRootSpanID param.Field[string] `query:"max_root_span_id"`
	// DEPRECATION NOTICE: The manually-constructed pagination cursor is deprecated in
	// favor of the explicit 'cursor' returned by object fetch requests. Please prefer
	// the 'cursor' argument going forwards.
	//
	// Together, `max_xact_id` and `max_root_span_id` form a pagination cursor
	//
	// Since a paginated fetch query returns results in order from latest to earliest,
	// the cursor for the next page can be found as the row with the minimum (earliest)
	// value of the tuple `(_xact_id, root_span_id)`. See the documentation of `limit`
	// for an overview of paginating fetch queries.
	MaxXactID param.Field[string] `query:"max_xact_id"`
	// Retrieve a snapshot of events from a past time
	//
	// The version id is essentially a filter on the latest event transaction id. You
	// can use the `max_xact_id` returned by a past fetch as the version to reproduce
	// that exact fetch.
	Version param.Field[string] `query:"version"`
}

func (ExperimentFetchParams) URLQuery

func (r ExperimentFetchParams) URLQuery() (v url.Values)

URLQuery serializes ExperimentFetchParams's query parameters as `url.Values`.

type ExperimentFetchPostParams

type ExperimentFetchPostParams struct {
	FetchEventsRequest shared.FetchEventsRequestParam `json:"fetch_events_request,required"`
}

func (ExperimentFetchPostParams) MarshalJSON

func (r ExperimentFetchPostParams) MarshalJSON() (data []byte, err error)

type ExperimentInsertParams

type ExperimentInsertParams struct {
	InsertExperimentEventRequest shared.InsertExperimentEventRequestParam `json:"insert_experiment_event_request,required"`
}

func (ExperimentInsertParams) MarshalJSON

func (r ExperimentInsertParams) MarshalJSON() (data []byte, err error)

type ExperimentListParams

type ExperimentListParams struct {
	// 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`
	EndingBefore param.Field[string] `query:"ending_before" format:"uuid"`
	// Name of the experiment to search for
	ExperimentName param.Field[string] `query:"experiment_name"`
	// Filter search results to a particular set of object IDs. To specify a list of
	// IDs, include the query param multiple times
	IDs param.Field[ExperimentListParamsIDsUnion] `query:"ids" format:"uuid"`
	// Limit the number of objects to return
	Limit param.Field[int64] `query:"limit"`
	// Filter search results to within a particular organization
	OrgName param.Field[string] `query:"org_name"`
	// Project id
	ProjectID param.Field[string] `query:"project_id" format:"uuid"`
	// Name of the project to search for
	ProjectName param.Field[string] `query:"project_name"`
	// 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`
	StartingAfter param.Field[string] `query:"starting_after" format:"uuid"`
}

func (ExperimentListParams) URLQuery

func (r ExperimentListParams) URLQuery() (v url.Values)

URLQuery serializes ExperimentListParams's query parameters as `url.Values`.

type ExperimentListParamsIDsArray added in v0.2.0

type ExperimentListParamsIDsArray []string

func (ExperimentListParamsIDsArray) ImplementsExperimentListParamsIDsUnion added in v0.2.0

func (r ExperimentListParamsIDsArray) ImplementsExperimentListParamsIDsUnion()

type ExperimentListParamsIDsUnion added in v0.2.0

type ExperimentListParamsIDsUnion interface {
	ImplementsExperimentListParamsIDsUnion()
}

Filter search results to a particular set of object IDs. To specify a list of IDs, include the query param multiple times

Satisfied by shared.UnionString, ExperimentListParamsIDsArray.

type ExperimentNewParams

type ExperimentNewParams struct {
	CreateExperiment shared.CreateExperimentParam `json:"create_experiment,required"`
}

func (ExperimentNewParams) MarshalJSON

func (r ExperimentNewParams) MarshalJSON() (data []byte, err error)

type ExperimentService

type ExperimentService struct {
	Options []option.RequestOption
}

ExperimentService contains methods and other services that help with interacting with the braintrust API.

Note, unlike clients, this service does not read variables from the environment automatically. You should not instantiate this service directly, and instead use the NewExperimentService method instead.

func NewExperimentService

func NewExperimentService(opts ...option.RequestOption) (r *ExperimentService)

NewExperimentService generates a new service that applies the given options to each request. These options are applied after the parent client's options (if there is one), and before any request-specific options.

func (*ExperimentService) Delete

func (r *ExperimentService) Delete(ctx context.Context, experimentID string, opts ...option.RequestOption) (res *shared.Experiment, err error)

Delete an experiment object by its id

func (*ExperimentService) Feedback

func (r *ExperimentService) Feedback(ctx context.Context, experimentID string, body ExperimentFeedbackParams, opts ...option.RequestOption) (err error)

Log feedback for a set of experiment events

func (*ExperimentService) Fetch

Fetch the events in an experiment. Equivalent to the POST form of the same path, but with the parameters in the URL query rather than in the request body

func (*ExperimentService) FetchPost

Fetch the events in an experiment. Equivalent to the GET form of the same path, but with the parameters in the request body rather than in the URL query

func (*ExperimentService) Get

func (r *ExperimentService) Get(ctx context.Context, experimentID string, opts ...option.RequestOption) (res *shared.Experiment, err error)

Get an experiment object by its id

func (*ExperimentService) Insert

func (r *ExperimentService) Insert(ctx context.Context, experimentID string, body ExperimentInsertParams, opts ...option.RequestOption) (res *shared.InsertEventsResponse, err error)

Insert a set of events into the experiment

func (*ExperimentService) List

List out all experiments. The experiments are sorted by creation date, with the most recently-created experiments coming first

func (*ExperimentService) ListAutoPaging

List out all experiments. The experiments are sorted by creation date, with the most recently-created experiments coming first

func (*ExperimentService) New

Create a new experiment. If there is an existing experiment in the project with the same name as the one specified in the request, will return the existing experiment unmodified

func (*ExperimentService) Summarize added in v0.2.0

Summarize experiment

func (*ExperimentService) Update

func (r *ExperimentService) Update(ctx context.Context, experimentID string, body ExperimentUpdateParams, opts ...option.RequestOption) (res *shared.Experiment, err error)

Partially update an experiment 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.

type ExperimentSummarizeParams added in v0.2.0

type ExperimentSummarizeParams struct {
	// The experiment to compare against, if summarizing scores and metrics. If
	// omitted, will fall back to the `base_exp_id` stored in the experiment metadata,
	// and then to the most recent experiment run in the same project. Must pass
	// `summarize_scores=true` for this id to be used
	ComparisonExperimentID param.Field[string] `query:"comparison_experiment_id" format:"uuid"`
	// Whether to summarize the scores and metrics. If false (or omitted), only the
	// metadata will be returned.
	SummarizeScores param.Field[bool] `query:"summarize_scores"`
}

func (ExperimentSummarizeParams) URLQuery added in v0.2.0

func (r ExperimentSummarizeParams) URLQuery() (v url.Values)

URLQuery serializes ExperimentSummarizeParams's query parameters as `url.Values`.

type ExperimentUpdateParams

type ExperimentUpdateParams struct {
	PatchExperiment shared.PatchExperimentParam `json:"patch_experiment,required"`
}

func (ExperimentUpdateParams) MarshalJSON

func (r ExperimentUpdateParams) MarshalJSON() (data []byte, err error)

type FeedbackDatasetEventRequestParam added in v0.2.0

type FeedbackDatasetEventRequestParam = shared.FeedbackDatasetEventRequestParam

This is an alias to an internal type.

type FeedbackDatasetItemParam added in v0.2.0

type FeedbackDatasetItemParam = shared.FeedbackDatasetItemParam

This is an alias to an internal type.

type FeedbackDatasetItemSource added in v0.2.0

type FeedbackDatasetItemSource = shared.FeedbackDatasetItemSource

The source of the feedback. Must be one of "external" (default), "app", or "api"

This is an alias to an internal type.

type FeedbackExperimentEventRequestParam added in v0.2.0

type FeedbackExperimentEventRequestParam = shared.FeedbackExperimentEventRequestParam

This is an alias to an internal type.

type FeedbackExperimentItemParam added in v0.2.0

type FeedbackExperimentItemParam = shared.FeedbackExperimentItemParam

This is an alias to an internal type.

type FeedbackExperimentItemSource added in v0.2.0

type FeedbackExperimentItemSource = shared.FeedbackExperimentItemSource

The source of the feedback. Must be one of "external" (default), "app", or "api"

This is an alias to an internal type.

type FeedbackProjectLogsEventRequestParam added in v0.2.0

type FeedbackProjectLogsEventRequestParam = shared.FeedbackProjectLogsEventRequestParam

This is an alias to an internal type.

type FeedbackProjectLogsItemParam added in v0.2.0

type FeedbackProjectLogsItemParam = shared.FeedbackProjectLogsItemParam

This is an alias to an internal type.

type FeedbackProjectLogsItemSource added in v0.2.0

type FeedbackProjectLogsItemSource = shared.FeedbackProjectLogsItemSource

The source of the feedback. Must be one of "external" (default), "app", or "api"

This is an alias to an internal type.

type FetchDatasetEventsResponse added in v0.2.0

type FetchDatasetEventsResponse = shared.FetchDatasetEventsResponse

This is an alias to an internal type.

type FetchEventsRequestParam added in v0.2.0

type FetchEventsRequestParam = shared.FetchEventsRequestParam

This is an alias to an internal type.

type FetchExperimentEventsResponse added in v0.2.0

type FetchExperimentEventsResponse = shared.FetchExperimentEventsResponse

This is an alias to an internal type.

type FetchProjectLogsEventsResponse added in v0.2.0

type FetchProjectLogsEventsResponse = shared.FetchProjectLogsEventsResponse

This is an alias to an internal type.

type Function added in v0.2.0

type Function = shared.Function

This is an alias to an internal type.

type FunctionFunctionData added in v0.2.0

type FunctionFunctionData = shared.FunctionFunctionData

This is an alias to an internal type.

type FunctionFunctionDataCode added in v0.2.0

type FunctionFunctionDataCode = shared.FunctionFunctionDataCode

This is an alias to an internal type.

type FunctionFunctionDataCodeData added in v0.2.0

type FunctionFunctionDataCodeData = shared.FunctionFunctionDataCodeData

This is an alias to an internal type.

type FunctionFunctionDataCodeDataLocation added in v0.2.0

type FunctionFunctionDataCodeDataLocation = shared.FunctionFunctionDataCodeDataLocation

This is an alias to an internal type.

type FunctionFunctionDataCodeDataLocationPositionScore added in v0.2.0

type FunctionFunctionDataCodeDataLocationPositionScore = shared.FunctionFunctionDataCodeDataLocationPositionScore

This is an alias to an internal type.

type FunctionFunctionDataCodeDataLocationPositionTask added in v0.2.0

type FunctionFunctionDataCodeDataLocationPositionTask = shared.FunctionFunctionDataCodeDataLocationPositionTask

This is an alias to an internal type.

type FunctionFunctionDataCodeDataLocationPositionUnion added in v0.2.0

type FunctionFunctionDataCodeDataLocationPositionUnion = shared.FunctionFunctionDataCodeDataLocationPositionUnion

This is an alias to an internal type.

type FunctionFunctionDataCodeDataLocationType added in v0.2.0

type FunctionFunctionDataCodeDataLocationType = shared.FunctionFunctionDataCodeDataLocationType

This is an alias to an internal type.

type FunctionFunctionDataCodeDataRuntimeContext added in v0.2.0

type FunctionFunctionDataCodeDataRuntimeContext = shared.FunctionFunctionDataCodeDataRuntimeContext

This is an alias to an internal type.

type FunctionFunctionDataCodeDataRuntimeContextRuntime added in v0.2.0

type FunctionFunctionDataCodeDataRuntimeContextRuntime = shared.FunctionFunctionDataCodeDataRuntimeContextRuntime

This is an alias to an internal type.

type FunctionFunctionDataCodeType added in v0.2.0

type FunctionFunctionDataCodeType = shared.FunctionFunctionDataCodeType

This is an alias to an internal type.

type FunctionFunctionDataGlobal added in v0.2.0

type FunctionFunctionDataGlobal = shared.FunctionFunctionDataGlobal

This is an alias to an internal type.

type FunctionFunctionDataGlobalType added in v0.2.0

type FunctionFunctionDataGlobalType = shared.FunctionFunctionDataGlobalType

This is an alias to an internal type.

type FunctionFunctionDataPrompt added in v0.2.0

type FunctionFunctionDataPrompt = shared.FunctionFunctionDataPrompt

This is an alias to an internal type.

type FunctionFunctionDataPromptType added in v0.2.0

type FunctionFunctionDataPromptType = shared.FunctionFunctionDataPromptType

This is an alias to an internal type.

type FunctionFunctionDataType added in v0.2.0

type FunctionFunctionDataType = shared.FunctionFunctionDataType

This is an alias to an internal type.

type FunctionListParams added in v0.2.0

type FunctionListParams struct {
	// 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`
	EndingBefore param.Field[string] `query:"ending_before" format:"uuid"`
	// Name of the function to search for
	FunctionName param.Field[string] `query:"function_name"`
	// Filter search results to a particular set of object IDs. To specify a list of
	// IDs, include the query param multiple times
	IDs param.Field[FunctionListParamsIDsUnion] `query:"ids" format:"uuid"`
	// Limit the number of objects to return
	Limit param.Field[int64] `query:"limit"`
	// Filter search results to within a particular organization
	OrgName param.Field[string] `query:"org_name"`
	// Project id
	ProjectID param.Field[string] `query:"project_id" format:"uuid"`
	// Name of the project to search for
	ProjectName param.Field[string] `query:"project_name"`
	// Retrieve prompt with a specific slug
	Slug param.Field[string] `query:"slug"`
	// 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`
	StartingAfter param.Field[string] `query:"starting_after" format:"uuid"`
	// 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').
	Version param.Field[string] `query:"version"`
}

func (FunctionListParams) URLQuery added in v0.2.0

func (r FunctionListParams) URLQuery() (v url.Values)

URLQuery serializes FunctionListParams's query parameters as `url.Values`.

type FunctionListParamsIDsArray added in v0.2.0

type FunctionListParamsIDsArray []string

func (FunctionListParamsIDsArray) ImplementsFunctionListParamsIDsUnion added in v0.2.0

func (r FunctionListParamsIDsArray) ImplementsFunctionListParamsIDsUnion()

type FunctionListParamsIDsUnion added in v0.2.0

type FunctionListParamsIDsUnion interface {
	ImplementsFunctionListParamsIDsUnion()
}

Filter search results to a particular set of object IDs. To specify a list of IDs, include the query param multiple times

Satisfied by shared.UnionString, FunctionListParamsIDsArray.

type FunctionLogID added in v0.2.0

type FunctionLogID = shared.FunctionLogID

A literal 'p' which identifies the object as a project prompt

This is an alias to an internal type.

type FunctionNewParams added in v0.2.0

type FunctionNewParams struct {
	CreateFunction shared.CreateFunctionParam `json:"create_function,required"`
}

func (FunctionNewParams) MarshalJSON added in v0.2.0

func (r FunctionNewParams) MarshalJSON() (data []byte, err error)

type FunctionReplaceParams added in v0.2.0

type FunctionReplaceParams struct {
	CreateFunction shared.CreateFunctionParam `json:"create_function,required"`
}

func (FunctionReplaceParams) MarshalJSON added in v0.2.0

func (r FunctionReplaceParams) MarshalJSON() (data []byte, err error)

type FunctionService added in v0.2.0

type FunctionService struct {
	Options []option.RequestOption
}

FunctionService contains methods and other services that help with interacting with the braintrust API.

Note, unlike clients, this service does not read variables from the environment automatically. You should not instantiate this service directly, and instead use the NewFunctionService method instead.

func NewFunctionService added in v0.2.0

func NewFunctionService(opts ...option.RequestOption) (r *FunctionService)

NewFunctionService generates a new service that applies the given options to each request. These options are applied after the parent client's options (if there is one), and before any request-specific options.

func (*FunctionService) Delete added in v0.2.0

func (r *FunctionService) Delete(ctx context.Context, functionID string, opts ...option.RequestOption) (res *shared.Function, err error)

Delete a function object by its id

func (*FunctionService) Get added in v0.2.0

func (r *FunctionService) Get(ctx context.Context, functionID string, opts ...option.RequestOption) (res *shared.Function, err error)

Get a function object by its id

func (*FunctionService) List added in v0.2.0

List out all functions. The functions are sorted by creation date, with the most recently-created functions coming first

func (*FunctionService) ListAutoPaging added in v0.2.0

List out all functions. The functions are sorted by creation date, with the most recently-created functions coming first

func (*FunctionService) New added in v0.2.0

func (r *FunctionService) New(ctx context.Context, body FunctionNewParams, opts ...option.RequestOption) (res *shared.Function, err error)

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

func (*FunctionService) Replace added in v0.2.0

func (r *FunctionService) Replace(ctx context.Context, body FunctionReplaceParams, opts ...option.RequestOption) (res *shared.Function, err error)

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

func (*FunctionService) Update added in v0.2.0

func (r *FunctionService) Update(ctx context.Context, functionID string, body FunctionUpdateParams, opts ...option.RequestOption) (res *shared.Function, err error)

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.

type FunctionUpdateParams added in v0.2.0

type FunctionUpdateParams struct {
	PatchFunction shared.PatchFunctionParam `json:"patch_function,required"`
}

func (FunctionUpdateParams) MarshalJSON added in v0.2.0

func (r FunctionUpdateParams) MarshalJSON() (data []byte, err error)

type Group added in v0.2.0

type Group = shared.Group

A group is a collection of users which can be assigned an ACL

Groups can consist of individual users, as well as a set of groups they inherit from

This is an alias to an internal type.

type GroupListParams added in v0.2.0

type GroupListParams struct {
	// 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`
	EndingBefore param.Field[string] `query:"ending_before" format:"uuid"`
	// Name of the group to search for
	GroupName param.Field[string] `query:"group_name"`
	// Filter search results to a particular set of object IDs. To specify a list of
	// IDs, include the query param multiple times
	IDs param.Field[GroupListParamsIDsUnion] `query:"ids" format:"uuid"`
	// Limit the number of objects to return
	Limit param.Field[int64] `query:"limit"`
	// Filter search results to within a particular organization
	OrgName param.Field[string] `query:"org_name"`
	// 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`
	StartingAfter param.Field[string] `query:"starting_after" format:"uuid"`
}

func (GroupListParams) URLQuery added in v0.2.0

func (r GroupListParams) URLQuery() (v url.Values)

URLQuery serializes GroupListParams's query parameters as `url.Values`.

type GroupListParamsIDsArray added in v0.2.0

type GroupListParamsIDsArray []string

func (GroupListParamsIDsArray) ImplementsGroupListParamsIDsUnion added in v0.2.0

func (r GroupListParamsIDsArray) ImplementsGroupListParamsIDsUnion()

type GroupListParamsIDsUnion added in v0.2.0

type GroupListParamsIDsUnion interface {
	ImplementsGroupListParamsIDsUnion()
}

Filter search results to a particular set of object IDs. To specify a list of IDs, include the query param multiple times

Satisfied by shared.UnionString, GroupListParamsIDsArray.

type GroupNewParams added in v0.2.0

type GroupNewParams struct {
	CreateGroup shared.CreateGroupParam `json:"create_group,required"`
}

func (GroupNewParams) MarshalJSON added in v0.2.0

func (r GroupNewParams) MarshalJSON() (data []byte, err error)

type GroupReplaceParams added in v0.2.0

type GroupReplaceParams struct {
	CreateGroup shared.CreateGroupParam `json:"create_group,required"`
}

func (GroupReplaceParams) MarshalJSON added in v0.2.0

func (r GroupReplaceParams) MarshalJSON() (data []byte, err error)

type GroupService added in v0.2.0

type GroupService struct {
	Options []option.RequestOption
}

GroupService contains methods and other services that help with interacting with the braintrust API.

Note, unlike clients, this service does not read variables from the environment automatically. You should not instantiate this service directly, and instead use the NewGroupService method instead.

func NewGroupService added in v0.2.0

func NewGroupService(opts ...option.RequestOption) (r *GroupService)

NewGroupService generates a new service that applies the given options to each request. These options are applied after the parent client's options (if there is one), and before any request-specific options.

func (*GroupService) Delete added in v0.2.0

func (r *GroupService) Delete(ctx context.Context, groupID string, opts ...option.RequestOption) (res *shared.Group, err error)

Delete a group object by its id

func (*GroupService) Get added in v0.2.0

func (r *GroupService) Get(ctx context.Context, groupID string, opts ...option.RequestOption) (res *shared.Group, err error)

Get a group object by its id

func (*GroupService) List added in v0.2.0

List out all groups. The groups are sorted by creation date, with the most recently-created groups coming first

func (*GroupService) ListAutoPaging added in v0.2.0

List out all groups. The groups are sorted by creation date, with the most recently-created groups coming first

func (*GroupService) New added in v0.2.0

func (r *GroupService) New(ctx context.Context, body GroupNewParams, opts ...option.RequestOption) (res *shared.Group, err error)

Create a new group. If there is an existing group with the same name as the one specified in the request, will return the existing group unmodified

func (*GroupService) Replace added in v0.2.0

func (r *GroupService) Replace(ctx context.Context, body GroupReplaceParams, opts ...option.RequestOption) (res *shared.Group, err error)

Create or replace group. If there is an existing group with the same name as the one specified in the request, will replace the existing group with the provided fields

func (*GroupService) Update added in v0.2.0

func (r *GroupService) Update(ctx context.Context, groupID string, body GroupUpdateParams, opts ...option.RequestOption) (res *shared.Group, err error)

Partially update a group 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.

type GroupUpdateParams added in v0.2.0

type GroupUpdateParams struct {
	PatchGroup shared.PatchGroupParam `json:"patch_group,required"`
}

func (GroupUpdateParams) MarshalJSON added in v0.2.0

func (r GroupUpdateParams) MarshalJSON() (data []byte, err error)

type InsertDatasetEventMergeParam added in v0.2.0

type InsertDatasetEventMergeParam = shared.InsertDatasetEventMergeParam

This is an alias to an internal type.

type InsertDatasetEventReplaceParam added in v0.2.0

type InsertDatasetEventReplaceParam = shared.InsertDatasetEventReplaceParam

This is an alias to an internal type.

type InsertDatasetEventRequestEventsUnionParam added in v0.2.0

type InsertDatasetEventRequestEventsUnionParam = shared.InsertDatasetEventRequestEventsUnionParam

A dataset event

This is an alias to an internal type.

type InsertDatasetEventRequestParam added in v0.2.0

type InsertDatasetEventRequestParam = shared.InsertDatasetEventRequestParam

This is an alias to an internal type.

type InsertEventsResponse added in v0.2.0

type InsertEventsResponse = shared.InsertEventsResponse

This is an alias to an internal type.

type InsertExperimentEventMergeContextParam added in v0.2.0

type InsertExperimentEventMergeContextParam = shared.InsertExperimentEventMergeContextParam

Context is additional information about the code that produced the experiment event. It is essentially the textual counterpart to `metrics`. Use the `caller_*` attributes to track the location in code which produced the experiment event

This is an alias to an internal type.

type InsertExperimentEventMergeMetricsParam added in v0.2.0

type InsertExperimentEventMergeMetricsParam = shared.InsertExperimentEventMergeMetricsParam

Metrics are numerical measurements tracking the execution of the code that produced the experiment event. Use "start" and "end" to track the time span over which the experiment event was produced

This is an alias to an internal type.

type InsertExperimentEventMergeParam added in v0.2.0

type InsertExperimentEventMergeParam = shared.InsertExperimentEventMergeParam

This is an alias to an internal type.

type InsertExperimentEventMergeSpanAttributesParam added in v0.2.0

type InsertExperimentEventMergeSpanAttributesParam = shared.InsertExperimentEventMergeSpanAttributesParam

Human-identifying attributes of the span, such as name, type, etc.

This is an alias to an internal type.

type InsertExperimentEventMergeSpanAttributesType added in v0.2.0

type InsertExperimentEventMergeSpanAttributesType = shared.InsertExperimentEventMergeSpanAttributesType

Type of the span, for display purposes only

This is an alias to an internal type.

type InsertExperimentEventReplaceContextParam added in v0.2.0

type InsertExperimentEventReplaceContextParam = shared.InsertExperimentEventReplaceContextParam

Context is additional information about the code that produced the experiment event. It is essentially the textual counterpart to `metrics`. Use the `caller_*` attributes to track the location in code which produced the experiment event

This is an alias to an internal type.

type InsertExperimentEventReplaceMetricsParam added in v0.2.0

type InsertExperimentEventReplaceMetricsParam = shared.InsertExperimentEventReplaceMetricsParam

Metrics are numerical measurements tracking the execution of the code that produced the experiment event. Use "start" and "end" to track the time span over which the experiment event was produced

This is an alias to an internal type.

type InsertExperimentEventReplaceParam added in v0.2.0

type InsertExperimentEventReplaceParam = shared.InsertExperimentEventReplaceParam

This is an alias to an internal type.

type InsertExperimentEventReplaceSpanAttributesParam added in v0.2.0

type InsertExperimentEventReplaceSpanAttributesParam = shared.InsertExperimentEventReplaceSpanAttributesParam

Human-identifying attributes of the span, such as name, type, etc.

This is an alias to an internal type.

type InsertExperimentEventReplaceSpanAttributesType added in v0.2.0

type InsertExperimentEventReplaceSpanAttributesType = shared.InsertExperimentEventReplaceSpanAttributesType

Type of the span, for display purposes only

This is an alias to an internal type.

type InsertExperimentEventRequestEventsUnionParam added in v0.2.0

type InsertExperimentEventRequestEventsUnionParam = shared.InsertExperimentEventRequestEventsUnionParam

An experiment event

This is an alias to an internal type.

type InsertExperimentEventRequestParam added in v0.2.0

type InsertExperimentEventRequestParam = shared.InsertExperimentEventRequestParam

This is an alias to an internal type.

type InsertProjectLogsEventMergeContextParam added in v0.2.0

type InsertProjectLogsEventMergeContextParam = shared.InsertProjectLogsEventMergeContextParam

Context is additional information about the code that produced the project logs event. It is essentially the textual counterpart to `metrics`. Use the `caller_*` attributes to track the location in code which produced the project logs event

This is an alias to an internal type.

type InsertProjectLogsEventMergeMetricsParam added in v0.2.0

type InsertProjectLogsEventMergeMetricsParam = shared.InsertProjectLogsEventMergeMetricsParam

Metrics are numerical measurements tracking the execution of the code that produced the project logs event. Use "start" and "end" to track the time span over which the project logs event was produced

This is an alias to an internal type.

type InsertProjectLogsEventMergeParam added in v0.2.0

type InsertProjectLogsEventMergeParam = shared.InsertProjectLogsEventMergeParam

This is an alias to an internal type.

type InsertProjectLogsEventMergeSpanAttributesParam added in v0.2.0

type InsertProjectLogsEventMergeSpanAttributesParam = shared.InsertProjectLogsEventMergeSpanAttributesParam

Human-identifying attributes of the span, such as name, type, etc.

This is an alias to an internal type.

type InsertProjectLogsEventMergeSpanAttributesType added in v0.2.0

type InsertProjectLogsEventMergeSpanAttributesType = shared.InsertProjectLogsEventMergeSpanAttributesType

Type of the span, for display purposes only

This is an alias to an internal type.

type InsertProjectLogsEventReplaceContextParam added in v0.2.0

type InsertProjectLogsEventReplaceContextParam = shared.InsertProjectLogsEventReplaceContextParam

Context is additional information about the code that produced the project logs event. It is essentially the textual counterpart to `metrics`. Use the `caller_*` attributes to track the location in code which produced the project logs event

This is an alias to an internal type.

type InsertProjectLogsEventReplaceMetricsParam added in v0.2.0

type InsertProjectLogsEventReplaceMetricsParam = shared.InsertProjectLogsEventReplaceMetricsParam

Metrics are numerical measurements tracking the execution of the code that produced the project logs event. Use "start" and "end" to track the time span over which the project logs event was produced

This is an alias to an internal type.

type InsertProjectLogsEventReplaceParam added in v0.2.0

type InsertProjectLogsEventReplaceParam = shared.InsertProjectLogsEventReplaceParam

This is an alias to an internal type.

type InsertProjectLogsEventReplaceSpanAttributesParam added in v0.2.0

type InsertProjectLogsEventReplaceSpanAttributesParam = shared.InsertProjectLogsEventReplaceSpanAttributesParam

Human-identifying attributes of the span, such as name, type, etc.

This is an alias to an internal type.

type InsertProjectLogsEventReplaceSpanAttributesType added in v0.2.0

type InsertProjectLogsEventReplaceSpanAttributesType = shared.InsertProjectLogsEventReplaceSpanAttributesType

Type of the span, for display purposes only

This is an alias to an internal type.

type InsertProjectLogsEventRequestEventsUnionParam added in v0.2.0

type InsertProjectLogsEventRequestEventsUnionParam = shared.InsertProjectLogsEventRequestEventsUnionParam

A project logs event

This is an alias to an internal type.

type InsertProjectLogsEventRequestParam added in v0.2.0

type InsertProjectLogsEventRequestParam = shared.InsertProjectLogsEventRequestParam

This is an alias to an internal type.

type MetricSummary added in v0.2.0

type MetricSummary = shared.MetricSummary

Summary of a metric's performance

This is an alias to an internal type.

type Organization added in v0.2.0

type Organization = shared.Organization

This is an alias to an internal type.

type OrganizationListParams added in v0.2.0

type OrganizationListParams struct {
	// 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`
	EndingBefore param.Field[string] `query:"ending_before" format:"uuid"`
	// Filter search results to a particular set of object IDs. To specify a list of
	// IDs, include the query param multiple times
	IDs param.Field[OrganizationListParamsIDsUnion] `query:"ids" format:"uuid"`
	// Limit the number of objects to return
	Limit param.Field[int64] `query:"limit"`
	// Filter search results to within a particular organization
	OrgName param.Field[string] `query:"org_name"`
	// Name of the organization to search for
	OrganizationName param.Field[string] `query:"organization_name"`
	// 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`
	StartingAfter param.Field[string] `query:"starting_after" format:"uuid"`
}

func (OrganizationListParams) URLQuery added in v0.2.0

func (r OrganizationListParams) URLQuery() (v url.Values)

URLQuery serializes OrganizationListParams's query parameters as `url.Values`.

type OrganizationListParamsIDsArray added in v0.2.0

type OrganizationListParamsIDsArray []string

func (OrganizationListParamsIDsArray) ImplementsOrganizationListParamsIDsUnion added in v0.2.0

func (r OrganizationListParamsIDsArray) ImplementsOrganizationListParamsIDsUnion()

type OrganizationListParamsIDsUnion added in v0.2.0

type OrganizationListParamsIDsUnion interface {
	ImplementsOrganizationListParamsIDsUnion()
}

Filter search results to a particular set of object IDs. To specify a list of IDs, include the query param multiple times

Satisfied by shared.UnionString, OrganizationListParamsIDsArray.

type OrganizationMemberService added in v0.2.0

type OrganizationMemberService struct {
	Options []option.RequestOption
}

OrganizationMemberService contains methods and other services that help with interacting with the braintrust API.

Note, unlike clients, this service does not read variables from the environment automatically. You should not instantiate this service directly, and instead use the NewOrganizationMemberService method instead.

func NewOrganizationMemberService added in v0.2.0

func NewOrganizationMemberService(opts ...option.RequestOption) (r *OrganizationMemberService)

NewOrganizationMemberService generates a new service that applies the given options to each request. These options are applied after the parent client's options (if there is one), and before any request-specific options.

func (*OrganizationMemberService) Update added in v0.2.0

Modify organization membership

type OrganizationMemberUpdateParams added in v0.2.0

type OrganizationMemberUpdateParams struct {
	PatchOrganizationMembers shared.PatchOrganizationMembersParam `json:"patch_organization_members,required"`
}

func (OrganizationMemberUpdateParams) MarshalJSON added in v0.2.0

func (r OrganizationMemberUpdateParams) MarshalJSON() (data []byte, err error)

type OrganizationMemberUpdateResponse added in v0.2.0

type OrganizationMemberUpdateResponse struct {
	Status OrganizationMemberUpdateResponseStatus `json:"status,required"`
	// If invite emails failed to send for some reason, the patch operation will still
	// complete, but we will return an error message here
	SendEmailError string                               `json:"send_email_error,nullable"`
	JSON           organizationMemberUpdateResponseJSON `json:"-"`
}

func (*OrganizationMemberUpdateResponse) UnmarshalJSON added in v0.2.0

func (r *OrganizationMemberUpdateResponse) UnmarshalJSON(data []byte) (err error)

type OrganizationMemberUpdateResponseStatus added in v0.2.0

type OrganizationMemberUpdateResponseStatus string
const (
	OrganizationMemberUpdateResponseStatusSuccess OrganizationMemberUpdateResponseStatus = "success"
)

func (OrganizationMemberUpdateResponseStatus) IsKnown added in v0.2.0

type OrganizationService added in v0.2.0

type OrganizationService struct {
	Options []option.RequestOption
	Members *OrganizationMemberService
}

OrganizationService contains methods and other services that help with interacting with the braintrust API.

Note, unlike clients, this service does not read variables from the environment automatically. You should not instantiate this service directly, and instead use the NewOrganizationService method instead.

func NewOrganizationService added in v0.2.0

func NewOrganizationService(opts ...option.RequestOption) (r *OrganizationService)

NewOrganizationService generates a new service that applies the given options to each request. These options are applied after the parent client's options (if there is one), and before any request-specific options.

func (*OrganizationService) Delete added in v0.2.0

func (r *OrganizationService) Delete(ctx context.Context, organizationID string, opts ...option.RequestOption) (res *shared.Organization, err error)

Delete a organization object by its id

func (*OrganizationService) Get added in v0.2.0

func (r *OrganizationService) Get(ctx context.Context, organizationID string, opts ...option.RequestOption) (res *shared.Organization, err error)

Get a organization object by its id

func (*OrganizationService) List added in v0.2.0

List out all organizations. The organizations are sorted by creation date, with the most recently-created organizations coming first

func (*OrganizationService) ListAutoPaging added in v0.2.0

List out all organizations. The organizations are sorted by creation date, with the most recently-created organizations coming first

func (*OrganizationService) Update added in v0.2.0

func (r *OrganizationService) Update(ctx context.Context, organizationID string, body OrganizationUpdateParams, opts ...option.RequestOption) (res *shared.Organization, err error)

Partially update a organization 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.

type OrganizationUpdateParams added in v0.2.0

type OrganizationUpdateParams struct {
	PatchOrganization shared.PatchOrganizationParam `json:"patch_organization,required"`
}

func (OrganizationUpdateParams) MarshalJSON added in v0.2.0

func (r OrganizationUpdateParams) MarshalJSON() (data []byte, err error)

type PatchDatasetParam added in v0.2.0

type PatchDatasetParam = shared.PatchDatasetParam

This is an alias to an internal type.

type PatchExperimentParam added in v0.2.0

type PatchExperimentParam = shared.PatchExperimentParam

This is an alias to an internal type.

type PatchFunctionFunctionDataCodeDataLocationParam added in v0.2.0

type PatchFunctionFunctionDataCodeDataLocationParam = shared.PatchFunctionFunctionDataCodeDataLocationParam

This is an alias to an internal type.

type PatchFunctionFunctionDataCodeDataLocationPositionScoreParam added in v0.2.0

type PatchFunctionFunctionDataCodeDataLocationPositionScoreParam = shared.PatchFunctionFunctionDataCodeDataLocationPositionScoreParam

This is an alias to an internal type.

type PatchFunctionFunctionDataCodeDataLocationPositionTask added in v0.2.0

type PatchFunctionFunctionDataCodeDataLocationPositionTask = shared.PatchFunctionFunctionDataCodeDataLocationPositionTask

This is an alias to an internal type.

type PatchFunctionFunctionDataCodeDataLocationPositionUnionParam added in v0.2.0

type PatchFunctionFunctionDataCodeDataLocationPositionUnionParam = shared.PatchFunctionFunctionDataCodeDataLocationPositionUnionParam

This is an alias to an internal type.

type PatchFunctionFunctionDataCodeDataLocationType added in v0.2.0

type PatchFunctionFunctionDataCodeDataLocationType = shared.PatchFunctionFunctionDataCodeDataLocationType

This is an alias to an internal type.

type PatchFunctionFunctionDataCodeDataParam added in v0.2.0

type PatchFunctionFunctionDataCodeDataParam = shared.PatchFunctionFunctionDataCodeDataParam

This is an alias to an internal type.

type PatchFunctionFunctionDataCodeDataRuntimeContextParam added in v0.2.0

type PatchFunctionFunctionDataCodeDataRuntimeContextParam = shared.PatchFunctionFunctionDataCodeDataRuntimeContextParam

This is an alias to an internal type.

type PatchFunctionFunctionDataCodeDataRuntimeContextRuntime added in v0.2.0

type PatchFunctionFunctionDataCodeDataRuntimeContextRuntime = shared.PatchFunctionFunctionDataCodeDataRuntimeContextRuntime

This is an alias to an internal type.

type PatchFunctionFunctionDataCodeParam added in v0.2.0

type PatchFunctionFunctionDataCodeParam = shared.PatchFunctionFunctionDataCodeParam

This is an alias to an internal type.

type PatchFunctionFunctionDataCodeType added in v0.2.0

type PatchFunctionFunctionDataCodeType = shared.PatchFunctionFunctionDataCodeType

This is an alias to an internal type.

type PatchFunctionFunctionDataGlobalParam added in v0.2.0

type PatchFunctionFunctionDataGlobalParam = shared.PatchFunctionFunctionDataGlobalParam

This is an alias to an internal type.

type PatchFunctionFunctionDataGlobalType added in v0.2.0

type PatchFunctionFunctionDataGlobalType = shared.PatchFunctionFunctionDataGlobalType

This is an alias to an internal type.

type PatchFunctionFunctionDataNullableVariantParam added in v0.2.0

type PatchFunctionFunctionDataNullableVariantParam = shared.PatchFunctionFunctionDataNullableVariantParam

This is an alias to an internal type.

type PatchFunctionFunctionDataPromptParam added in v0.2.0

type PatchFunctionFunctionDataPromptParam = shared.PatchFunctionFunctionDataPromptParam

This is an alias to an internal type.

type PatchFunctionFunctionDataPromptType added in v0.2.0

type PatchFunctionFunctionDataPromptType = shared.PatchFunctionFunctionDataPromptType

This is an alias to an internal type.

type PatchFunctionFunctionDataType added in v0.2.0

type PatchFunctionFunctionDataType = shared.PatchFunctionFunctionDataType

This is an alias to an internal type.

type PatchFunctionFunctionDataUnionParam added in v0.2.0

type PatchFunctionFunctionDataUnionParam = shared.PatchFunctionFunctionDataUnionParam

This is an alias to an internal type.

type PatchFunctionParam added in v0.2.0

type PatchFunctionParam = shared.PatchFunctionParam

This is an alias to an internal type.

type PatchGroupParam added in v0.2.0

type PatchGroupParam = shared.PatchGroupParam

This is an alias to an internal type.

type PatchOrganizationMembersInviteUsersParam added in v0.2.0

type PatchOrganizationMembersInviteUsersParam = shared.PatchOrganizationMembersInviteUsersParam

Users to invite to the organization

This is an alias to an internal type.

type PatchOrganizationMembersParam added in v0.2.0

type PatchOrganizationMembersParam = shared.PatchOrganizationMembersParam

This is an alias to an internal type.

type PatchOrganizationMembersRemoveUsersParam added in v0.2.0

type PatchOrganizationMembersRemoveUsersParam = shared.PatchOrganizationMembersRemoveUsersParam

Users to remove from the organization

This is an alias to an internal type.

type PatchOrganizationParam added in v0.2.0

type PatchOrganizationParam = shared.PatchOrganizationParam

This is an alias to an internal type.

type PatchProjectParam added in v0.2.0

type PatchProjectParam = shared.PatchProjectParam

This is an alias to an internal type.

type PatchProjectScoreCategoriesCategoricalParam added in v0.2.0

type PatchProjectScoreCategoriesCategoricalParam = shared.PatchProjectScoreCategoriesCategoricalParam

For categorical-type project scores, the list of all categories

This is an alias to an internal type.

type PatchProjectScoreCategoriesMinimumParam added in v0.2.0

type PatchProjectScoreCategoriesMinimumParam = shared.PatchProjectScoreCategoriesMinimumParam

For minimum-type project scores, the list of included scores

This is an alias to an internal type.

type PatchProjectScoreCategoriesNullableVariantParam added in v0.2.0

type PatchProjectScoreCategoriesNullableVariantParam = shared.PatchProjectScoreCategoriesNullableVariantParam

This is an alias to an internal type.

type PatchProjectScoreCategoriesUnionParam added in v0.2.0

type PatchProjectScoreCategoriesUnionParam = shared.PatchProjectScoreCategoriesUnionParam

For categorical-type project scores, the list of all categories

This is an alias to an internal type.

type PatchProjectScoreParam added in v0.2.0

type PatchProjectScoreParam = shared.PatchProjectScoreParam

This is an alias to an internal type.

type PatchProjectScoreScoreType added in v0.2.0

type PatchProjectScoreScoreType = shared.PatchProjectScoreScoreType

The type of the configured score

This is an alias to an internal type.

type PatchProjectSettingsParam added in v0.2.0

type PatchProjectSettingsParam = shared.PatchProjectSettingsParam

Project settings. Patch operations replace all settings, so make sure you include all settings you want to keep.

This is an alias to an internal type.

type PatchProjectTagParam added in v0.2.0

type PatchProjectTagParam = shared.PatchProjectTagParam

This is an alias to an internal type.

type PatchPromptParam added in v0.2.0

type PatchPromptParam = shared.PatchPromptParam

This is an alias to an internal type.

type PatchRoleAddMemberPermissionParam added in v0.2.0

type PatchRoleAddMemberPermissionParam = shared.PatchRoleAddMemberPermissionParam

This is an alias to an internal type.

type PatchRoleAddMemberPermissionsPermission added in v0.2.0

type PatchRoleAddMemberPermissionsPermission = shared.PatchRoleAddMemberPermissionsPermission

Each permission permits a certain type of operation on an object in the system

Permissions can be assigned to to objects on an individual basis, or grouped into roles

This is an alias to an internal type.

type PatchRoleAddMemberPermissionsRestrictObjectType added in v0.2.0

type PatchRoleAddMemberPermissionsRestrictObjectType = shared.PatchRoleAddMemberPermissionsRestrictObjectType

The object type that the ACL applies to

This is an alias to an internal type.

type PatchRoleParam added in v0.2.0

type PatchRoleParam = shared.PatchRoleParam

This is an alias to an internal type.

type PatchRoleRemoveMemberPermissionParam added in v0.2.0

type PatchRoleRemoveMemberPermissionParam = shared.PatchRoleRemoveMemberPermissionParam

This is an alias to an internal type.

type PatchRoleRemoveMemberPermissionsPermission added in v0.2.0

type PatchRoleRemoveMemberPermissionsPermission = shared.PatchRoleRemoveMemberPermissionsPermission

Each permission permits a certain type of operation on an object in the system

Permissions can be assigned to to objects on an individual basis, or grouped into roles

This is an alias to an internal type.

type PatchRoleRemoveMemberPermissionsRestrictObjectType added in v0.2.0

type PatchRoleRemoveMemberPermissionsRestrictObjectType = shared.PatchRoleRemoveMemberPermissionsRestrictObjectType

The object type that the ACL applies to

This is an alias to an internal type.

type PatchViewObjectType added in v0.2.0

type PatchViewObjectType = shared.PatchViewObjectType

The object type that the ACL applies to

This is an alias to an internal type.

type PatchViewParam added in v0.2.0

type PatchViewParam = shared.PatchViewParam

This is an alias to an internal type.

type PatchViewViewType added in v0.2.0

type PatchViewViewType = shared.PatchViewViewType

Type of table that the view corresponds to.

This is an alias to an internal type.

type PathLookupFilterParam added in v0.2.0

type PathLookupFilterParam = shared.PathLookupFilterParam

A path-lookup filter describes an equality comparison against a specific sub-field in the event row. For instance, if you wish to filter on the value of `c` in `{"input": {"a": {"b": {"c": "hello"}}}}`, pass `path=["input", "a", "b", "c"]` and `value="hello"`

This is an alias to an internal type.

type PathLookupFilterType added in v0.2.0

type PathLookupFilterType = shared.PathLookupFilterType

Denotes the type of filter as a path-lookup filter

This is an alias to an internal type.

type Project

type Project = shared.Project

This is an alias to an internal type.

type ProjectListParams

type ProjectListParams struct {
	// 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`
	EndingBefore param.Field[string] `query:"ending_before" format:"uuid"`
	// Filter search results to a particular set of object IDs. To specify a list of
	// IDs, include the query param multiple times
	IDs param.Field[ProjectListParamsIDsUnion] `query:"ids" format:"uuid"`
	// Limit the number of objects to return
	Limit param.Field[int64] `query:"limit"`
	// Filter search results to within a particular organization
	OrgName param.Field[string] `query:"org_name"`
	// Name of the project to search for
	ProjectName param.Field[string] `query:"project_name"`
	// 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`
	StartingAfter param.Field[string] `query:"starting_after" format:"uuid"`
}

func (ProjectListParams) URLQuery

func (r ProjectListParams) URLQuery() (v url.Values)

URLQuery serializes ProjectListParams's query parameters as `url.Values`.

type ProjectListParamsIDsArray added in v0.2.0

type ProjectListParamsIDsArray []string

func (ProjectListParamsIDsArray) ImplementsProjectListParamsIDsUnion added in v0.2.0

func (r ProjectListParamsIDsArray) ImplementsProjectListParamsIDsUnion()

type ProjectListParamsIDsUnion added in v0.2.0

type ProjectListParamsIDsUnion interface {
	ImplementsProjectListParamsIDsUnion()
}

Filter search results to a particular set of object IDs. To specify a list of IDs, include the query param multiple times

Satisfied by shared.UnionString, ProjectListParamsIDsArray.

type ProjectLogFeedbackParams

type ProjectLogFeedbackParams struct {
	FeedbackProjectLogsEventRequest shared.FeedbackProjectLogsEventRequestParam `json:"feedback_project_logs_event_request,required"`
}

func (ProjectLogFeedbackParams) MarshalJSON

func (r ProjectLogFeedbackParams) MarshalJSON() (data []byte, err error)

type ProjectLogFetchParams

type ProjectLogFetchParams struct {
	// limit the number of traces fetched
	//
	// Fetch queries may be paginated if the total result size is expected to be large
	// (e.g. project_logs which accumulate over a long time). Note that fetch queries
	// only support pagination in descending time order (from latest to earliest
	// `_xact_id`. Furthermore, later pages may return rows which showed up in earlier
	// pages, except with an earlier `_xact_id`. This happens because pagination occurs
	// over the whole version history of the event log. You will most likely want to
	// exclude any such duplicate, outdated rows (by `id`) from your combined result
	// set.
	//
	// The `limit` parameter controls the number of full traces to return. So you may
	// end up with more individual rows than the specified limit if you are fetching
	// events containing traces.
	Limit param.Field[int64] `query:"limit"`
	// DEPRECATION NOTICE: The manually-constructed pagination cursor is deprecated in
	// favor of the explicit 'cursor' returned by object fetch requests. Please prefer
	// the 'cursor' argument going forwards.
	//
	// Together, `max_xact_id` and `max_root_span_id` form a pagination cursor
	//
	// Since a paginated fetch query returns results in order from latest to earliest,
	// the cursor for the next page can be found as the row with the minimum (earliest)
	// value of the tuple `(_xact_id, root_span_id)`. See the documentation of `limit`
	// for an overview of paginating fetch queries.
	MaxRootSpanID param.Field[string] `query:"max_root_span_id"`
	// DEPRECATION NOTICE: The manually-constructed pagination cursor is deprecated in
	// favor of the explicit 'cursor' returned by object fetch requests. Please prefer
	// the 'cursor' argument going forwards.
	//
	// Together, `max_xact_id` and `max_root_span_id` form a pagination cursor
	//
	// Since a paginated fetch query returns results in order from latest to earliest,
	// the cursor for the next page can be found as the row with the minimum (earliest)
	// value of the tuple `(_xact_id, root_span_id)`. See the documentation of `limit`
	// for an overview of paginating fetch queries.
	MaxXactID param.Field[string] `query:"max_xact_id"`
	// Retrieve a snapshot of events from a past time
	//
	// The version id is essentially a filter on the latest event transaction id. You
	// can use the `max_xact_id` returned by a past fetch as the version to reproduce
	// that exact fetch.
	Version param.Field[string] `query:"version"`
}

func (ProjectLogFetchParams) URLQuery

func (r ProjectLogFetchParams) URLQuery() (v url.Values)

URLQuery serializes ProjectLogFetchParams's query parameters as `url.Values`.

type ProjectLogFetchPostParams

type ProjectLogFetchPostParams struct {
	FetchEventsRequest shared.FetchEventsRequestParam `json:"fetch_events_request,required"`
}

func (ProjectLogFetchPostParams) MarshalJSON

func (r ProjectLogFetchPostParams) MarshalJSON() (data []byte, err error)

type ProjectLogInsertParams

type ProjectLogInsertParams struct {
	InsertProjectLogsEventRequest shared.InsertProjectLogsEventRequestParam `json:"insert_project_logs_event_request,required"`
}

func (ProjectLogInsertParams) MarshalJSON

func (r ProjectLogInsertParams) MarshalJSON() (data []byte, err error)

type ProjectLogService

type ProjectLogService struct {
	Options []option.RequestOption
}

ProjectLogService contains methods and other services that help with interacting with the braintrust API.

Note, unlike clients, this service does not read variables from the environment automatically. You should not instantiate this service directly, and instead use the NewProjectLogService method instead.

func NewProjectLogService

func NewProjectLogService(opts ...option.RequestOption) (r *ProjectLogService)

NewProjectLogService generates a new service that applies the given options to each request. These options are applied after the parent client's options (if there is one), and before any request-specific options.

func (*ProjectLogService) Feedback

func (r *ProjectLogService) Feedback(ctx context.Context, projectID string, body ProjectLogFeedbackParams, opts ...option.RequestOption) (err error)

Log feedback for a set of project logs events

func (*ProjectLogService) Fetch

Fetch the events in a project logs. Equivalent to the POST form of the same path, but with the parameters in the URL query rather than in the request body

func (*ProjectLogService) FetchPost

Fetch the events in a project logs. Equivalent to the GET form of the same path, but with the parameters in the request body rather than in the URL query

func (*ProjectLogService) Insert

Insert a set of events into the project logs

type ProjectLogsEvent added in v0.2.0

type ProjectLogsEvent = shared.ProjectLogsEvent

This is an alias to an internal type.

type ProjectLogsEventContext added in v0.2.0

type ProjectLogsEventContext = shared.ProjectLogsEventContext

Context is additional information about the code that produced the project logs event. It is essentially the textual counterpart to `metrics`. Use the `caller_*` attributes to track the location in code which produced the project logs event

This is an alias to an internal type.

type ProjectLogsEventLogID added in v0.2.0

type ProjectLogsEventLogID = shared.ProjectLogsEventLogID

A literal 'g' which identifies the log as a project log

This is an alias to an internal type.

type ProjectLogsEventMetrics added in v0.2.0

type ProjectLogsEventMetrics = shared.ProjectLogsEventMetrics

Metrics are numerical measurements tracking the execution of the code that produced the project logs event. Use "start" and "end" to track the time span over which the project logs event was produced

This is an alias to an internal type.

type ProjectLogsEventSpanAttributes added in v0.2.0

type ProjectLogsEventSpanAttributes = shared.ProjectLogsEventSpanAttributes

Human-identifying attributes of the span, such as name, type, etc.

This is an alias to an internal type.

type ProjectLogsEventSpanAttributesType added in v0.2.0

type ProjectLogsEventSpanAttributesType = shared.ProjectLogsEventSpanAttributesType

Type of the span, for display purposes only

This is an alias to an internal type.

type ProjectNewParams

type ProjectNewParams struct {
	CreateProject shared.CreateProjectParam `json:"create_project,required"`
}

func (ProjectNewParams) MarshalJSON

func (r ProjectNewParams) MarshalJSON() (data []byte, err error)

type ProjectScore added in v0.2.0

type ProjectScore = shared.ProjectScore

A project score is a user-configured score, which can be manually-labeled through the UI

This is an alias to an internal type.

type ProjectScoreCategoriesCategorical added in v0.2.0

type ProjectScoreCategoriesCategorical = shared.ProjectScoreCategoriesCategorical

For categorical-type project scores, the list of all categories

This is an alias to an internal type.

type ProjectScoreCategoriesMinimum added in v0.2.0

type ProjectScoreCategoriesMinimum = shared.ProjectScoreCategoriesMinimum

For minimum-type project scores, the list of included scores

This is an alias to an internal type.

type ProjectScoreCategoriesNullableVariant added in v0.2.0

type ProjectScoreCategoriesNullableVariant = shared.ProjectScoreCategoriesNullableVariant

This is an alias to an internal type.

type ProjectScoreCategoriesUnion added in v0.2.0

type ProjectScoreCategoriesUnion = shared.ProjectScoreCategoriesUnion

For categorical-type project scores, the list of all categories

This is an alias to an internal type.

type ProjectScoreCategory added in v0.2.0

type ProjectScoreCategory = shared.ProjectScoreCategory

For categorical-type project scores, defines a single category

This is an alias to an internal type.

type ProjectScoreCategoryParam added in v0.2.0

type ProjectScoreCategoryParam = shared.ProjectScoreCategoryParam

For categorical-type project scores, defines a single category

This is an alias to an internal type.

type ProjectScoreConfig added in v0.2.0

type ProjectScoreConfig = shared.ProjectScoreConfig

This is an alias to an internal type.

type ProjectScoreConfigDestination added in v0.2.0

type ProjectScoreConfigDestination = shared.ProjectScoreConfigDestination

This is an alias to an internal type.

type ProjectScoreListParams added in v0.2.0

type ProjectScoreListParams struct {
	// 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`
	EndingBefore param.Field[string] `query:"ending_before" format:"uuid"`
	// Filter search results to a particular set of object IDs. To specify a list of
	// IDs, include the query param multiple times
	IDs param.Field[ProjectScoreListParamsIDsUnion] `query:"ids" format:"uuid"`
	// Limit the number of objects to return
	Limit param.Field[int64] `query:"limit"`
	// Filter search results to within a particular organization
	OrgName param.Field[string] `query:"org_name"`
	// Project id
	ProjectID param.Field[string] `query:"project_id" format:"uuid"`
	// Name of the project to search for
	ProjectName param.Field[string] `query:"project_name"`
	// Name of the project_score to search for
	ProjectScoreName param.Field[string] `query:"project_score_name"`
	// 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`
	StartingAfter param.Field[string] `query:"starting_after" format:"uuid"`
}

func (ProjectScoreListParams) URLQuery added in v0.2.0

func (r ProjectScoreListParams) URLQuery() (v url.Values)

URLQuery serializes ProjectScoreListParams's query parameters as `url.Values`.

type ProjectScoreListParamsIDsArray added in v0.2.0

type ProjectScoreListParamsIDsArray []string

func (ProjectScoreListParamsIDsArray) ImplementsProjectScoreListParamsIDsUnion added in v0.2.0

func (r ProjectScoreListParamsIDsArray) ImplementsProjectScoreListParamsIDsUnion()

type ProjectScoreListParamsIDsUnion added in v0.2.0

type ProjectScoreListParamsIDsUnion interface {
	ImplementsProjectScoreListParamsIDsUnion()
}

Filter search results to a particular set of object IDs. To specify a list of IDs, include the query param multiple times

Satisfied by shared.UnionString, ProjectScoreListParamsIDsArray.

type ProjectScoreNewParams added in v0.2.0

type ProjectScoreNewParams struct {
	CreateProjectScore shared.CreateProjectScoreParam `json:"create_project_score,required"`
}

func (ProjectScoreNewParams) MarshalJSON added in v0.2.0

func (r ProjectScoreNewParams) MarshalJSON() (data []byte, err error)

type ProjectScoreReplaceParams added in v0.2.0

type ProjectScoreReplaceParams struct {
	CreateProjectScore shared.CreateProjectScoreParam `json:"create_project_score,required"`
}

func (ProjectScoreReplaceParams) MarshalJSON added in v0.2.0

func (r ProjectScoreReplaceParams) MarshalJSON() (data []byte, err error)

type ProjectScoreScoreType added in v0.2.0

type ProjectScoreScoreType = shared.ProjectScoreScoreType

The type of the configured score

This is an alias to an internal type.

type ProjectScoreService added in v0.2.0

type ProjectScoreService struct {
	Options []option.RequestOption
}

ProjectScoreService contains methods and other services that help with interacting with the braintrust API.

Note, unlike clients, this service does not read variables from the environment automatically. You should not instantiate this service directly, and instead use the NewProjectScoreService method instead.

func NewProjectScoreService added in v0.2.0

func NewProjectScoreService(opts ...option.RequestOption) (r *ProjectScoreService)

NewProjectScoreService generates a new service that applies the given options to each request. These options are applied after the parent client's options (if there is one), and before any request-specific options.

func (*ProjectScoreService) Delete added in v0.2.0

func (r *ProjectScoreService) Delete(ctx context.Context, projectScoreID string, opts ...option.RequestOption) (res *shared.ProjectScore, err error)

Delete a project_score object by its id

func (*ProjectScoreService) Get added in v0.2.0

func (r *ProjectScoreService) Get(ctx context.Context, projectScoreID string, opts ...option.RequestOption) (res *shared.ProjectScore, err error)

Get a project_score object by its id

func (*ProjectScoreService) List added in v0.2.0

List out all project_scores. The project_scores are sorted by creation date, with the most recently-created project_scores coming first

func (*ProjectScoreService) ListAutoPaging added in v0.2.0

List out all project_scores. The project_scores are sorted by creation date, with the most recently-created project_scores coming first

func (*ProjectScoreService) New added in v0.2.0

Create a new project_score. If there is an existing project_score in the project with the same name as the one specified in the request, will return the existing project_score unmodified

func (*ProjectScoreService) Replace added in v0.2.0

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

func (*ProjectScoreService) Update added in v0.2.0

func (r *ProjectScoreService) Update(ctx context.Context, projectScoreID string, body ProjectScoreUpdateParams, opts ...option.RequestOption) (res *shared.ProjectScore, err error)

Partially update a project_score 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.

type ProjectScoreUpdateParams added in v0.2.0

type ProjectScoreUpdateParams struct {
	PatchProjectScore shared.PatchProjectScoreParam `json:"patch_project_score,required"`
}

func (ProjectScoreUpdateParams) MarshalJSON added in v0.2.0

func (r ProjectScoreUpdateParams) MarshalJSON() (data []byte, err error)

type ProjectService

type ProjectService struct {
	Options []option.RequestOption
	Logs    *ProjectLogService
}

ProjectService contains methods and other services that help with interacting with the braintrust API.

Note, unlike clients, this service does not read variables from the environment automatically. You should not instantiate this service directly, and instead use the NewProjectService method instead.

func NewProjectService

func NewProjectService(opts ...option.RequestOption) (r *ProjectService)

NewProjectService generates a new service that applies the given options to each request. These options are applied after the parent client's options (if there is one), and before any request-specific options.

func (*ProjectService) Delete

func (r *ProjectService) Delete(ctx context.Context, projectID string, opts ...option.RequestOption) (res *shared.Project, err error)

Delete a project object by its id

func (*ProjectService) Get

func (r *ProjectService) Get(ctx context.Context, projectID string, opts ...option.RequestOption) (res *shared.Project, err error)

Get a project object by its id

func (*ProjectService) List

List out all projects. The projects are sorted by creation date, with the most recently-created projects coming first

func (*ProjectService) ListAutoPaging

List out all projects. The projects are sorted by creation date, with the most recently-created projects coming first

func (*ProjectService) New

func (r *ProjectService) New(ctx context.Context, body ProjectNewParams, opts ...option.RequestOption) (res *shared.Project, err error)

Create a new project. If there is an existing project with the same name as the one specified in the request, will return the existing project unmodified

func (*ProjectService) Update

func (r *ProjectService) Update(ctx context.Context, projectID string, body ProjectUpdateParams, opts ...option.RequestOption) (res *shared.Project, err error)

Partially update a project 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.

type ProjectSettings added in v0.2.0

type ProjectSettings = shared.ProjectSettings

This is an alias to an internal type.

type ProjectTag added in v0.2.0

type ProjectTag = shared.ProjectTag

A project tag is a user-configured tag for tracking and filtering your experiments, logs, and other data

This is an alias to an internal type.

type ProjectTagListParams added in v0.2.0

type ProjectTagListParams struct {
	// 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`
	EndingBefore param.Field[string] `query:"ending_before" format:"uuid"`
	// Filter search results to a particular set of object IDs. To specify a list of
	// IDs, include the query param multiple times
	IDs param.Field[ProjectTagListParamsIDsUnion] `query:"ids" format:"uuid"`
	// Limit the number of objects to return
	Limit param.Field[int64] `query:"limit"`
	// Filter search results to within a particular organization
	OrgName param.Field[string] `query:"org_name"`
	// Project id
	ProjectID param.Field[string] `query:"project_id" format:"uuid"`
	// Name of the project to search for
	ProjectName param.Field[string] `query:"project_name"`
	// Name of the project_tag to search for
	ProjectTagName param.Field[string] `query:"project_tag_name"`
	// 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`
	StartingAfter param.Field[string] `query:"starting_after" format:"uuid"`
}

func (ProjectTagListParams) URLQuery added in v0.2.0

func (r ProjectTagListParams) URLQuery() (v url.Values)

URLQuery serializes ProjectTagListParams's query parameters as `url.Values`.

type ProjectTagListParamsIDsArray added in v0.2.0

type ProjectTagListParamsIDsArray []string

func (ProjectTagListParamsIDsArray) ImplementsProjectTagListParamsIDsUnion added in v0.2.0

func (r ProjectTagListParamsIDsArray) ImplementsProjectTagListParamsIDsUnion()

type ProjectTagListParamsIDsUnion added in v0.2.0

type ProjectTagListParamsIDsUnion interface {
	ImplementsProjectTagListParamsIDsUnion()
}

Filter search results to a particular set of object IDs. To specify a list of IDs, include the query param multiple times

Satisfied by shared.UnionString, ProjectTagListParamsIDsArray.

type ProjectTagNewParams added in v0.2.0

type ProjectTagNewParams struct {
	CreateProjectTag shared.CreateProjectTagParam `json:"create_project_tag,required"`
}

func (ProjectTagNewParams) MarshalJSON added in v0.2.0

func (r ProjectTagNewParams) MarshalJSON() (data []byte, err error)

type ProjectTagReplaceParams added in v0.2.0

type ProjectTagReplaceParams struct {
	CreateProjectTag shared.CreateProjectTagParam `json:"create_project_tag,required"`
}

func (ProjectTagReplaceParams) MarshalJSON added in v0.2.0

func (r ProjectTagReplaceParams) MarshalJSON() (data []byte, err error)

type ProjectTagService added in v0.2.0

type ProjectTagService struct {
	Options []option.RequestOption
}

ProjectTagService contains methods and other services that help with interacting with the braintrust API.

Note, unlike clients, this service does not read variables from the environment automatically. You should not instantiate this service directly, and instead use the NewProjectTagService method instead.

func NewProjectTagService added in v0.2.0

func NewProjectTagService(opts ...option.RequestOption) (r *ProjectTagService)

NewProjectTagService generates a new service that applies the given options to each request. These options are applied after the parent client's options (if there is one), and before any request-specific options.

func (*ProjectTagService) Delete added in v0.2.0

func (r *ProjectTagService) Delete(ctx context.Context, projectTagID string, opts ...option.RequestOption) (res *shared.ProjectTag, err error)

Delete a project_tag object by its id

func (*ProjectTagService) Get added in v0.2.0

func (r *ProjectTagService) Get(ctx context.Context, projectTagID string, opts ...option.RequestOption) (res *shared.ProjectTag, err error)

Get a project_tag object by its id

func (*ProjectTagService) List added in v0.2.0

List out all project_tags. The project_tags are sorted by creation date, with the most recently-created project_tags coming first

func (*ProjectTagService) ListAutoPaging added in v0.2.0

List out all project_tags. The project_tags are sorted by creation date, with the most recently-created project_tags coming first

func (*ProjectTagService) New added in v0.2.0

Create a new project_tag. If there is an existing project_tag in the project with the same name as the one specified in the request, will return the existing project_tag unmodified

func (*ProjectTagService) Replace added in v0.2.0

Create or replace project_tag. If there is an existing project_tag in the project with the same name as the one specified in the request, will replace the existing project_tag with the provided fields

func (*ProjectTagService) Update added in v0.2.0

func (r *ProjectTagService) Update(ctx context.Context, projectTagID string, body ProjectTagUpdateParams, opts ...option.RequestOption) (res *shared.ProjectTag, err error)

Partially update a project_tag 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.

type ProjectTagUpdateParams added in v0.2.0

type ProjectTagUpdateParams struct {
	PatchProjectTag shared.PatchProjectTagParam `json:"patch_project_tag,required"`
}

func (ProjectTagUpdateParams) MarshalJSON added in v0.2.0

func (r ProjectTagUpdateParams) MarshalJSON() (data []byte, err error)

type ProjectUpdateParams

type ProjectUpdateParams struct {
	PatchProject shared.PatchProjectParam `json:"patch_project,required"`
}

func (ProjectUpdateParams) MarshalJSON

func (r ProjectUpdateParams) MarshalJSON() (data []byte, err error)

type Prompt added in v0.2.0

type Prompt = shared.Prompt

This is an alias to an internal type.

type PromptData added in v0.2.0

type PromptData = shared.PromptData

The prompt, model, and its parameters

This is an alias to an internal type.

type PromptDataOptions added in v0.2.0

type PromptDataOptions = shared.PromptDataOptions

This is an alias to an internal type.

type PromptDataOptionsParam added in v0.2.0

type PromptDataOptionsParam = shared.PromptDataOptionsParam

This is an alias to an internal type.

type PromptDataOptionsParamsAnthropicModelParams added in v0.2.0

type PromptDataOptionsParamsAnthropicModelParams = shared.PromptDataOptionsParamsAnthropicModelParams

This is an alias to an internal type.

type PromptDataOptionsParamsAnthropicModelParamsParam added in v0.2.0

type PromptDataOptionsParamsAnthropicModelParamsParam = shared.PromptDataOptionsParamsAnthropicModelParamsParam

This is an alias to an internal type.

type PromptDataOptionsParamsGoogleModelParams added in v0.2.0

type PromptDataOptionsParamsGoogleModelParams = shared.PromptDataOptionsParamsGoogleModelParams

This is an alias to an internal type.

type PromptDataOptionsParamsGoogleModelParamsParam added in v0.2.0

type PromptDataOptionsParamsGoogleModelParamsParam = shared.PromptDataOptionsParamsGoogleModelParamsParam

This is an alias to an internal type.

type PromptDataOptionsParamsJsCompletionParams added in v0.2.0

type PromptDataOptionsParamsJsCompletionParams = shared.PromptDataOptionsParamsJsCompletionParams

This is an alias to an internal type.

type PromptDataOptionsParamsJsCompletionParamsParam added in v0.2.0

type PromptDataOptionsParamsJsCompletionParamsParam = shared.PromptDataOptionsParamsJsCompletionParamsParam

This is an alias to an internal type.

type PromptDataOptionsParamsOpenAIModelParams added in v0.2.0

type PromptDataOptionsParamsOpenAIModelParams = shared.PromptDataOptionsParamsOpenAIModelParams

This is an alias to an internal type.

type PromptDataOptionsParamsOpenAIModelParamsFunctionCallAuto added in v0.2.0

type PromptDataOptionsParamsOpenAIModelParamsFunctionCallAuto = shared.PromptDataOptionsParamsOpenAIModelParamsFunctionCallAuto

This is an alias to an internal type.

type PromptDataOptionsParamsOpenAIModelParamsFunctionCallFunction added in v0.2.0

type PromptDataOptionsParamsOpenAIModelParamsFunctionCallFunction = shared.PromptDataOptionsParamsOpenAIModelParamsFunctionCallFunction

This is an alias to an internal type.

type PromptDataOptionsParamsOpenAIModelParamsFunctionCallFunctionParam added in v0.2.0

type PromptDataOptionsParamsOpenAIModelParamsFunctionCallFunctionParam = shared.PromptDataOptionsParamsOpenAIModelParamsFunctionCallFunctionParam

This is an alias to an internal type.

type PromptDataOptionsParamsOpenAIModelParamsFunctionCallNone added in v0.2.0

type PromptDataOptionsParamsOpenAIModelParamsFunctionCallNone = shared.PromptDataOptionsParamsOpenAIModelParamsFunctionCallNone

This is an alias to an internal type.

type PromptDataOptionsParamsOpenAIModelParamsFunctionCallUnion added in v0.2.0

type PromptDataOptionsParamsOpenAIModelParamsFunctionCallUnion = shared.PromptDataOptionsParamsOpenAIModelParamsFunctionCallUnion

This is an alias to an internal type.

type PromptDataOptionsParamsOpenAIModelParamsFunctionCallUnionParam added in v0.2.0

type PromptDataOptionsParamsOpenAIModelParamsFunctionCallUnionParam = shared.PromptDataOptionsParamsOpenAIModelParamsFunctionCallUnionParam

This is an alias to an internal type.

type PromptDataOptionsParamsOpenAIModelParamsParam added in v0.2.0

type PromptDataOptionsParamsOpenAIModelParamsParam = shared.PromptDataOptionsParamsOpenAIModelParamsParam

This is an alias to an internal type.

type PromptDataOptionsParamsOpenAIModelParamsResponseFormat added in v0.2.0

type PromptDataOptionsParamsOpenAIModelParamsResponseFormat = shared.PromptDataOptionsParamsOpenAIModelParamsResponseFormat

This is an alias to an internal type.

type PromptDataOptionsParamsOpenAIModelParamsResponseFormatParam added in v0.2.0

type PromptDataOptionsParamsOpenAIModelParamsResponseFormatParam = shared.PromptDataOptionsParamsOpenAIModelParamsResponseFormatParam

This is an alias to an internal type.

type PromptDataOptionsParamsOpenAIModelParamsResponseFormatType added in v0.2.0

type PromptDataOptionsParamsOpenAIModelParamsResponseFormatType = shared.PromptDataOptionsParamsOpenAIModelParamsResponseFormatType

This is an alias to an internal type.

type PromptDataOptionsParamsOpenAIModelParamsToolChoiceAuto added in v0.2.0

type PromptDataOptionsParamsOpenAIModelParamsToolChoiceAuto = shared.PromptDataOptionsParamsOpenAIModelParamsToolChoiceAuto

This is an alias to an internal type.

type PromptDataOptionsParamsOpenAIModelParamsToolChoiceFunction added in v0.2.0

type PromptDataOptionsParamsOpenAIModelParamsToolChoiceFunction = shared.PromptDataOptionsParamsOpenAIModelParamsToolChoiceFunction

This is an alias to an internal type.

type PromptDataOptionsParamsOpenAIModelParamsToolChoiceFunctionFunction added in v0.2.0

type PromptDataOptionsParamsOpenAIModelParamsToolChoiceFunctionFunction = shared.PromptDataOptionsParamsOpenAIModelParamsToolChoiceFunctionFunction

This is an alias to an internal type.

type PromptDataOptionsParamsOpenAIModelParamsToolChoiceFunctionFunctionParam added in v0.2.0

type PromptDataOptionsParamsOpenAIModelParamsToolChoiceFunctionFunctionParam = shared.PromptDataOptionsParamsOpenAIModelParamsToolChoiceFunctionFunctionParam

This is an alias to an internal type.

type PromptDataOptionsParamsOpenAIModelParamsToolChoiceFunctionParam added in v0.2.0

type PromptDataOptionsParamsOpenAIModelParamsToolChoiceFunctionParam = shared.PromptDataOptionsParamsOpenAIModelParamsToolChoiceFunctionParam

This is an alias to an internal type.

type PromptDataOptionsParamsOpenAIModelParamsToolChoiceFunctionType added in v0.2.0

type PromptDataOptionsParamsOpenAIModelParamsToolChoiceFunctionType = shared.PromptDataOptionsParamsOpenAIModelParamsToolChoiceFunctionType

This is an alias to an internal type.

type PromptDataOptionsParamsOpenAIModelParamsToolChoiceNone added in v0.2.0

type PromptDataOptionsParamsOpenAIModelParamsToolChoiceNone = shared.PromptDataOptionsParamsOpenAIModelParamsToolChoiceNone

This is an alias to an internal type.

type PromptDataOptionsParamsOpenAIModelParamsToolChoiceUnion added in v0.2.0

type PromptDataOptionsParamsOpenAIModelParamsToolChoiceUnion = shared.PromptDataOptionsParamsOpenAIModelParamsToolChoiceUnion

This is an alias to an internal type.

type PromptDataOptionsParamsOpenAIModelParamsToolChoiceUnionParam added in v0.2.0

type PromptDataOptionsParamsOpenAIModelParamsToolChoiceUnionParam = shared.PromptDataOptionsParamsOpenAIModelParamsToolChoiceUnionParam

This is an alias to an internal type.

type PromptDataOptionsParamsUnion added in v0.2.0

type PromptDataOptionsParamsUnion = shared.PromptDataOptionsParamsUnion

This is an alias to an internal type.

type PromptDataOptionsParamsUnionParam added in v0.2.0

type PromptDataOptionsParamsUnionParam = shared.PromptDataOptionsParamsUnionParam

This is an alias to an internal type.

type PromptDataOptionsParamsWindowAIModelParams added in v0.2.0

type PromptDataOptionsParamsWindowAIModelParams = shared.PromptDataOptionsParamsWindowAIModelParams

This is an alias to an internal type.

type PromptDataOptionsParamsWindowAIModelParamsParam added in v0.2.0

type PromptDataOptionsParamsWindowAIModelParamsParam = shared.PromptDataOptionsParamsWindowAIModelParamsParam

This is an alias to an internal type.

type PromptDataOrigin added in v0.2.0

type PromptDataOrigin = shared.PromptDataOrigin

This is an alias to an internal type.

type PromptDataOriginParam added in v0.2.0

type PromptDataOriginParam = shared.PromptDataOriginParam

This is an alias to an internal type.

type PromptDataParam added in v0.2.0

type PromptDataParam = shared.PromptDataParam

The prompt, model, and its parameters

This is an alias to an internal type.

type PromptDataPrompt added in v0.2.0

type PromptDataPrompt = shared.PromptDataPrompt

This is an alias to an internal type.

type PromptDataPromptChat added in v0.2.0

type PromptDataPromptChat = shared.PromptDataPromptChat

This is an alias to an internal type.

type PromptDataPromptChatMessage added in v0.2.0

type PromptDataPromptChatMessage = shared.PromptDataPromptChatMessage

This is an alias to an internal type.

type PromptDataPromptChatMessagesAssistant added in v0.2.0

type PromptDataPromptChatMessagesAssistant = shared.PromptDataPromptChatMessagesAssistant

This is an alias to an internal type.

type PromptDataPromptChatMessagesAssistantFunctionCall added in v0.2.0

type PromptDataPromptChatMessagesAssistantFunctionCall = shared.PromptDataPromptChatMessagesAssistantFunctionCall

This is an alias to an internal type.

type PromptDataPromptChatMessagesAssistantFunctionCallParam added in v0.2.0

type PromptDataPromptChatMessagesAssistantFunctionCallParam = shared.PromptDataPromptChatMessagesAssistantFunctionCallParam

This is an alias to an internal type.

type PromptDataPromptChatMessagesAssistantParam added in v0.2.0

type PromptDataPromptChatMessagesAssistantParam = shared.PromptDataPromptChatMessagesAssistantParam

This is an alias to an internal type.

type PromptDataPromptChatMessagesAssistantRole added in v0.2.0

type PromptDataPromptChatMessagesAssistantRole = shared.PromptDataPromptChatMessagesAssistantRole

This is an alias to an internal type.

type PromptDataPromptChatMessagesAssistantToolCall added in v0.2.0

type PromptDataPromptChatMessagesAssistantToolCall = shared.PromptDataPromptChatMessagesAssistantToolCall

This is an alias to an internal type.

type PromptDataPromptChatMessagesAssistantToolCallParam added in v0.2.0

type PromptDataPromptChatMessagesAssistantToolCallParam = shared.PromptDataPromptChatMessagesAssistantToolCallParam

This is an alias to an internal type.

type PromptDataPromptChatMessagesAssistantToolCallsFunction added in v0.2.0

type PromptDataPromptChatMessagesAssistantToolCallsFunction = shared.PromptDataPromptChatMessagesAssistantToolCallsFunction

This is an alias to an internal type.

type PromptDataPromptChatMessagesAssistantToolCallsFunctionParam added in v0.2.0

type PromptDataPromptChatMessagesAssistantToolCallsFunctionParam = shared.PromptDataPromptChatMessagesAssistantToolCallsFunctionParam

This is an alias to an internal type.

type PromptDataPromptChatMessagesAssistantToolCallsType added in v0.2.0

type PromptDataPromptChatMessagesAssistantToolCallsType = shared.PromptDataPromptChatMessagesAssistantToolCallsType

This is an alias to an internal type.

type PromptDataPromptChatMessagesFallback added in v0.2.0

type PromptDataPromptChatMessagesFallback = shared.PromptDataPromptChatMessagesFallback

This is an alias to an internal type.

type PromptDataPromptChatMessagesFallbackParam added in v0.2.0

type PromptDataPromptChatMessagesFallbackParam = shared.PromptDataPromptChatMessagesFallbackParam

This is an alias to an internal type.

type PromptDataPromptChatMessagesFallbackRole added in v0.2.0

type PromptDataPromptChatMessagesFallbackRole = shared.PromptDataPromptChatMessagesFallbackRole

This is an alias to an internal type.

type PromptDataPromptChatMessagesFunction added in v0.2.0

type PromptDataPromptChatMessagesFunction = shared.PromptDataPromptChatMessagesFunction

This is an alias to an internal type.

type PromptDataPromptChatMessagesFunctionParam added in v0.2.0

type PromptDataPromptChatMessagesFunctionParam = shared.PromptDataPromptChatMessagesFunctionParam

This is an alias to an internal type.

type PromptDataPromptChatMessagesFunctionRole added in v0.2.0

type PromptDataPromptChatMessagesFunctionRole = shared.PromptDataPromptChatMessagesFunctionRole

This is an alias to an internal type.

type PromptDataPromptChatMessagesRole added in v0.2.0

type PromptDataPromptChatMessagesRole = shared.PromptDataPromptChatMessagesRole

This is an alias to an internal type.

type PromptDataPromptChatMessagesSystem added in v0.2.0

type PromptDataPromptChatMessagesSystem = shared.PromptDataPromptChatMessagesSystem

This is an alias to an internal type.

type PromptDataPromptChatMessagesSystemParam added in v0.2.0

type PromptDataPromptChatMessagesSystemParam = shared.PromptDataPromptChatMessagesSystemParam

This is an alias to an internal type.

type PromptDataPromptChatMessagesSystemRole added in v0.2.0

type PromptDataPromptChatMessagesSystemRole = shared.PromptDataPromptChatMessagesSystemRole

This is an alias to an internal type.

type PromptDataPromptChatMessagesTool added in v0.2.0

type PromptDataPromptChatMessagesTool = shared.PromptDataPromptChatMessagesTool

This is an alias to an internal type.

type PromptDataPromptChatMessagesToolParam added in v0.2.0

type PromptDataPromptChatMessagesToolParam = shared.PromptDataPromptChatMessagesToolParam

This is an alias to an internal type.

type PromptDataPromptChatMessagesToolRole added in v0.2.0

type PromptDataPromptChatMessagesToolRole = shared.PromptDataPromptChatMessagesToolRole

This is an alias to an internal type.

type PromptDataPromptChatMessagesUnionParam added in v0.2.0

type PromptDataPromptChatMessagesUnionParam = shared.PromptDataPromptChatMessagesUnionParam

This is an alias to an internal type.

type PromptDataPromptChatMessagesUser added in v0.2.0

type PromptDataPromptChatMessagesUser = shared.PromptDataPromptChatMessagesUser

This is an alias to an internal type.

type PromptDataPromptChatMessagesUserContentArray added in v0.2.0

type PromptDataPromptChatMessagesUserContentArray = shared.PromptDataPromptChatMessagesUserContentArray

This is an alias to an internal type.

type PromptDataPromptChatMessagesUserContentArrayImageURL added in v0.2.0

type PromptDataPromptChatMessagesUserContentArrayImageURL = shared.PromptDataPromptChatMessagesUserContentArrayImageURL

This is an alias to an internal type.

type PromptDataPromptChatMessagesUserContentArrayImageURLImageURL added in v0.2.0

type PromptDataPromptChatMessagesUserContentArrayImageURLImageURL = shared.PromptDataPromptChatMessagesUserContentArrayImageURLImageURL

This is an alias to an internal type.

type PromptDataPromptChatMessagesUserContentArrayImageURLImageURLDetail added in v0.2.0

type PromptDataPromptChatMessagesUserContentArrayImageURLImageURLDetail = shared.PromptDataPromptChatMessagesUserContentArrayImageURLImageURLDetail

This is an alias to an internal type.

type PromptDataPromptChatMessagesUserContentArrayImageURLImageURLParam added in v0.2.0

type PromptDataPromptChatMessagesUserContentArrayImageURLImageURLParam = shared.PromptDataPromptChatMessagesUserContentArrayImageURLImageURLParam

This is an alias to an internal type.

type PromptDataPromptChatMessagesUserContentArrayImageURLParam added in v0.2.0

type PromptDataPromptChatMessagesUserContentArrayImageURLParam = shared.PromptDataPromptChatMessagesUserContentArrayImageURLParam

This is an alias to an internal type.

type PromptDataPromptChatMessagesUserContentArrayImageURLType added in v0.2.0

type PromptDataPromptChatMessagesUserContentArrayImageURLType = shared.PromptDataPromptChatMessagesUserContentArrayImageURLType

This is an alias to an internal type.

type PromptDataPromptChatMessagesUserContentArrayItem added in v0.2.0

type PromptDataPromptChatMessagesUserContentArrayItem = shared.PromptDataPromptChatMessagesUserContentArrayItem

This is an alias to an internal type.

type PromptDataPromptChatMessagesUserContentArrayParam added in v0.2.0

type PromptDataPromptChatMessagesUserContentArrayParam = shared.PromptDataPromptChatMessagesUserContentArrayParam

This is an alias to an internal type.

type PromptDataPromptChatMessagesUserContentArrayText added in v0.2.0

type PromptDataPromptChatMessagesUserContentArrayText = shared.PromptDataPromptChatMessagesUserContentArrayText

This is an alias to an internal type.

type PromptDataPromptChatMessagesUserContentArrayTextParam added in v0.2.0

type PromptDataPromptChatMessagesUserContentArrayTextParam = shared.PromptDataPromptChatMessagesUserContentArrayTextParam

This is an alias to an internal type.

type PromptDataPromptChatMessagesUserContentArrayTextType added in v0.2.0

type PromptDataPromptChatMessagesUserContentArrayTextType = shared.PromptDataPromptChatMessagesUserContentArrayTextType

This is an alias to an internal type.

type PromptDataPromptChatMessagesUserContentArrayType added in v0.2.0

type PromptDataPromptChatMessagesUserContentArrayType = shared.PromptDataPromptChatMessagesUserContentArrayType

This is an alias to an internal type.

type PromptDataPromptChatMessagesUserContentArrayUnionItemParam added in v0.2.0

type PromptDataPromptChatMessagesUserContentArrayUnionItemParam = shared.PromptDataPromptChatMessagesUserContentArrayUnionItemParam

This is an alias to an internal type.

type PromptDataPromptChatMessagesUserContentUnion added in v0.2.0

type PromptDataPromptChatMessagesUserContentUnion = shared.PromptDataPromptChatMessagesUserContentUnion

This is an alias to an internal type.

type PromptDataPromptChatMessagesUserContentUnionParam added in v0.2.0

type PromptDataPromptChatMessagesUserContentUnionParam = shared.PromptDataPromptChatMessagesUserContentUnionParam

This is an alias to an internal type.

type PromptDataPromptChatMessagesUserParam added in v0.2.0

type PromptDataPromptChatMessagesUserParam = shared.PromptDataPromptChatMessagesUserParam

This is an alias to an internal type.

type PromptDataPromptChatMessagesUserRole added in v0.2.0

type PromptDataPromptChatMessagesUserRole = shared.PromptDataPromptChatMessagesUserRole

This is an alias to an internal type.

type PromptDataPromptChatParam added in v0.2.0

type PromptDataPromptChatParam = shared.PromptDataPromptChatParam

This is an alias to an internal type.

type PromptDataPromptChatType added in v0.2.0

type PromptDataPromptChatType = shared.PromptDataPromptChatType

This is an alias to an internal type.

type PromptDataPromptCompletion added in v0.2.0

type PromptDataPromptCompletion = shared.PromptDataPromptCompletion

This is an alias to an internal type.

type PromptDataPromptCompletionParam added in v0.2.0

type PromptDataPromptCompletionParam = shared.PromptDataPromptCompletionParam

This is an alias to an internal type.

type PromptDataPromptCompletionType added in v0.2.0

type PromptDataPromptCompletionType = shared.PromptDataPromptCompletionType

This is an alias to an internal type.

type PromptDataPromptNullableVariant added in v0.2.0

type PromptDataPromptNullableVariant = shared.PromptDataPromptNullableVariant

This is an alias to an internal type.

type PromptDataPromptNullableVariantParam added in v0.2.0

type PromptDataPromptNullableVariantParam = shared.PromptDataPromptNullableVariantParam

This is an alias to an internal type.

type PromptDataPromptType added in v0.2.0

type PromptDataPromptType = shared.PromptDataPromptType

This is an alias to an internal type.

type PromptDataPromptUnionParam added in v0.2.0

type PromptDataPromptUnionParam = shared.PromptDataPromptUnionParam

This is an alias to an internal type.

type PromptListParams added in v0.2.0

type PromptListParams struct {
	// 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`
	EndingBefore param.Field[string] `query:"ending_before" format:"uuid"`
	// Filter search results to a particular set of object IDs. To specify a list of
	// IDs, include the query param multiple times
	IDs param.Field[PromptListParamsIDsUnion] `query:"ids" format:"uuid"`
	// Limit the number of objects to return
	Limit param.Field[int64] `query:"limit"`
	// Filter search results to within a particular organization
	OrgName param.Field[string] `query:"org_name"`
	// Project id
	ProjectID param.Field[string] `query:"project_id" format:"uuid"`
	// Name of the project to search for
	ProjectName param.Field[string] `query:"project_name"`
	// Name of the prompt to search for
	PromptName param.Field[string] `query:"prompt_name"`
	// Retrieve prompt with a specific slug
	Slug param.Field[string] `query:"slug"`
	// 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`
	StartingAfter param.Field[string] `query:"starting_after" format:"uuid"`
	// 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').
	Version param.Field[string] `query:"version"`
}

func (PromptListParams) URLQuery added in v0.2.0

func (r PromptListParams) URLQuery() (v url.Values)

URLQuery serializes PromptListParams's query parameters as `url.Values`.

type PromptListParamsIDsArray added in v0.2.0

type PromptListParamsIDsArray []string

func (PromptListParamsIDsArray) ImplementsPromptListParamsIDsUnion added in v0.2.0

func (r PromptListParamsIDsArray) ImplementsPromptListParamsIDsUnion()

type PromptListParamsIDsUnion added in v0.2.0

type PromptListParamsIDsUnion interface {
	ImplementsPromptListParamsIDsUnion()
}

Filter search results to a particular set of object IDs. To specify a list of IDs, include the query param multiple times

Satisfied by shared.UnionString, PromptListParamsIDsArray.

type PromptLogID added in v0.2.0

type PromptLogID = shared.PromptLogID

A literal 'p' which identifies the object as a project prompt

This is an alias to an internal type.

type PromptNewParams added in v0.2.0

type PromptNewParams struct {
	CreatePrompt shared.CreatePromptParam `json:"create_prompt,required"`
}

func (PromptNewParams) MarshalJSON added in v0.2.0

func (r PromptNewParams) MarshalJSON() (data []byte, err error)

type PromptReplaceParams added in v0.2.0

type PromptReplaceParams struct {
	CreatePrompt shared.CreatePromptParam `json:"create_prompt,required"`
}

func (PromptReplaceParams) MarshalJSON added in v0.2.0

func (r PromptReplaceParams) MarshalJSON() (data []byte, err error)

type PromptService added in v0.2.0

type PromptService struct {
	Options []option.RequestOption
}

PromptService contains methods and other services that help with interacting with the braintrust API.

Note, unlike clients, this service does not read variables from the environment automatically. You should not instantiate this service directly, and instead use the NewPromptService method instead.

func NewPromptService added in v0.2.0

func NewPromptService(opts ...option.RequestOption) (r *PromptService)

NewPromptService generates a new service that applies the given options to each request. These options are applied after the parent client's options (if there is one), and before any request-specific options.

func (*PromptService) Delete added in v0.2.0

func (r *PromptService) Delete(ctx context.Context, promptID string, opts ...option.RequestOption) (res *shared.Prompt, err error)

Delete a prompt object by its id

func (*PromptService) Get added in v0.2.0

func (r *PromptService) Get(ctx context.Context, promptID string, opts ...option.RequestOption) (res *shared.Prompt, err error)

Get a prompt object by its id

func (*PromptService) List added in v0.2.0

List out all prompts. The prompts are sorted by creation date, with the most recently-created prompts coming first

func (*PromptService) ListAutoPaging added in v0.2.0

List out all prompts. The prompts are sorted by creation date, with the most recently-created prompts coming first

func (*PromptService) New added in v0.2.0

func (r *PromptService) New(ctx context.Context, body PromptNewParams, opts ...option.RequestOption) (res *shared.Prompt, err error)

Create a new prompt. If there is an existing prompt in the project with the same slug as the one specified in the request, will return the existing prompt unmodified

func (*PromptService) Replace added in v0.2.0

func (r *PromptService) Replace(ctx context.Context, body PromptReplaceParams, opts ...option.RequestOption) (res *shared.Prompt, err error)

Create or replace prompt. If there is an existing prompt in the project with the same slug as the one specified in the request, will replace the existing prompt with the provided fields

func (*PromptService) Update added in v0.2.0

func (r *PromptService) Update(ctx context.Context, promptID string, body PromptUpdateParams, opts ...option.RequestOption) (res *shared.Prompt, err error)

Partially update a prompt 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.

type PromptUpdateParams added in v0.2.0

type PromptUpdateParams struct {
	PatchPrompt shared.PatchPromptParam `json:"patch_prompt,required"`
}

func (PromptUpdateParams) MarshalJSON added in v0.2.0

func (r PromptUpdateParams) MarshalJSON() (data []byte, err error)

type RepoInfo added in v0.2.0

type RepoInfo = shared.RepoInfo

Metadata about the state of the repo when the experiment was created

This is an alias to an internal type.

type RepoInfoParam added in v0.2.0

type RepoInfoParam = shared.RepoInfoParam

Metadata about the state of the repo when the experiment was created

This is an alias to an internal type.

type Role added in v0.2.0

type Role = shared.Role

A role is a collection of permissions which can be granted as part of an ACL

Roles can consist of individual permissions, as well as a set of roles they inherit from

This is an alias to an internal type.

type RoleListParams added in v0.2.0

type RoleListParams struct {
	// 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`
	EndingBefore param.Field[string] `query:"ending_before" format:"uuid"`
	// Filter search results to a particular set of object IDs. To specify a list of
	// IDs, include the query param multiple times
	IDs param.Field[RoleListParamsIDsUnion] `query:"ids" format:"uuid"`
	// Limit the number of objects to return
	Limit param.Field[int64] `query:"limit"`
	// Filter search results to within a particular organization
	OrgName param.Field[string] `query:"org_name"`
	// Name of the role to search for
	RoleName param.Field[string] `query:"role_name"`
	// 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`
	StartingAfter param.Field[string] `query:"starting_after" format:"uuid"`
}

func (RoleListParams) URLQuery added in v0.2.0

func (r RoleListParams) URLQuery() (v url.Values)

URLQuery serializes RoleListParams's query parameters as `url.Values`.

type RoleListParamsIDsArray added in v0.2.0

type RoleListParamsIDsArray []string

func (RoleListParamsIDsArray) ImplementsRoleListParamsIDsUnion added in v0.2.0

func (r RoleListParamsIDsArray) ImplementsRoleListParamsIDsUnion()

type RoleListParamsIDsUnion added in v0.2.0

type RoleListParamsIDsUnion interface {
	ImplementsRoleListParamsIDsUnion()
}

Filter search results to a particular set of object IDs. To specify a list of IDs, include the query param multiple times

Satisfied by shared.UnionString, RoleListParamsIDsArray.

type RoleMemberPermission added in v0.2.0

type RoleMemberPermission = shared.RoleMemberPermission

This is an alias to an internal type.

type RoleMemberPermissionsPermission added in v0.2.0

type RoleMemberPermissionsPermission = shared.RoleMemberPermissionsPermission

Each permission permits a certain type of operation on an object in the system

Permissions can be assigned to to objects on an individual basis, or grouped into roles

This is an alias to an internal type.

type RoleMemberPermissionsRestrictObjectType added in v0.2.0

type RoleMemberPermissionsRestrictObjectType = shared.RoleMemberPermissionsRestrictObjectType

The object type that the ACL applies to

This is an alias to an internal type.

type RoleNewParams added in v0.2.0

type RoleNewParams struct {
	CreateRole shared.CreateRoleParam `json:"create_role,required"`
}

func (RoleNewParams) MarshalJSON added in v0.2.0

func (r RoleNewParams) MarshalJSON() (data []byte, err error)

type RoleReplaceParams added in v0.2.0

type RoleReplaceParams struct {
	CreateRole shared.CreateRoleParam `json:"create_role,required"`
}

func (RoleReplaceParams) MarshalJSON added in v0.2.0

func (r RoleReplaceParams) MarshalJSON() (data []byte, err error)

type RoleService added in v0.2.0

type RoleService struct {
	Options []option.RequestOption
}

RoleService contains methods and other services that help with interacting with the braintrust API.

Note, unlike clients, this service does not read variables from the environment automatically. You should not instantiate this service directly, and instead use the NewRoleService method instead.

func NewRoleService added in v0.2.0

func NewRoleService(opts ...option.RequestOption) (r *RoleService)

NewRoleService generates a new service that applies the given options to each request. These options are applied after the parent client's options (if there is one), and before any request-specific options.

func (*RoleService) Delete added in v0.2.0

func (r *RoleService) Delete(ctx context.Context, roleID string, opts ...option.RequestOption) (res *shared.Role, err error)

Delete a role object by its id

func (*RoleService) Get added in v0.2.0

func (r *RoleService) Get(ctx context.Context, roleID string, opts ...option.RequestOption) (res *shared.Role, err error)

Get a role object by its id

func (*RoleService) List added in v0.2.0

List out all roles. The roles are sorted by creation date, with the most recently-created roles coming first

func (*RoleService) ListAutoPaging added in v0.2.0

List out all roles. The roles are sorted by creation date, with the most recently-created roles coming first

func (*RoleService) New added in v0.2.0

func (r *RoleService) New(ctx context.Context, body RoleNewParams, opts ...option.RequestOption) (res *shared.Role, err error)

Create a new role. If there is an existing role with the same name as the one specified in the request, will return the existing role unmodified

func (*RoleService) Replace added in v0.2.0

func (r *RoleService) Replace(ctx context.Context, body RoleReplaceParams, opts ...option.RequestOption) (res *shared.Role, err error)

Create or replace role. If there is an existing role with the same name as the one specified in the request, will replace the existing role with the provided fields

func (*RoleService) Update added in v0.2.0

func (r *RoleService) Update(ctx context.Context, roleID string, body RoleUpdateParams, opts ...option.RequestOption) (res *shared.Role, err error)

Partially update a role 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.

type RoleUpdateParams added in v0.2.0

type RoleUpdateParams struct {
	PatchRole shared.PatchRoleParam `json:"patch_role,required"`
}

func (RoleUpdateParams) MarshalJSON added in v0.2.0

func (r RoleUpdateParams) MarshalJSON() (data []byte, err error)

type ScoreSummary added in v0.2.0

type ScoreSummary = shared.ScoreSummary

Summary of a score's performance

This is an alias to an internal type.

type SummarizeDatasetResponse added in v0.2.0

type SummarizeDatasetResponse = shared.SummarizeDatasetResponse

Summary of a dataset

This is an alias to an internal type.

type SummarizeExperimentResponse added in v0.2.0

type SummarizeExperimentResponse = shared.SummarizeExperimentResponse

Summary of an experiment

This is an alias to an internal type.

type TopLevelService

type TopLevelService struct {
	Options []option.RequestOption
}

TopLevelService contains methods and other services that help with interacting with the braintrust API.

Note, unlike clients, this service does not read variables from the environment automatically. You should not instantiate this service directly, and instead use the NewTopLevelService method instead.

func NewTopLevelService

func NewTopLevelService(opts ...option.RequestOption) (r *TopLevelService)

NewTopLevelService generates a new service that applies the given options to each request. These options are applied after the parent client's options (if there is one), and before any request-specific options.

func (*TopLevelService) HelloWorld

func (r *TopLevelService) HelloWorld(ctx context.Context, opts ...option.RequestOption) (res *string, err error)

Default endpoint. Simply replies with 'Hello, World!'. Authorization is not required

type User added in v0.2.0

type User = shared.User

This is an alias to an internal type.

type UserListParams added in v0.2.0

type UserListParams struct {
	// Email of the user to search for. You may pass the param multiple times to filter
	// for more than one email
	Email param.Field[UserListParamsEmailUnion] `query:"email"`
	// 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`
	EndingBefore param.Field[string] `query:"ending_before" format:"uuid"`
	// Family name of the user to search for. You may pass the param multiple times to
	// filter for more than one family name
	FamilyName param.Field[UserListParamsFamilyNameUnion] `query:"family_name"`
	// Given name of the user to search for. You may pass the param multiple times to
	// filter for more than one given name
	GivenName param.Field[UserListParamsGivenNameUnion] `query:"given_name"`
	// Filter search results to a particular set of object IDs. To specify a list of
	// IDs, include the query param multiple times
	IDs param.Field[UserListParamsIDsUnion] `query:"ids" format:"uuid"`
	// Limit the number of objects to return
	Limit param.Field[int64] `query:"limit"`
	// Filter search results to within a particular organization
	OrgName param.Field[string] `query:"org_name"`
	// 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`
	StartingAfter param.Field[string] `query:"starting_after" format:"uuid"`
}

func (UserListParams) URLQuery added in v0.2.0

func (r UserListParams) URLQuery() (v url.Values)

URLQuery serializes UserListParams's query parameters as `url.Values`.

type UserListParamsEmailArray added in v0.2.0

type UserListParamsEmailArray []string

func (UserListParamsEmailArray) ImplementsUserListParamsEmailUnion added in v0.2.0

func (r UserListParamsEmailArray) ImplementsUserListParamsEmailUnion()

type UserListParamsEmailUnion added in v0.2.0

type UserListParamsEmailUnion interface {
	ImplementsUserListParamsEmailUnion()
}

Email of the user to search for. You may pass the param multiple times to filter for more than one email

Satisfied by shared.UnionString, UserListParamsEmailArray.

type UserListParamsFamilyNameArray added in v0.2.0

type UserListParamsFamilyNameArray []string

func (UserListParamsFamilyNameArray) ImplementsUserListParamsFamilyNameUnion added in v0.2.0

func (r UserListParamsFamilyNameArray) ImplementsUserListParamsFamilyNameUnion()

type UserListParamsFamilyNameUnion added in v0.2.0

type UserListParamsFamilyNameUnion interface {
	ImplementsUserListParamsFamilyNameUnion()
}

Family name of the user to search for. You may pass the param multiple times to filter for more than one family name

Satisfied by shared.UnionString, UserListParamsFamilyNameArray.

type UserListParamsGivenNameArray added in v0.2.0

type UserListParamsGivenNameArray []string

func (UserListParamsGivenNameArray) ImplementsUserListParamsGivenNameUnion added in v0.2.0

func (r UserListParamsGivenNameArray) ImplementsUserListParamsGivenNameUnion()

type UserListParamsGivenNameUnion added in v0.2.0

type UserListParamsGivenNameUnion interface {
	ImplementsUserListParamsGivenNameUnion()
}

Given name of the user to search for. You may pass the param multiple times to filter for more than one given name

Satisfied by shared.UnionString, UserListParamsGivenNameArray.

type UserListParamsIDsArray added in v0.2.0

type UserListParamsIDsArray []string

func (UserListParamsIDsArray) ImplementsUserListParamsIDsUnion added in v0.2.0

func (r UserListParamsIDsArray) ImplementsUserListParamsIDsUnion()

type UserListParamsIDsUnion added in v0.2.0

type UserListParamsIDsUnion interface {
	ImplementsUserListParamsIDsUnion()
}

Filter search results to a particular set of object IDs. To specify a list of IDs, include the query param multiple times

Satisfied by shared.UnionString, UserListParamsIDsArray.

type UserService added in v0.2.0

type UserService struct {
	Options []option.RequestOption
}

UserService contains methods and other services that help with interacting with the braintrust API.

Note, unlike clients, this service does not read variables from the environment automatically. You should not instantiate this service directly, and instead use the NewUserService method instead.

func NewUserService added in v0.2.0

func NewUserService(opts ...option.RequestOption) (r *UserService)

NewUserService generates a new service that applies the given options to each request. These options are applied after the parent client's options (if there is one), and before any request-specific options.

func (*UserService) Get added in v0.2.0

func (r *UserService) Get(ctx context.Context, userID string, opts ...option.RequestOption) (res *shared.User, err error)

Get a user object by its id

func (*UserService) List added in v0.2.0

List out all users. The users are sorted by creation date, with the most recently-created users coming first

func (*UserService) ListAutoPaging added in v0.2.0

List out all users. The users are sorted by creation date, with the most recently-created users coming first

type View added in v0.2.0

type View = shared.View

This is an alias to an internal type.

type ViewData added in v0.2.0

type ViewData = shared.ViewData

The view definition

This is an alias to an internal type.

type ViewDataParam added in v0.2.0

type ViewDataParam = shared.ViewDataParam

The view definition

This is an alias to an internal type.

type ViewDataSearch added in v0.2.0

type ViewDataSearch = shared.ViewDataSearch

This is an alias to an internal type.

type ViewDataSearchParam added in v0.2.0

type ViewDataSearchParam = shared.ViewDataSearchParam

This is an alias to an internal type.

type ViewDeleteParams added in v0.2.0

type ViewDeleteParams struct {
	DeleteView shared.DeleteViewParam `json:"delete_view,required"`
}

func (ViewDeleteParams) MarshalJSON added in v0.2.0

func (r ViewDeleteParams) MarshalJSON() (data []byte, err error)

type ViewGetParams added in v0.2.0

type ViewGetParams struct {
	// The id of the object the ACL applies to
	ObjectID param.Field[string] `query:"object_id,required" format:"uuid"`
	// The object type that the ACL applies to
	ObjectType param.Field[ViewGetParamsObjectType] `query:"object_type,required"`
}

func (ViewGetParams) URLQuery added in v0.2.0

func (r ViewGetParams) URLQuery() (v url.Values)

URLQuery serializes ViewGetParams's query parameters as `url.Values`.

type ViewGetParamsObjectType added in v0.2.0

type ViewGetParamsObjectType string

The object type that the ACL applies to

const (
	ViewGetParamsObjectTypeOrganization  ViewGetParamsObjectType = "organization"
	ViewGetParamsObjectTypeProject       ViewGetParamsObjectType = "project"
	ViewGetParamsObjectTypeExperiment    ViewGetParamsObjectType = "experiment"
	ViewGetParamsObjectTypeDataset       ViewGetParamsObjectType = "dataset"
	ViewGetParamsObjectTypePrompt        ViewGetParamsObjectType = "prompt"
	ViewGetParamsObjectTypePromptSession ViewGetParamsObjectType = "prompt_session"
	ViewGetParamsObjectTypeGroup         ViewGetParamsObjectType = "group"
	ViewGetParamsObjectTypeRole          ViewGetParamsObjectType = "role"
	ViewGetParamsObjectTypeOrgMember     ViewGetParamsObjectType = "org_member"
	ViewGetParamsObjectTypeProjectLog    ViewGetParamsObjectType = "project_log"
	ViewGetParamsObjectTypeOrgProject    ViewGetParamsObjectType = "org_project"
)

func (ViewGetParamsObjectType) IsKnown added in v0.2.0

func (r ViewGetParamsObjectType) IsKnown() bool

type ViewListParams added in v0.2.0

type ViewListParams struct {
	// The id of the object the ACL applies to
	ObjectID param.Field[string] `query:"object_id,required" format:"uuid"`
	// The object type that the ACL applies to
	ObjectType param.Field[ViewListParamsObjectType] `query:"object_type,required"`
	// 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`
	EndingBefore param.Field[string] `query:"ending_before" format:"uuid"`
	// Filter search results to a particular set of object IDs. To specify a list of
	// IDs, include the query param multiple times
	IDs param.Field[ViewListParamsIDsUnion] `query:"ids" format:"uuid"`
	// Limit the number of objects to return
	Limit param.Field[int64] `query:"limit"`
	// 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`
	StartingAfter param.Field[string] `query:"starting_after" format:"uuid"`
	// Name of the view to search for
	ViewName param.Field[string] `query:"view_name"`
	// Type of table that the view corresponds to.
	ViewType param.Field[ViewListParamsViewType] `query:"view_type"`
}

func (ViewListParams) URLQuery added in v0.2.0

func (r ViewListParams) URLQuery() (v url.Values)

URLQuery serializes ViewListParams's query parameters as `url.Values`.

type ViewListParamsIDsArray added in v0.2.0

type ViewListParamsIDsArray []string

func (ViewListParamsIDsArray) ImplementsViewListParamsIDsUnion added in v0.2.0

func (r ViewListParamsIDsArray) ImplementsViewListParamsIDsUnion()

type ViewListParamsIDsUnion added in v0.2.0

type ViewListParamsIDsUnion interface {
	ImplementsViewListParamsIDsUnion()
}

Filter search results to a particular set of object IDs. To specify a list of IDs, include the query param multiple times

Satisfied by shared.UnionString, ViewListParamsIDsArray.

type ViewListParamsObjectType added in v0.2.0

type ViewListParamsObjectType string

The object type that the ACL applies to

const (
	ViewListParamsObjectTypeOrganization  ViewListParamsObjectType = "organization"
	ViewListParamsObjectTypeProject       ViewListParamsObjectType = "project"
	ViewListParamsObjectTypeExperiment    ViewListParamsObjectType = "experiment"
	ViewListParamsObjectTypeDataset       ViewListParamsObjectType = "dataset"
	ViewListParamsObjectTypePrompt        ViewListParamsObjectType = "prompt"
	ViewListParamsObjectTypePromptSession ViewListParamsObjectType = "prompt_session"
	ViewListParamsObjectTypeGroup         ViewListParamsObjectType = "group"
	ViewListParamsObjectTypeRole          ViewListParamsObjectType = "role"
	ViewListParamsObjectTypeOrgMember     ViewListParamsObjectType = "org_member"
	ViewListParamsObjectTypeProjectLog    ViewListParamsObjectType = "project_log"
	ViewListParamsObjectTypeOrgProject    ViewListParamsObjectType = "org_project"
)

func (ViewListParamsObjectType) IsKnown added in v0.2.0

func (r ViewListParamsObjectType) IsKnown() bool

type ViewListParamsViewType added in v0.2.0

type ViewListParamsViewType string

Type of table that the view corresponds to.

const (
	ViewListParamsViewTypeProjects    ViewListParamsViewType = "projects"
	ViewListParamsViewTypeLogs        ViewListParamsViewType = "logs"
	ViewListParamsViewTypeExperiments ViewListParamsViewType = "experiments"
	ViewListParamsViewTypeDatasets    ViewListParamsViewType = "datasets"
	ViewListParamsViewTypePrompts     ViewListParamsViewType = "prompts"
	ViewListParamsViewTypePlaygrounds ViewListParamsViewType = "playgrounds"
	ViewListParamsViewTypeExperiment  ViewListParamsViewType = "experiment"
	ViewListParamsViewTypeDataset     ViewListParamsViewType = "dataset"
)

func (ViewListParamsViewType) IsKnown added in v0.2.0

func (r ViewListParamsViewType) IsKnown() bool

type ViewNewParams added in v0.2.0

type ViewNewParams struct {
	CreateView shared.CreateViewParam `json:"create_view,required"`
}

func (ViewNewParams) MarshalJSON added in v0.2.0

func (r ViewNewParams) MarshalJSON() (data []byte, err error)

type ViewObjectType added in v0.2.0

type ViewObjectType = shared.ViewObjectType

The object type that the ACL applies to

This is an alias to an internal type.

type ViewOptions added in v0.2.0

type ViewOptions = shared.ViewOptions

Options for the view in the app

This is an alias to an internal type.

type ViewOptionsParam added in v0.2.0

type ViewOptionsParam = shared.ViewOptionsParam

Options for the view in the app

This is an alias to an internal type.

type ViewReplaceParams added in v0.2.0

type ViewReplaceParams struct {
	CreateView shared.CreateViewParam `json:"create_view,required"`
}

func (ViewReplaceParams) MarshalJSON added in v0.2.0

func (r ViewReplaceParams) MarshalJSON() (data []byte, err error)

type ViewService added in v0.2.0

type ViewService struct {
	Options []option.RequestOption
}

ViewService contains methods and other services that help with interacting with the braintrust API.

Note, unlike clients, this service does not read variables from the environment automatically. You should not instantiate this service directly, and instead use the NewViewService method instead.

func NewViewService added in v0.2.0

func NewViewService(opts ...option.RequestOption) (r *ViewService)

NewViewService generates a new service that applies the given options to each request. These options are applied after the parent client's options (if there is one), and before any request-specific options.

func (*ViewService) Delete added in v0.2.0

func (r *ViewService) Delete(ctx context.Context, viewID string, body ViewDeleteParams, opts ...option.RequestOption) (res *shared.View, err error)

Delete a view object by its id

func (*ViewService) Get added in v0.2.0

func (r *ViewService) Get(ctx context.Context, viewID string, query ViewGetParams, opts ...option.RequestOption) (res *shared.View, err error)

Get a view object by its id

func (*ViewService) List added in v0.2.0

List out all views. The views are sorted by creation date, with the most recently-created views coming first

func (*ViewService) ListAutoPaging added in v0.2.0

List out all views. The views are sorted by creation date, with the most recently-created views coming first

func (*ViewService) New added in v0.2.0

func (r *ViewService) New(ctx context.Context, body ViewNewParams, opts ...option.RequestOption) (res *shared.View, err error)

Create a new view. If there is an existing view with the same name as the one specified in the request, will return the existing view unmodified

func (*ViewService) Replace added in v0.2.0

func (r *ViewService) Replace(ctx context.Context, body ViewReplaceParams, opts ...option.RequestOption) (res *shared.View, err error)

Create or replace view. If there is an existing view with the same name as the one specified in the request, will replace the existing view with the provided fields

func (*ViewService) Update added in v0.2.0

func (r *ViewService) Update(ctx context.Context, viewID string, body ViewUpdateParams, opts ...option.RequestOption) (res *shared.View, err error)

Partially update a view 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.

type ViewUpdateParams added in v0.2.0

type ViewUpdateParams struct {
	PatchView shared.PatchViewParam `json:"patch_view,required"`
}

func (ViewUpdateParams) MarshalJSON added in v0.2.0

func (r ViewUpdateParams) MarshalJSON() (data []byte, err error)

type ViewViewType added in v0.2.0

type ViewViewType = shared.ViewViewType

Type of table that the view corresponds to.

This is an alias to an internal type.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL