/fabric-capacity-list — List Available Fabric Capacities
Status: preview. F2 Fabric workspace lifecycle suite, 2026-05-28. Source pattern from
distributions/demo-claude/.../local/_run_migration_dev.py(workspace provisioning preflight).
What it does
Lists Fabric capacities visible to the current identity, with id + state +
SKU. Pre-flight for /fabric-workspace-create — you need a capacity id to
assign the new workspace to a capacity (without one the workspace lands on
the default "trial" capacity, which has different limits).
When to use
- Before
/fabric-workspace-createwhen you don't know the target capacity id - Auditing what capacities the current identity has access to
- Verifying a capacity is in
Activestate before assigning workloads
Prerequisites
FabricConnectorcredentials configured (config/credentials.yaml)az loginor service principal credentials in scope- The identity needs at least Reader on the capacity to see it
Usage
/fabric-capacity-list # all capacities visible
/fabric-capacity-list --filter Active # only Active capacities
/fabric-capacity-list --json # raw JSON output
Pipeline summary
- Load project + credentials
- Build
FabricConnectorfrom credentials - Call
connector.client.list_capacities()(GET/v1/capacities) - Render as a table:
id | displayName | sku | state | region - Filter / format per flags
- ops.log:
CAPACITY-LIST | - | - | n capacities returned | ok
Example output
id displayName sku state region
6f8b3c44-... DemoCapacity F2 Active westeurope
a1b2c3d4-... TrialCapacity FT1 Active eastus
Preview tracking — known unknowns
- State terminology: Fabric returns
Active,Paused,Suspended,Deleting. V1 surfaces them verbatim; future may add hint text ("Paused = workspace creation will fail"). - Region filtering: not exposed in V1. Caller filters output manually if needed.
- Trial capacities: appear in the list with SKU prefix
FT*. Not labelled specifically — caller infers.
Status — promotion to stable
- 3+ uses across different identities (different
az loginaccounts) with identical structured output. - At least 1 case where the listing prevented a bad capacity assignment
(caught a
Pausedor wrong-region capacity before create). - No silent failures on permission errors (403 surfaced clearly).
ARGUMENTS: $ARGUMENTS