Skip to main content
POST
/
v1
/
api_key
Create api_key
curl --request POST \
  --url https://api.braintrust.dev/v1/api_key \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{
  "name": "<string>",
  "org_name": "<string>"
}'
{
  "id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
  "created": "2023-11-07T05:31:56Z",
  "name": "<string>",
  "preview_name": "<string>",
  "user_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
  "user_email": "<string>",
  "user_given_name": "<string>",
  "user_family_name": "<string>",
  "org_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
  "key": "<string>"
}

Authorizations

Authorization
string
header
required

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.

Body

application/json

Any desired information about the new api_key object

name
string
required

Name of the api key. Does not have to be unique

org_name
string | null

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.

Response

Returns an object containing the raw API key. This is the only time the raw API key will be exposed

id
string<uuid>
required

Unique identifier for the api key

name
string
required

Name of the api key

preview_name
string
required
key
string
required

The raw API key. It will only be exposed this one time

created
string<date-time> | null

Date of api key creation

user_id
string<uuid> | null

Unique identifier for the user

user_email
string | null

The user's email

user_given_name
string | null

Given name of the user

user_family_name
string | null

Family name of the user

org_id
string<uuid> | null

Unique identifier for the organization