> ## Documentation Index
> Fetch the complete documentation index at: https://docs.bagofwords.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Brocade Fabric OS

> Investigate Fibre Channel ports, optics, zoning, congestion and events on a SAN switch with read-only diagnostics

<Note>
  The Brocade Fabric OS connector is part of the **Enterprise Edition**, and ships as **beta**. It has been verified against a simulator on a 9.1.0b schema baseline, not yet against real hardware — see [What "beta" means here](#what-beta-means-here).
</Note>

Bag of words queries a Brocade SAN switch over its **Fabric OS REST API** so the agent can investigate Fibre Channel problems: port health, counters, optics, congestion, zoning and retained events, presented as tables.

Every vendor request is **explicitly allowlisted** and read-only, over a bounded REST path.

## What the catalog looks like

The default catalog is **12 primary investigation tables**. A further **156 tables** are available opt-in via **Include advanced diagnostic tables**.

| Table | What it holds |
| :- | :- |
| `switches` | Logical switch identity, firmware and fabric context. |
| `ports` | Current FC port state and configuration. Neighbors can be one-to-many. |
| `port_statistics` | Current port observations — rates and cumulative counters, not arbitrary history. |
| `transceivers` | Local and available peer optical readings. Power is in microwatts. |
| `connected_devices` | Observed FC registrations and attachments; WWPNs identify endpoints. |
| `fabric_links` | E/EX ports and observed switch neighbors, including down configured links. Does not infer routes. |
| `zones` | Zones per defined/effective state. |
| `zone_members` | Zone membership, preserving member syntax and peer-zone principal roles. |
| `health` | Component health assessments from MAPS. |
| `congestion_samples` | Retained port/minute observations for credit stall and oversubscription. |
| `events` | Retained RASLog and audit events. |
| `hardware` | Component observations — blades, fans, power supplies, sensors, WWN cards — distinguished by `component_type`. |

### Evidence columns

Every row carries provenance alongside the data, so a finding can be traced back to what was actually observed and when:

| Column | Meaning |
| :- | :- |
| `_bow_switch_wwn`, `_bow_vf_id` | Which switch and fabric the row came from. |
| `_bow_retrieved_at` | When the observation was read. |
| `_bow_source_url`, `_bow_source_resource` | The exact REST resource behind the row. |
| `_bow_firmware` | The switch firmware that served it. |
| `_bow_history_coverage`, `_bow_complete` | How much history the switch actually retained, and whether retrieval was complete. |

<Warning>
  Read the table semantics literally when drawing conclusions. A **defined** zone configuration does not prove active access — check the effective one. **Monitoring-paused is not no-congestion**, so an empty `congestion_samples` window is not evidence of a healthy fabric. And complete retrieval of `events` does not guarantee the switch retained the history you asked for — that is what `_bow_history_coverage` is for.
</Warning>

## Before you start

* A switch account with **read access to the required fabrics**.
* The switch's HTTPS management address, reachable from the Bag of words backend.
* If you run Virtual Fabrics, know which fabric IDs you care about. Every logical-switch query must specify a fabric ID.

## Fields

| Field | Required | Default | Notes |
| :- | :- | :- | :- |
| `url` | Yes | — | HTTPS management address of the switch. |
| `vf_ids` | No | *(blank)* | Comma-separated fabric IDs to restrict queries to. |
| `include_advanced` | No | `false` | Add the 156 advanced diagnostic tables to the 12 primary ones. |
| `login_scheme` | No | `Custom_Basic` | `Custom_Basic` or `Basic`, as supported by your switch. |
| `allow_http` | No | `false` | For a local simulator only — only loopback addresses are accepted over HTTP. |

## Authentication

**Username + Password — `userpass`** (scopes: system and user)

| Field | Required | Notes |
| :- | :- | :- |
| `username` | Yes | A switch account with read access to the required fabrics. |
| `password` | Yes | That account's password. |

Because the mode is available at user scope as well, each analyst can supply their own switch login instead of sharing one. Per-user authentication on a database-style connection requires an Enterprise license — see [Authentication and access](/data-sources/authentication).

## What "beta" means here

The connector bundles a **Fabric OS 9.1.0b YANG baseline**, reconciled at connect time against live module discovery on your switch. It has been verified against a simulator; compatibility with customer firmware (9.1.1c and beyond) still requires a real-hardware acceptance pass. Validate on a non-production fabric first, and treat field names as less stable than on a generally-available connector.

## Troubleshooting

<AccordionGroup>
  <Accordion title="Login fails against the switch">
    Switch the `login_scheme` between `Custom_Basic` and `Basic` — Fabric OS versions differ in which they accept.
  </Accordion>

  <Accordion title="A logical-switch query returns nothing">
    Every logical-switch query needs a fabric ID. Set `vf_ids` on the connection, or specify the fabric in the query.
  </Accordion>

  <Accordion title="A diagnostic table you expected is missing">
    It is probably one of the 156 advanced tables. Turn on **Include advanced diagnostic tables** and re-index.
  </Accordion>

  <Accordion title="A table is empty but the fabric clearly has activity">
    Check `_bow_history_coverage` and `_bow_complete` on neighbouring rows. Retention on the switch, or paused monitoring, is the usual explanation — not absence of the condition.
  </Accordion>
</AccordionGroup>

## Related

* [NetApp ONTAP](/data-sources/connectors/netapp-ontap) — the storage behind the fabric.
* [VMware Aria Operations](/data-sources/connectors/aria-operations) — the vSphere estate in front of it.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.