Claude Platform Docs

Service-Account erstellen

ServiceAccount organization().serviceAccounts().create(params, requestOptions = RequestOptions.none())
POST/v1/organizations/service_accounts

Erfordert ein OAuth-Zugriffstoken mit dem Scope org:admin, über ant auth login --scope org:admin oder eine Workload-Identity-Federation-Regel; Admin-API-Keys werden nicht akzeptiert. Siehe WIF mit der Admin API verwalten.

Erstellt einen Service-Account.

Ein Service-Account ist eine benannte Workload-Identität, auf die Federation-Regeln abzielen. organization_role ist developer (Standard) oder admin; eine Regel darf nur dann erstellt oder neu ausgerichtet werden, um den Scope org:admin zu gewähren, wenn die organization_role des Ziels admin ist. Das Erstellen eines Service-Accounts mit der Rolle admin erfordert eine interaktive Anmeldeinformation (ein Benutzer-OAuth-Token oder eine Console-Sitzung) – ein Workload darf nur Service-Accounts mit der Rolle developer erstellen.

Parameters
ServiceAccountCreateParams params
String name

Slug identifier (lowercase, digits, hyphens). Unique within the organization; a duplicate name returns 409.

minLength1
maxLength255
Optional<String> description

Optional free-text description.

maxLength2000
Optional<OrganizationRole> organizationRole

Org-level role. Defaults to developer.

ADMIN("admin")
DEVELOPER("developer")
Returns
class ServiceAccount { type = "service_account"; id; archivedAt; /* 8 more */ }

Named non-human identity within the caller's organization.

A service account is a pure identity: name + org. Authorization lives on whatever references it (federation rules).

Service-Account erstellen
package com.anthropic.example;

import com.anthropic.client.AnthropicClient;
import com.anthropic.client.okhttp.AnthropicOkHttpClient;
import com.anthropic.models.organization.serviceaccounts.ServiceAccount;
import com.anthropic.models.organization.serviceaccounts.ServiceAccountCreateParams;

public final class Main {
    private Main() {}

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

        ServiceAccountCreateParams params = ServiceAccountCreateParams.builder()
            .name("ci-deploy-bot")
            .build();
        ServiceAccount serviceAccount = client.organization().serviceAccounts().create(params);
    }
}
Returns Examples
Response 200
{
  "id": "svac_01SDCCSbTxrXDpWc1phhtcfK",
  "archived_at": "2019-12-27T18:11:19.117Z",
  "archived_by_actor_id": "archived_by_actor_id",
  "created_at": "2024-10-30T23:58:27.427722Z",
  "created_by_actor_id": "created_by_actor_id",
  "description": "description",
  "name": "ci-deploy-bot",
  "organization_role": "admin",
  "type": "service_account",
  "updated_at": "2024-10-30T23:58:27.427722Z",
  "updated_by_actor_id": "updated_by_actor_id"
}