Claude Platform Docs

API Keys

List API Keys
organization.api_keys.list(**kwargs) -> SyncPage[APIKey]
GET/v1/organizations/api_keys
Retrieve API Key (Admin API)
organization.api_keys.retrieve(api_key_id) -> APIKey
GET/v1/organizations/api_keys/{api_key_id}

Retrieve information about a single API key in your organization, looked up by its ID. This Admin API endpoint requires an Admin API key, is intended for programmatic key management, and never returns the key's secret value. To view or create your own API keys, go to API keys in the Claude Console.

Update API Key
organization.api_keys.update(api_key_id, **kwargs) -> APIKey
POST/v1/organizations/api_keys/{api_key_id}
Models
class APIKey: type: "api_key"; id; created_at; ... # 7 more
class APIKeyCreatedBy: type; id
type: Literal["service_account", "user"]

Type of the actor that created the object.

One of the following:
"service_account"
"user"
id: str

ID of the actor that created the object.

class APIKeyOrganizationScope: type: "organization"
type: Literal["organization"]

Scope type. Always "organization": the API key has no Workspace. Only a principal-bound API key can have this scope.

defaultorganization
class APIKeyServiceAccountActor: type: "service_account_actor"; service_account_id
type: Literal["service_account_actor"]

Principal type. Always "service_account_actor" for a Service Account.

defaultservice_account_actor
service_account_id: str

ID of the Service Account the API key acts as.

class APIKeyUserActor: type: "user_actor"; user_id
type: Literal["user_actor"]

Principal type. Always "user_actor" for a User.

defaultuser_actor
user_id: str

ID of the User the API key acts as.

class APIKeyWorkspaceScope: type: "workspace"; workspace_id
type: Literal["workspace"]

Scope type. Always "workspace": the API key belongs to one Workspace.

defaultworkspace
workspace_id: str

ID of the Workspace the API key belongs to. Unlike the deprecated top-level workspace_id, this is the Workspace's real ID even for the organization's default Workspace.