Reference/API/Organizations
GET
/v1/organization

List organizations

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

/v1/organization

The Authorization access token

Authorization

Authorization
Required
Bearer <token>

Most Braintrust endpoints are authenticated by providing your API key as a header Authorization: Bearer [api_key] to your HTTP request. You can create an API key in the Braintrust organization settings page.

In: header

Query Parameters

limitinteger | null

Limit the number of objects to return

Minimum: 0

starting_afterstring

Pagination cursor id.

For example, if the final item in the last page you fetched had an id of foo, pass starting_after=foo to fetch the next page. Note: you may only pass one of starting_after and ending_before

Format: "uuid"

ending_beforestring

Pagination cursor id.

For example, if the initial item in the last page you fetched had an id of foo, pass ending_before=foo to fetch the previous page. Note: you may only pass one of starting_after and ending_before

Format: "uuid"

idsAny properties in string, array<string>

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

org_namestring

Filter search results to within a particular organization

curl -X GET "https://api.braintrust.dev/v1/organization?limit=0&starting_after=497f6eca-6276-4993-bfeb-53cbbbba6f08&ending_before=497f6eca-6276-4993-bfeb-53cbbbba6f08&ids=497f6eca-6276-4993-bfeb-53cbbbba6f08&org_name=string" \
  -H "Authorization: Bearer <token>"

Returns a list of organization objects

{
  "objects": [
    {
      "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
      "name": "string",
      "api_url": "string",
      "is_universal_api": true,
      "proxy_url": "string",
      "realtime_url": "string",
      "created": "2019-08-24T14:15:22Z"
    }
  ]
}

GET
/v1/organization/{organization_id}

Get organization

Get an organization object by its id

/v1/organization/{organization_id}

The Authorization access token

Authorization

Authorization
Required
Bearer <token>

Most Braintrust endpoints are authenticated by providing your API key as a header Authorization: Bearer [api_key] to your HTTP request. You can create an API key in the Braintrust organization settings page.

In: header

Path Parameters

organization_id
Required
string

Organization id

Format: "uuid"
curl -X GET "https://api.braintrust.dev/v1/organization/497f6eca-6276-4993-bfeb-53cbbbba6f08" \
  -H "Authorization: Bearer <token>"

Returns the organization object

{
  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  "name": "string",
  "api_url": "string",
  "is_universal_api": true,
  "proxy_url": "string",
  "realtime_url": "string",
  "created": "2019-08-24T14:15:22Z"
}

PATCH
/v1/organization/{organization_id}

Partially update organization

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

/v1/organization/{organization_id}

The Authorization access token

Authorization

Authorization
Required
Bearer <token>

Most Braintrust endpoints are authenticated by providing your API key as a header Authorization: Bearer [api_key] to your HTTP request. You can create an API key in the Braintrust organization settings page.

In: header

Request Body

application/jsonOptional

Fields to update

namestring | null

Name of the organization

api_urlstring | null

is_universal_apiboolean | null

proxy_urlstring | null

realtime_urlstring | null

Path Parameters

organization_id
Required
string

Organization id

Format: "uuid"
curl -X PATCH "https://api.braintrust.dev/v1/organization/497f6eca-6276-4993-bfeb-53cbbbba6f08" \
  -H "Authorization: Bearer <token>" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "string",
    "api_url": "string",
    "is_universal_api": true,
    "proxy_url": "string",
    "realtime_url": "string"
  }'

Returns the organization object

{
  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  "name": "string",
  "api_url": "string",
  "is_universal_api": true,
  "proxy_url": "string",
  "realtime_url": "string",
  "created": "2019-08-24T14:15:22Z"
}

DELETE
/v1/organization/{organization_id}

Delete organization

Delete an organization object by its id

/v1/organization/{organization_id}

The Authorization access token

Authorization

Authorization
Required
Bearer <token>

Most Braintrust endpoints are authenticated by providing your API key as a header Authorization: Bearer [api_key] to your HTTP request. You can create an API key in the Braintrust organization settings page.

In: header

Path Parameters

organization_id
Required
string

Organization id

Format: "uuid"
curl -X DELETE "https://api.braintrust.dev/v1/organization/497f6eca-6276-4993-bfeb-53cbbbba6f08" \
  -H "Authorization: Bearer <token>"

Returns the deleted organization object

{
  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  "name": "string",
  "api_url": "string",
  "is_universal_api": true,
  "proxy_url": "string",
  "realtime_url": "string",
  "created": "2019-08-24T14:15:22Z"
}

PATCH
/v1/organization/members

Modify organization membership

Modify organization membership

/v1/organization/members

The Authorization access token

Authorization

Authorization
Required
Bearer <token>

Most Braintrust endpoints are authenticated by providing your API key as a header Authorization: Bearer [api_key] to your HTTP request. You can create an API key in the Braintrust organization settings page.

In: header

Request Body

application/jsonOptional

Members to add/remove

invite_usersobject | null

Users to invite to the organization

remove_usersobject | null

Users to remove from the organization

org_namestring | null

For nearly all users, this parameter should be unnecessary. But in the rare case that your API key belongs to multiple organizations, or in case you want to explicitly assert the organization you are modifying, you may specify the name of the organization.

org_idstring | null

For nearly all users, this parameter should be unnecessary. But in the rare case that your API key belongs to multiple organizations, or in case you want to explicitly assert the organization you are modifying, you may specify the id of the organization.

curl -X PATCH "https://api.braintrust.dev/v1/organization/members" \
  -H "Authorization: Bearer <token>" \
  -H "Content-Type: application/json" \
  -d '{
    "invite_users": {
      "ids": [
        "497f6eca-6276-4993-bfeb-53cbbbba6f08"
      ],
      "emails": [
        "string"
      ],
      "send_invite_emails": true,
      "group_ids": [
        "497f6eca-6276-4993-bfeb-53cbbbba6f08"
      ],
      "group_names": [
        "string"
      ],
      "group_id": "306db4e0-7449-4501-b76f-075576fe2d8f",
      "group_name": "string"
    },
    "remove_users": {
      "ids": [
        "497f6eca-6276-4993-bfeb-53cbbbba6f08"
      ],
      "emails": [
        "string"
      ]
    },
    "org_name": "string",
    "org_id": "string"
  }'

A success status

{
  "status": "success",
  "org_id": "string",
  "send_email_error": "string"
}

On this page