Claude Platform Docs

Create Service Account Workspace Member

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

Requires an OAuth access token with the org:admin scope, from ant auth login --scope org:admin or a workload identity federation rule; Admin API keys are not accepted. See Manage WIF with the Admin API.

Add a service account to a workspace with the given workspace_role.

The role determines what the service account can do in the workspace and which workspace-scoped permissions it can be granted when authenticating through federation. Every service account is already an implicit workspace_user member of the default workspace; adding it explicitly assigns a chosen role. If the service account is already an explicit member of the workspace, its workspace_role is replaced with the value supplied here. Archived workspaces return 400. Archived service accounts cannot be added and are rejected.

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")
Create Service Account Workspace Member
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"
}