Claude Platform Docs

Aggiungi workspace all'account di servizio

client.Organization.ServiceAccounts.Workspaces.Add(ctx, serviceAccountID, body) (*ServiceAccountWorkspaceMember, error)
POST/v1/organizations/service_accounts/{service_account_id}/workspaces

Richiede un token di accesso OAuth con lo scope org:admin, ottenuto da ant auth login --scope org:admin o da una regola di workload identity federation; le chiavi Admin API non sono accettate. Consulta Gestire WIF con l'Admin API.

Aggiungi un account di servizio a un workspace con il workspace_role specificato.

Speculare a POST /workspaces/{workspace_id}/service_accounts, ma indirizzato dal lato dell'account di servizio; entrambi creano la stessa appartenenza. Se l'account di servizio è già membro esplicito del workspace, il suo workspace_role viene sostituito con il valore fornito qui. I workspace archiviati restituiscono 400. Gli account di servizio archiviati non possono essere aggiunti e vengono rifiutati.

Parameters
serviceAccountID string⁠Path parameter

ID of the service account.

body OrganizationServiceAccountWorkspaceAddParams
WorkspaceID string

Tagged workspace ID to add the service account to.

WorkspaceRole NoBillingWorkspaceRole

Role to assign to the service account in this workspace.

Returns
type ServiceAccountWorkspaceMember struct { Type: "service_account_workspace_member"; CreatedByActorID; Implicit; /* 3 more */ }
Type ServiceAccountWorkspaceMember
defaultservice_account_workspace_member
CreatedByActorID 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.

ServiceAccountID string

Tagged service account ID (svac_...).

WorkspaceID string

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:
const WorkspaceRoleWorkspaceAdmin WorkspaceRole = "workspace_admin"
const WorkspaceRoleWorkspaceBilling WorkspaceRole = "workspace_billing"
const WorkspaceRoleWorkspaceDeveloper WorkspaceRole = "workspace_developer"
const WorkspaceRoleWorkspaceRestrictedDeveloper WorkspaceRole = "workspace_restricted_developer"
const WorkspaceRoleWorkspaceUser WorkspaceRole = "workspace_user"
Aggiungi workspace all'account di servizio
package main

import (
	"context"
	"fmt"

	"github.com/anthropics/anthropic-sdk-go"
	"github.com/anthropics/anthropic-sdk-go/option"
)

func main() {
	client := anthropic.NewClient(
		option.WithAPIKey("my-anthropic-api-key"),
	)
	serviceAccountWorkspaceMember, err := client.Organization.ServiceAccounts.Workspaces.Add(
		context.TODO(),
		"service_account_id",
		anthropic.OrganizationServiceAccountWorkspaceAddParams{
			WorkspaceID:   "workspace_id",
			WorkspaceRole: anthropic.NoBillingWorkspaceRoleWorkspaceAdmin,
		},
	)
	if err != nil {
		panic(err.Error())
	}
	fmt.Printf("%+v\n", serviceAccountWorkspaceMember.CreatedByActorID)
}
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"
}