Claude Platform Docs

Adicionar workspace à conta de serviço

ServiceAccountWorkspaceMember organization().serviceAccounts().workspaces().add(params, requestOptions = RequestOptions.none())
POST/v1/organizations/service_accounts/{service_account_id}/workspaces

Requer um token de acesso OAuth com o escopo org:admin, obtido via ant auth login --scope org:admin ou uma regra de federação de identidade de workload; chaves de Admin API não são aceitas. Consulte Gerenciar WIF com a Admin API.

Adicione uma conta de serviço a um workspace com o workspace_role informado.

Espelho de POST /workspaces/{workspace_id}/service_accounts, acessado a partir da conta de serviço; ambos criam a mesma associação. Se a conta de serviço já for membro explícito do workspace, seu workspace_role é substituído pelo valor fornecido aqui. Workspaces arquivados retornam 400. Contas de serviço arquivadas não podem ser adicionadas e são rejeitadas.

Parameters
WorkspaceAddParams params
Optional<String> serviceAccountId⁠Path parameter

ID of the service account.

String workspaceId

Tagged workspace ID to add the service account to.

NoBillingWorkspaceRole workspaceRole

Role to assign to the service account in this workspace.

Returns
class ServiceAccountWorkspaceMember { type = "service_account_workspace_member"; createdByActorId; implicit; /* 3 more */ }
JsonValue type = "service_account_workspace_member"
Optional<String> createdByActorId

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

Optional<Boolean> 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.

String serviceAccountId

Tagged service account ID (svac_...).

String workspaceId

Tagged workspace ID (wrkspc_...).

WorkspaceRole workspaceRole

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

One of the following:
WORKSPACE_ADMIN("workspace_admin")
WORKSPACE_BILLING("workspace_billing")
WORKSPACE_DEVELOPER("workspace_developer")
WORKSPACE_RESTRICTED_DEVELOPER("workspace_restricted_developer")
WORKSPACE_USER("workspace_user")
Adicionar workspace à conta de serviço
package com.anthropic.example;

import com.anthropic.client.AnthropicClient;
import com.anthropic.client.okhttp.AnthropicOkHttpClient;
import com.anthropic.models.organization.serviceaccounts.ServiceAccountWorkspaceMember;
import com.anthropic.models.organization.serviceaccounts.workspaces.WorkspaceAddParams;
import com.anthropic.models.organization.workspaces.NoBillingWorkspaceRole;

public final class Main {
    private Main() {}

    public static void main(String[] args) {
        AnthropicClient client = AnthropicOkHttpClient.fromEnv();

        WorkspaceAddParams params = WorkspaceAddParams.builder()
            .serviceAccountId("service_account_id")
            .workspaceId("workspace_id")
            .workspaceRole(NoBillingWorkspaceRole.WORKSPACE_ADMIN)
            .build();
        ServiceAccountWorkspaceMember serviceAccountWorkspaceMember = client.organization().serviceAccounts().workspaces().add(params);
    }
}
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"
}