Claude Platform Docs

規則

建立聯合規則
BetaFederationRule beta().organization().federation().rules().create(params, requestOptions = RequestOptions.none())
POST/v1/organizations/federation_rules

需要具有 org:admin 範圍的 OAuth 存取權杖,可透過 ant auth login --scope org:admin 或工作負載身分聯合(workload identity federation)規則取得;不接受 Admin API 金鑰。請參閱使用 Admin API 管理 WIF。

列出聯合規則
RuleListPage beta().organization().federation().rules().list(params = RuleListParams.none(), requestOptions = RequestOptions.none())
GET/v1/organizations/federation_rules

需要具有 org:admin 範圍的 OAuth 存取權杖,可透過 ant auth login --scope org:admin 或工作負載身分聯合(workload identity federation)規則取得;不接受 Admin API 金鑰。請參閱使用 Admin API 管理 WIF。

取得聯合規則
BetaFederationRule beta().organization().federation().rules().retrieve(params = RuleRetrieveParams.none(), requestOptions = RequestOptions.none())
GET/v1/organizations/federation_rules/{federation_rule_id}

需要具有 org:admin 範圍的 OAuth 存取權杖,可透過 ant auth login --scope org:admin 或工作負載身分聯合(workload identity federation)規則取得;不接受 Admin API 金鑰。請參閱使用 Admin API 管理 WIF。

更新聯合規則
BetaFederationRule beta().organization().federation().rules().update(params = RuleUpdateParams.none(), requestOptions = RequestOptions.none())
POST/v1/organizations/federation_rules/{federation_rule_id}

需要具有 org:admin 範圍的 OAuth 存取權杖,可透過 ant auth login --scope org:admin 或工作負載身分聯合(workload identity federation)規則取得;不接受 Admin API 金鑰。請參閱使用 Admin API 管理 WIF。

封存聯合規則
BetaFederationRule beta().organization().federation().rules().archive(params = RuleArchiveParams.none(), requestOptions = RequestOptions.none())
POST/v1/organizations/federation_rules/{federation_rule_id}/archive

需要具有 org:admin 範圍的 OAuth 存取權杖,可透過 ant auth login --scope org:admin 或工作負載身分聯合(workload identity federation)規則取得;不接受 Admin API 金鑰。請參閱使用 Admin API 管理 WIF。

Models
class BetaFederationRule { type = "federation_rule"; id; appliesToAllWorkspaces; /* 17 more */ }

Authorization rule binding an external OIDC identity to Anthropic.

Evaluates the match conditions and mints an OAuth access token for the resolved target, scoped to a single workspace where the rule is enabled (chosen by the caller at exchange time when the rule is enabled for more than one). For rules enabled via workspace_ids or applies_to_all_workspaces, the target service account must be a member of that workspace (it is implicitly a member of the default workspace); rules carrying only the legacy workspace_id binding do not enforce this.

class BetaFederationRuleMatch { audience; claims; condition; subjectPrefix; }

Does the incoming JWT qualify?

All populated fields must pass; omitted fields are skipped. At least one of subject_prefix (other than a wildcard-only value like *), claims, or condition is required; audience alone is not sufficient.

Optional<String> audience

Exact match against the aud claim (any element if array). When omitted, the JWT's aud must still equal Anthropic's expected audience for the issuer; setting this field overrides that default.

maxLength1024
Optional<Claims> claims

Exact-match {claim: value} pairs against top-level claims. Only string-valued claims can be matched; use condition for non-string claims.

Optional<String> condition

CEL expression over claims for logic the structural fields can't express. Must evaluate to a boolean and may reference only the claims variable; a constant-true expression (such as true) is rejected with 400.

maxLength4096
Optional<String> subjectPrefix

Match the verified JWT sub claim. Exact match unless the value ends with *, in which case it is a prefix match. Example: repo:my-org/my-repo:ref:refs/heads/main.

maxLength1024
class BetaFederationRuleWorkspace { type = "federation_rule_workspace"; createdAt; createdByActorId; /* 3 more */ }
JsonValue type = "federation_rule_workspace"
LocalDateTime createdAt

When this workspace was enabled for the rule.

formatdate-time
Optional<String> createdByActorId

Tagged ID (user_... or svac_...) of the actor that enabled this workspace for the rule, if known.

String federationRuleId

Tagged ID of the federation rule.

String workspaceId

Tagged ID of the workspace this rule is enabled for.

Optional<String> workspaceName

Workspace display name. Populated when listing; null in the enable response.

class BetaServiceAccountTarget { type = "service_account"; serviceAccountId; serviceAccountName; }

Bind to a fixed service account by ID.

JsonValue type = "service_account"
String serviceAccountId

Tagged ID of the service account to mint tokens for.

Optional<String> serviceAccountName

Service account's display name at read time. Ignored on writes.

規則工作區

新增聯合規則工作區
BetaFederationRuleWorkspace beta().organization().federation().rules().workspaces().add(params, requestOptions = RequestOptions.none())
POST/v1/organizations/federation_rules/{federation_rule_id}/workspaces

需要具有 org:admin 範圍的 OAuth 存取權杖,可透過 ant auth login --scope org:admin 或工作負載身分聯合(workload identity federation)規則取得;不接受 Admin API 金鑰。請參閱使用 Admin API 管理 WIF。

列出聯合規則工作區
WorkspaceListPage beta().organization().federation().rules().workspaces().list(params = WorkspaceListParams.none(), requestOptions = RequestOptions.none())
GET/v1/organizations/federation_rules/{federation_rule_id}/workspaces

需要具有 org:admin 範圍的 OAuth 存取權杖,可透過 ant auth login --scope org:admin 或工作負載身分聯合(workload identity federation)規則取得;不接受 Admin API 金鑰。請參閱使用 Admin API 管理 WIF。

移除聯合規則工作區
WorkspaceRemoveResponse beta().organization().federation().rules().workspaces().remove(params, requestOptions = RequestOptions.none())
DELETE/v1/organizations/federation_rules/{federation_rule_id}/workspaces/{workspace_id}

需要具有 org:admin 範圍的 OAuth 存取權杖,可透過 ant auth login --scope org:admin 或工作負載身分聯合(workload identity federation)規則取得;不接受 Admin API 金鑰。請參閱使用 Admin API 管理 WIF。