Skip to content
Go to Boltz API

API Keys

API keys authenticate requests to the Boltz API. There are two key types: admin keys have full access to all management and compute operations across the organization, while workspace keys are scoped to a single workspace and can only perform compute operations (predictions, protein design, small molecule design) within that workspace. Keys can be created in live or test mode. Test keys (prefixed sk_bc_*_test_) create test-mode resources with synthetic data and no GPU cost. Every resource includes a livemode field indicating its mode.

Create a workspace API key
admin.api_keys.create(APIKeyCreateParams**kwargs) -> APIKeyCreateResponse
POST/compute/v1/admin/api-keys
List API keys
admin.api_keys.list(APIKeyListParams**kwargs) -> SyncCursorPage[APIKeyListResponse]
GET/compute/v1/admin/api-keys
Revoke an API key
admin.api_keys.revoke(strapi_key_id) -> APIKeyRevokeResponse
POST/compute/v1/admin/api-keys/{api_key_id}/revoke
ModelsExpand Collapse
class APIKeyCreateResponse:
key: str

The full API key. This is only shown once — store it securely.

key_details: KeyDetails
id: str

API key ID

allowed_ips: List[str]

IP addresses allowed to use this key. An empty array means all IPs are allowed.

created_at: datetime
formatdate-time
expires_at: Optional[datetime]

When the key expires. Null if the key does not expire.

formatdate-time
is_active: bool
key_prefix: str

First 12 characters of the key

key_type: Literal["workspace"]
last_used_at: Optional[datetime]
formatdate-time
livemode: bool

Whether this is a live API key (false for test keys).

name: str

API key name

workspace_id: str

Workspace this key is scoped to

class APIKeyListResponse:
id: str

API key ID

allowed_ips: List[str]

IP addresses allowed to use this key. An empty array means all IPs are allowed.

created_at: datetime
formatdate-time
expires_at: Optional[datetime]

When the key expires. Null if the key does not expire.

formatdate-time
is_active: bool
key_prefix: str

First 12 characters of the key

key_type: Literal["admin", "workspace"]
One of the following:
"admin"
"workspace"
last_used_at: Optional[datetime]
formatdate-time
livemode: bool

Whether this is a live API key (false for test keys).

name: str

API key name

workspace_id: Optional[str]

Workspace ID if workspace-scoped

class APIKeyRevokeResponse:
id: str

API key ID

allowed_ips: List[str]

IP addresses allowed to use this key. An empty array means all IPs are allowed.

created_at: datetime
formatdate-time
expires_at: Optional[datetime]

When the key expires. Null if the key does not expire.

formatdate-time
is_active: bool
key_prefix: str

First 12 characters of the key

key_type: Literal["admin", "workspace"]
One of the following:
"admin"
"workspace"
last_used_at: Optional[datetime]
formatdate-time
livemode: bool

Whether this is a live API key (false for test keys).

name: str

API key name

workspace_id: Optional[str]

Workspace ID if workspace-scoped