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またはワークロードアイデンティティフェデレーションルールから取得します。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"
}