> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.nvidia.com/switch-infrastructure/config-manager/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.nvidia.com/switch-infrastructure/config-manager/_mcp/server.

# InfiniBand PKey Member Update

Reconciles a PKey's membership to a declarative list. The submitted list is treated as the desired complete state — current members not in the list are removed, and missing members are added. The UI labels this as "Replace PKey Membership".

For pure additions, use [IB PKey Member Add](/switch-infrastructure/config-manager/services/temporal/workflows/ib-pkey-member-add). For pure removals, use [IB PKey Member Delete](/switch-infrastructure/config-manager/services/temporal/workflows/ib-pkey-member-delete). Use Update only when you want the PKey to match an exact set.

When the computed diff contains any removals, the workflow pauses at `validate_diff` and waits for approval. Additions-only runs auto-approve. Rejection aborts cleanly without modifying Nautobot or UFM.

## User Interface

### Form Inputs

| Field               | Description                                                                  | Required                                  |
| :------------------ | :--------------------------------------------------------------------------- | :---------------------------------------- |
| **UFM Host**        | Nautobot device name of the UFM server that owns the PKey                    | Yes                                       |
| **PKey**            | Partition key whose membership is being reconciled                           | Yes                                       |
| **Membership Type** | `full` or `limited`, applied to any newly added members. Defaults to `full`. | Yes                                       |
| **Member Source**   | `By Interfaces` or `By GUIDs`                                                | Yes                                       |
| **Interfaces**      | Desired complete list of device + interface rows                             | When **Member Source** is `By Interfaces` |
| **GUIDs**           | Desired complete list of `0x` + 16 hex GUIDs                                 | When **Member Source** is `By GUIDs`      |

![InfiniBand PKey Member Update workflow form](https://files.buildwithfern.com/config-manager.docs.buildwithfern.com/switch-infrastructure/config-manager/bcb80bd05d239c1ec0eac701b4a1e0b583104cf34be1caecc733cdaab949468a/_dot_dot_/assets/images/workflows/ibpkeymemberupdateworkflow-form.png)

## Workflow Execution

### Execution Stages

1. Resolve site, overlay, and canonical PKey from Nautobot
2. Resolve desired interfaces to IB GUIDs
3. Fetch current `OverlayAssignments` from Nautobot and compute the diff
4. Review the diff — approval required when members are being removed
5. Sync `OverlayAssignment` records in Nautobot
6. Remove stale GUIDs and add new GUIDs on UFM
7. Verify final UFM membership matches the desired set