Claude Platform Docs

서비스 계정 워크스페이스 멤버 생성

ServiceAccountWorkspaceMember Organization.Workspaces.ServiceAccounts.Add(parameters, cancellationToken = default)
POST/v1/organizations/workspaces/{workspace_id}/service_accounts

org:admin 범위가 있는 OAuth 액세스 토큰이 필요합니다. 이 토큰은 ant auth login --scope org:admin 또는 워크로드 ID 페더레이션 규칙에서 얻을 수 있으며, Admin API 키는 허용되지 않습니다. Admin API로 WIF 관리를 참조하세요.

지정된 workspace_role로 서비스 계정을 워크스페이스에 추가합니다.

역할은 서비스 계정이 워크스페이스에서 수행할 수 있는 작업과 페더레이션을 통해 인증할 때 부여받을 수 있는 워크스페이스 범위 권한을 결정합니다. 모든 서비스 계정은 이미 기본 워크스페이스의 암묵적 workspace_user 멤버이며, 명시적으로 추가하면 선택한 역할이 할당됩니다. 서비스 계정이 이미 워크스페이스의 명시적 멤버인 경우, 해당 workspace_role이 여기에 제공된 값으로 대체됩니다. 보관된 워크스페이스는 400을 반환합니다. 보관된 서비스 계정은 추가할 수 없으며 거부됩니다.

Parameters
ServiceAccountAddParams parameters
required string workspaceID⁠Path parameter

ID of the workspace.

required string serviceAccountID

Tagged service account ID to add.

required NoBillingWorkspaceRole workspaceRole

Role to assign to the service account in this workspace.

Returns
class ServiceAccountWorkspaceMember { Type = "service_account_workspace_member"; CreatedByActorID; Implicit; /* 3 more */ }
JsonElement Type = "service_account_workspace_member"
required string? CreatedByActorID

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

required bool? Implicit

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.

required string ServiceAccountID

Tagged service account ID (svac_...).

required string WorkspaceID

Tagged workspace ID (wrkspc_...).

required WorkspaceRole WorkspaceRole

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

One of the following:
WorkspaceAdmin("workspace_admin")
WorkspaceBilling("workspace_billing")
WorkspaceDeveloper("workspace_developer")
WorkspaceRestrictedDeveloper("workspace_restricted_developer")
WorkspaceUser("workspace_user")
서비스 계정 워크스페이스 멤버 생성
using System;
using Anthropic.Models.Organization.Workspaces;
using Anthropic.Models.Organization.Workspaces.ServiceAccounts;

ServiceAccountAddParams parameters = new()
{
    WorkspaceID = "workspace_id",
    ServiceAccountID = "service_account_id",
    WorkspaceRole = NoBillingWorkspaceRole.WorkspaceAdmin,
};

var serviceAccountWorkspaceMember = await client.Organization.Workspaces.ServiceAccounts.Add(parameters);

Console.WriteLine(serviceAccountWorkspaceMember);
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"
}