Braintrust Environments API
The Environments API from Braintrust — 2 operation(s) for environments.
The Environments API from Braintrust — 2 operation(s) for environments.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/braintrust-environments-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
openapi: 3.1.1
info:
version: 1.0.0
title: Braintrust Acls Environments API
description: 'API specification for the backend data server. The API is hosted globally at
https://api.braintrust.dev or in your own environment.
You can access the OpenAPI spec for this API at https://github.com/braintrustdata/braintrust-openapi.'
license:
name: Apache 2.0
servers:
- url: https://api.braintrust.dev
security:
- bearerAuth: []
- {}
tags:
- name: Environments
paths:
/environment:
get:
operationId: listEnvironments
summary: List environments
description: List out all environments. The environments are sorted by creation date, with the most recently-created environments first.
tags:
- Environments
security:
- bearerAuth: []
- {}
parameters:
- schema:
anyOf:
- type: string
format: uuid
- type: array
items:
type: string
format: uuid
minItems: 1
description: Filter by environment IDs. Supports a single ID or multiple values.
required: false
name: ids
in: query
- schema:
type: string
required: false
name: name
in: query
- $ref: '#/components/parameters/OrgName'
responses:
'200':
description: List of environments
content:
application/json:
schema:
type: object
properties:
objects:
type: array
items:
$ref: '#/components/schemas/Environment'
required:
- objects
'400':
description: The request was unacceptable, often due to missing a required parameter
content:
text/plain:
schema:
type: string
application/json:
schema:
nullable: true
'401':
description: No valid API key provided
content:
text/plain:
schema:
type: string
application/json:
schema:
nullable: true
'403':
description: The API key doesn’t have permissions to perform the request
content:
text/plain:
schema:
type: string
application/json:
schema:
nullable: true
'429':
description: Too many requests hit the API too quickly. We recommend an exponential backoff of your requests
headers:
Retry-After:
schema:
type: string
content:
text/plain:
schema:
type: string
application/json:
schema:
nullable: true
'500':
description: Something went wrong on Braintrust's end. (These are rare.)
content:
text/plain:
schema:
type: string
application/json:
schema:
nullable: true
post:
operationId: createEnvironment
summary: Create environment
description: Create a new environment
tags:
- Environments
security:
- bearerAuth: []
- {}
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/CreateEnvironment'
responses:
'200':
description: Created environment
content:
application/json:
schema:
$ref: '#/components/schemas/Environment'
'400':
description: The request was unacceptable, often due to missing a required parameter
content:
text/plain:
schema:
type: string
application/json:
schema:
nullable: true
'401':
description: No valid API key provided
content:
text/plain:
schema:
type: string
application/json:
schema:
nullable: true
'403':
description: The API key doesn’t have permissions to perform the request
content:
text/plain:
schema:
type: string
application/json:
schema:
nullable: true
'429':
description: Too many requests hit the API too quickly. We recommend an exponential backoff of your requests
headers:
Retry-After:
schema:
type: string
content:
text/plain:
schema:
type: string
application/json:
schema:
nullable: true
'500':
description: Something went wrong on Braintrust's end. (These are rare.)
content:
text/plain:
schema:
type: string
application/json:
schema:
nullable: true
/environment/{environment_id}:
get:
operationId: getEnvironment
summary: Get environment
tags:
- Environments
security:
- bearerAuth: []
- {}
parameters:
- schema:
type: string
format: uuid
required: true
name: environment_id
in: path
responses:
'200':
description: Environment object
content:
application/json:
schema:
$ref: '#/components/schemas/Environment'
'400':
description: The request was unacceptable, often due to missing a required parameter
content:
text/plain:
schema:
type: string
application/json:
schema:
nullable: true
'401':
description: No valid API key provided
content:
text/plain:
schema:
type: string
application/json:
schema:
nullable: true
'403':
description: The API key doesn’t have permissions to perform the request
content:
text/plain:
schema:
type: string
application/json:
schema:
nullable: true
'429':
description: Too many requests hit the API too quickly. We recommend an exponential backoff of your requests
headers:
Retry-After:
schema:
type: string
content:
text/plain:
schema:
type: string
application/json:
schema:
nullable: true
'500':
description: Something went wrong on Braintrust's end. (These are rare.)
content:
text/plain:
schema:
type: string
application/json:
schema:
nullable: true
patch:
operationId: updateEnvironment
summary: Partially update environment
tags:
- Environments
security:
- bearerAuth: []
- {}
parameters:
- schema:
type: string
format: uuid
required: true
name: environment_id
in: path
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/PatchEnvironment'
responses:
'200':
description: Updated environment
content:
application/json:
schema:
$ref: '#/components/schemas/Environment'
'400':
description: The request was unacceptable, often due to missing a required parameter
content:
text/plain:
schema:
type: string
application/json:
schema:
nullable: true
'401':
description: No valid API key provided
content:
text/plain:
schema:
type: string
application/json:
schema:
nullable: true
'403':
description: The API key doesn’t have permissions to perform the request
content:
text/plain:
schema:
type: string
application/json:
schema:
nullable: true
'429':
description: Too many requests hit the API too quickly. We recommend an exponential backoff of your requests
headers:
Retry-After:
schema:
type: string
content:
text/plain:
schema:
type: string
application/json:
schema:
nullable: true
'500':
description: Something went wrong on Braintrust's end. (These are rare.)
content:
text/plain:
schema:
type: string
application/json:
schema:
nullable: true
delete:
operationId: deleteEnvironment
summary: Delete environment
tags:
- Environments
security:
- bearerAuth: []
- {}
parameters:
- schema:
type: string
format: uuid
required: true
name: environment_id
in: path
responses:
'200':
description: Deleted environment
content:
application/json:
schema:
$ref: '#/components/schemas/Environment'
'400':
description: The request was unacceptable, often due to missing a required parameter
content:
text/plain:
schema:
type: string
application/json:
schema:
nullable: true
'401':
description: No valid API key provided
content:
text/plain:
schema:
type: string
application/json:
schema:
nullable: true
'403':
description: The API key doesn’t have permissions to perform the request
content:
text/plain:
schema:
type: string
application/json:
schema:
nullable: true
'429':
description: Too many requests hit the API too quickly. We recommend an exponential backoff of your requests
headers:
Retry-After:
schema:
type: string
content:
text/plain:
schema:
type: string
application/json:
schema:
nullable: true
'500':
description: Something went wrong on Braintrust's end. (These are rare.)
content:
text/plain:
schema:
type: string
application/json:
schema:
nullable: true
components:
schemas:
CreateEnvironment:
type: object
properties:
name:
type: string
description: Name of the environment
slug:
type: string
description: A url-friendly, unique identifier for the environment within an organization
description:
type: string
nullable: true
description: Textual description of the environment
org_name:
type: string
nullable: true
description: 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 environment belongs in.
required:
- name
- slug
OrgName:
type: string
description: Filter search results to within a particular organization
Environment:
type: object
properties:
id:
type: string
format: uuid
description: Unique identifier for the environment
org_id:
type: string
format: uuid
description: Unique identifier for the organization that the environment belongs under
name:
type: string
description: Name of the environment
slug:
type: string
description: A url-friendly, unique identifier for the environment within an organization
description:
type: string
nullable: true
description: Textual description of the environment
created:
type: string
nullable: true
format: date-time
description: Date of environment creation
deleted_at:
type: string
nullable: true
format: date-time
description: Date of environment deletion, or null if the environment is still active
required:
- id
- org_id
- name
- slug
PatchEnvironment:
type: object
properties:
name:
type: string
nullable: true
description: Name of the environment
slug:
type: string
nullable: true
description: A url-friendly, unique identifier for the environment within an organization
description:
type: string
nullable: true
description: Textual description of the environment
parameters:
OrgName:
schema:
$ref: '#/components/schemas/OrgName'
required: false
description: Filter search results to within a particular organization
name: org_name
in: query
allowReserved: true
securitySchemes:
bearerAuth:
type: http
scheme: bearer
bearerFormat: API key or JWT
description: '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](https://www.braintrustdata.com/app/settings?subroute=api-keys).'