Claude Platform Docs

Delete Service Account Workspace Member

$client->organization->workspaces->serviceAccounts->remove(string serviceAccountID, string workspaceID): ServiceAccountRemoveResponse
DELETE/v1/organizations/workspaces/{workspace_id}/service_accounts/{service_account_id}

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.

Remove a service account from a workspace.

Removal is idempotent (returns 200 even if the membership was already removed). A DELETE against the implicit default-workspace membership returns 200 but is a no-op and the membership persists; deleting an explicit default-workspace row reverts to the implicit workspace_user membership. Archived workspaces return 400.

Parameters
workspaceID: string⁠Path parameter

ID of the workspace.

serviceAccountID: string⁠Path parameter

ID of the service account.

Returns
class ServiceAccountRemoveResponse { $type = 'service_account_workspace_member_deleted'; $serviceAccountID; $workspaceID; }
"service_account_workspace_member_deleted" type
string serviceAccountID

Tagged service account ID (svac_...) named in the delete request. Removal is idempotent; see the endpoint description for the implicit-membership no-op.

string workspaceID

Tagged workspace ID (wrkspc_...) named in the delete request.

Delete Service Account Workspace Member
<?php

require_once dirname(__DIR__) . '/vendor/autoload.php';

use Anthropic\Client;

$client = new Client(apiKey: 'my-anthropic-api-key');

$serviceAccount = $client->organization->workspaces->serviceAccounts->remove(
  'service_account_id', workspaceID: 'workspace_id'
);

var_dump($serviceAccount);
Returns Examples
Response 200
{
  "service_account_id": "service_account_id",
  "type": "service_account_workspace_member_deleted",
  "workspace_id": "workspace_id"
}