Claude Platform Docs

Créer un compte de service membre d'un espace de travail

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

Nécessite un jeton d'accès OAuth avec la portée org:admin, obtenu via ant auth login --scope org:admin ou une règle de workload identity federation (fédération d'identité de charge de travail) ; les clés Admin API ne sont pas acceptées. Consultez Gérer WIF avec l'Admin API.

Ajoutez un compte de service à un espace de travail avec le workspace_role indiqué.

Le rôle détermine ce que le compte de service peut faire dans l'espace de travail et quelles autorisations limitées à l'espace de travail peuvent lui être accordées lors de l'authentification via la fédération. Chaque compte de service est déjà membre implicite workspace_user de l'espace de travail par défaut ; l'ajouter explicitement lui attribue un rôle choisi. Si le compte de service est déjà membre explicite de l'espace de travail, son workspace_role est remplacé par la valeur fournie ici. Les espaces de travail archivés renvoient 400. Les comptes de service archivés ne peuvent pas être ajoutés et sont rejetés.

Parameters
ServiceAccountAddParams params
Optional<String> workspaceId⁠Path parameter

ID of the workspace.

String serviceAccountId

Tagged service account ID to add.

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")
Créer un compte de service membre d'un espace de travail
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.workspaces.NoBillingWorkspaceRole;
import com.anthropic.models.organization.workspaces.serviceaccounts.ServiceAccountAddParams;

public final class Main {
    private Main() {}

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

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