---
title: Add Federation Rule Workspace
url: https://platform.claude.com/docs/en/api/java/organization/federation/rules/workspaces/add
---

# Add Federation Rule Workspace

`FederationRuleWorkspace organization().federation().rules().workspaces().add(params, requestOptions = RequestOptions.none())`

**POST** `/v1/organizations/federation_rules/{federation_rule_id}/workspaces`

**Requires an OAuth access token with the `org:admin` scope**, from `ant auth login --scope org:admin` or a workload identity federation rule; Admin API keys are not accepted. See [Manage WIF with the Admin API](https://platform.claude.com/docs/en/manage-claude/wif-admin-api?sdk_languages=java).

Enable a federation rule for a workspace.

Idempotent; re-enabling returns the existing enablement. The rule and
workspace must both belong to your organization. Membership of the
rule's target service account in this workspace is not checked at
enablement: token exchange into this workspace is rejected unless the
target is a member (it is implicitly a member of the default workspace).
Archived rules are rejected with 400. OAuth callers may only manage rules
whose `oauth_scope` is `workspace:developer` or `workspace:inference`;
other scopes require a Console session.

## Parameters

- `WorkspaceAddParams params`

  - `Optional<String> federationRuleId` (path parameter)

    ID of the federation rule.

  - `String workspaceId`

    Tagged ID of the workspace to enable this rule for.

## Returns

- `class FederationRuleWorkspace`

  - `JsonValue type = "federation_rule_workspace"`

  - `LocalDateTime createdAt`

    When this workspace was enabled for the rule.

    format: date-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.

## Example

```java
package com.anthropic.example;

import com.anthropic.client.AnthropicClient;
import com.anthropic.client.okhttp.AnthropicOkHttpClient;
import com.anthropic.models.organization.federation.rules.FederationRuleWorkspace;
import com.anthropic.models.organization.federation.rules.workspaces.WorkspaceAddParams;

public final class Main {
    private Main() {}

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

        WorkspaceAddParams params = WorkspaceAddParams.builder()
            .federationRuleId("federation_rule_id")
            .workspaceId("workspace_id")
            .build();
        FederationRuleWorkspace federationRuleWorkspace = client.organization().federation().rules().workspaces().add(params);
    }
}
```

### Response (200)

```json
{
  "created_at": "2024-10-30T23:58:27.427722Z",
  "created_by_actor_id": "created_by_actor_id",
  "federation_rule_id": "federation_rule_id",
  "type": "federation_rule_workspace",
  "workspace_id": "workspace_id",
  "workspace_name": "workspace_name"
}
```
