Claude Platform Docs

List Workspaces For Service Account

organization.service_accounts.workspaces.list(service_account_id, **kwargs) -> PageCursor<ServiceAccountWorkspaceMember>
GET/v1/organizations/service_accounts/{service_account_id}/workspaces

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.

List the workspaces a service account is a member of.

Each entry includes the service account's workspace_role in that workspace. Use limit and the next_page cursor to paginate. When the service account has no explicit default-workspace membership, the implicit (implicit: true) membership is returned as the first entry on the first page; with limit=1 the first page may return up to 2 entries (the implicit entry plus one explicit membership) so a pagination cursor can be derived. Memberships are returned only while the service account is active. Without a page cursor, an archived service account returns an empty list. A page cursor that does not match an active membership returns a 400 invalid-request error. A cursor stops matching when the membership is removed, the workspace is deleted, or the service account is archived. Restart pagination from the first page to recover.

Parameters
service_account_id: String⁠Path parameter

ID of the service account.

limit: Integer⁠Query parameter

Number of results per page.

minimum1
maximum100
page: String⁠Query parameter

Opaque cursor from a previous response's next_page.

Returns
class ServiceAccountWorkspaceMember { type: :service_account_workspace_member, created_by_actor_id, implicit, 3 more }
type: :service_account_workspace_member
created_by_actor_id: String

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

implicit: 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: String

Tagged service account ID (svac_...).

workspace_id: String

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
List Workspaces For Service Account
require "anthropic"

anthropic = Anthropic::Client.new(api_key: "my-anthropic-api-key")

page = anthropic.organization.service_accounts.workspaces.list("service_account_id")

puts(page)
Returns Examples
Response 200
{
  "data": [
    {
      "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"
    }
  ],
  "next_page": "next_page"
}