Claude Platform Docs

Créer un compte de service membre d'un espace de travail

organization.workspaces.service_accounts.add(workspace_id, **kwargs) -> ServiceAccountWorkspaceMember
POST/v1/organizations/workspaces/{workspace_id}/service_accounts

Nécessite un jeton d'accès OAuth avec la portée org:admin, obtenu via ant auth login --scope org:admin ou une règle de workload identity federation (fédération d'identité de charge de travail) ; les clés Admin API ne sont pas acceptées. Consultez Gérer WIF avec l'Admin API.

Ajoutez un compte de service à un espace de travail avec le workspace_role indiqué.

Le rôle détermine ce que le compte de service peut faire dans l'espace de travail et quelles autorisations limitées à l'espace de travail peuvent lui être accordées lors de l'authentification via la fédération. Chaque compte de service est déjà membre implicite workspace_user de l'espace de travail par défaut ; l'ajouter explicitement lui attribue un rôle choisi. Si le compte de service est déjà membre explicite de l'espace de travail, son workspace_role est remplacé par la valeur fournie ici. Les espaces de travail archivés renvoient 400. Les comptes de service archivés ne peuvent pas être ajoutés et sont rejetés.

Parameters
workspace_id: str⁠Path parameter

ID of the workspace.

service_account_id: str

Tagged service account ID to add.

workspace_role: NoBillingWorkspaceRole

Role to assign to the service account in this workspace.

One of the following:
"workspace_admin"
"workspace_developer"
"workspace_restricted_developer"
"workspace_user"
Returns
class ServiceAccountWorkspaceMember: type: "service_account_workspace_member"; created_by_actor_id; implicit; ... # 3 more
type: Literal["service_account_workspace_member"]
defaultservice_account_workspace_member
created_by_actor_id: Optional[str]

Tagged ID (user_.../svac_...) of the actor who created this membership.

implicit: Optional[bool]

True when this is the implicit default-workspace membership every service account has when no explicit membership exists. Implicit memberships have role workspace_user and cannot be removed.

service_account_id: str

Tagged service account ID (svac_...).

workspace_id: str

Tagged workspace ID (wrkspc_...).

workspace_role: WorkspaceRole

Role of the service account in this workspace. Service accounts cannot hold the workspace_billing role.

One of the following:
"workspace_admin"
"workspace_billing"
"workspace_developer"
"workspace_restricted_developer"
"workspace_user"
Créer un compte de service membre d'un espace de travail
import os
from anthropic import Anthropic

client = Anthropic(
    api_key=os.environ.get(
        "ANTHROPIC_API_KEY"
    ),  # This is the default and can be omitted
)
service_account_workspace_member = client.organization.workspaces.service_accounts.add(
    workspace_id="workspace_id",
    service_account_id="service_account_id",
    workspace_role="workspace_admin",
)
print(service_account_workspace_member.created_by_actor_id)
Returns Examples
Response 200
{
  "created_by_actor_id": "created_by_actor_id",
  "implicit": true,
  "service_account_id": "service_account_id",
  "type": "service_account_workspace_member",
  "workspace_id": "workspace_id",
  "workspace_role": "workspace_admin"
}