Claude Platform Docs

Federation-Issuer erstellen

FederationIssuer organization().federation().issuers().create(params, requestOptions = RequestOptions.none())
POST/v1/organizations/federation_issuers

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.

Registriert einen OIDC-Issuer, dem Anthropic für die Workload Identity Federation in deiner Organisation vertraut.

Das Feld jwks steuert, wie die Signaturschlüssel des Issuers bezogen werden, und nimmt eine von drei Formen an, die über type ausgewählt werden: discovery (Schlüssel über OIDC Discovery auflösen), explicit_url (Schlüssel von einer festen JWKS-URL abrufen) oder inline (einen statischen Schlüsselsatz bereitstellen). Wenn jwks.type discovery ist und kein discovery_base gesetzt ist, muss die Issuer-URL öffentlich über HTTPS erreichbar sein, damit Anthropic das Discovery-Dokument abrufen kann; in den Modi explicit_url und inline wird die Issuer-URL nur mit dem iss-Claim des JWT abgeglichen und nicht abgerufen.

Parameters
IssuerCreateParams params
String issuerUrl

The iss claim value to match against.

minLength1
String name

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

minLength1
maxLength255
Optional<Boolean> checkJti

Whether the jwt-bearer exchange enforces JTI single-use (replay protection) for tokens from this issuer. Defaults to true. Applies only to assertions carrying a jti claim; tokens without one are accepted without single-use enforcement.

Optional<Jwks> jwks

How signing keys are obtained. Defaults to OIDC discovery.

class JwksDiscovery { type = "discovery"; caCertPem; discoveryBase; }

JWKS via the issuer's OIDC discovery document.

JsonValue type = "discovery"
Optional<String> caCertPem

Optional custom CA (PEM) for TLS verification of the JWKS fetch.

maxLength8192
Optional<String> discoveryBase

Set when the discovery URL differs from issuer_url.

class JwksExplicitUrl { type = "explicit_url"; url; caCertPem; }

JWKS fetched from a fixed endpoint.

JsonValue type = "explicit_url"
String url

JWKS endpoint.

minLength1
Optional<String> caCertPem

Optional custom CA (PEM) for TLS verification of the JWKS fetch.

maxLength8192
class JwksInline { type = "inline"; keys; }

JWKS supplied directly; no network fetch.

JsonValue type = "inline"
List<Key> keys

Inline JWK objects.

minItems1
Optional<Long> maxJwtLifetimeSeconds

Maximum allowed iat→exp spread for assertions from this issuer (1-176400 seconds, i.e. up to 49h). Defaults to 3600 (1h). Assertions must carry both iat and exp; a missing iat is rejected.

minimum1
maximum176400
Returns
class FederationIssuer { type = "federation_issuer"; id; archivedAt; /* 12 more */ }

Registered external OIDC identity provider.

Records an external IdP the organization trusts for the RFC 7523 jwt-bearer grant. The issuer_url must match the JWT iss claim exactly.

Federation-Issuer erstellen
package com.anthropic.example;

import com.anthropic.client.AnthropicClient;
import com.anthropic.client.okhttp.AnthropicOkHttpClient;
import com.anthropic.models.organization.federation.issuers.FederationIssuer;
import com.anthropic.models.organization.federation.issuers.IssuerCreateParams;

public final class Main {
    private Main() {}

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

        IssuerCreateParams params = IssuerCreateParams.builder()
            .issuerUrl("x")
            .name("x")
            .build();
        FederationIssuer federationIssuer = client.organization().federation().issuers().create(params);
    }
}
Returns Examples
Response 200
{
  "id": "fdis_01SDCCSbTxrXDpWc1phhtcfK",
  "archived_at": "2019-12-27T18:11:19.117Z",
  "archived_by_actor_id": "archived_by_actor_id",
  "check_jti": true,
  "created_at": "2024-10-30T23:58:27.427722Z",
  "created_by_actor_id": "created_by_actor_id",
  "issuer_url": "https://token.actions.githubusercontent.com",
  "jwks": {
    "type": "discovery",
    "ca_cert_pem": "ca_cert_pem",
    "discovery_base": "discovery_base"
  },
  "jwks_polling_disabled_at": "2019-12-27T18:11:19.117Z",
  "max_jwt_lifetime_seconds": 0,
  "name": "github-actions",
  "poll_status": {
    "consecutive_failures": 0,
    "last_fetched_at": "2019-12-27T18:11:19.117Z",
    "next_poll_at": "2019-12-27T18:11:19.117Z"
  },
  "type": "federation_issuer",
  "updated_at": "2024-10-30T23:58:27.427722Z",
  "updated_by_actor_id": "updated_by_actor_id"
}