---
title: "Update Expected Switch"
method: PATCH
path: "/v2/org/{org}/nico/expected-switch/{expectedSwitchId}"
tags: ["Expected Switch"]
---

# Update Expected Switch

`PATCH /v2/org/{org}/nico/expected-switch/{expectedSwitchId}`

Update an existing Expected Switch by ID.

Org must have an Infrastructure Provider entity. User must have authorization role with `PROVIDER_ADMIN` suffix.

Infrastructure Provider must own the Expected Switch.

Alternatively, Tenant Admins with `TargetedInstanceCreation` capability can also update Expected Switches if they have an account with the Site's Infrastructure Provider.

## Request body

- ExpectedSwitchUpdateRequest — Request data to update an existing Expected Switch. Note: BMC and NvOS credentials (username/password) are only accepted during creation and updates but are not returned in responses.
  - `id` string, uuid, nullable — ID of the Expected Switch to update (ignored for single update, used for identification in batch operations).
  - `bmcMacAddress` string, nullable — Immutable MAC address of the Expected Switch's BMC (Baseboard Management Controller). Omit this field when updating. A formatting-equivalent value is accepted for compatibility and preserves the originally stored spelling, but changing the physical MAC address is rejected with HTTP 400.
  - `defaultBmcUsername` string, nullable — Username for accessing the Expected Switch's BMC
  - `defaultBmcPassword` string, nullable — Password for accessing the Expected Switch's BMC
  - `switchSerialNumber` string, nullable — Serial number of the Expected Switch
  - `nvOsUsername` string, nullable — NvOS username for the Expected Switch
  - `nvOsPassword` string, nullable — NvOS password for the Expected Switch
  - `nvosMacAddresses` string[] — MAC addresses of the Expected Switch's NvOS management interfaces
  - `rackId` string, nullable — Optional rack identifier for this component
  - `bmcIpAddress` string, nullable — Optional BMC IP address (IPv4 or IPv6). When set, pre-allocates a reserved IP for the BMC.
  - `name` string, nullable — Display name for this component
  - `manufacturer` string, nullable — Manufacturer of this component
  - `model` string, nullable — Model of this component
  - `description` string, nullable — Description of this component
  - `slotId` integer, nullable — Slot ID within the rack
  - `trayIdx` integer, nullable — Tray index within the rack
  - `hostId` integer, nullable — Host ID within the tray
  - `labels` Labels

## Response `200`

OK

- ExpectedSwitch — An Expected Switch represents a network switch that is expected to be discovered at a site, with hardware identifiers and metadata. Note: BMC and NvOS credentials (username/password) are only accepted during creation and updates but are not returned in responses.
  - `id` string, uuid — Unique identifier for the Expected Switch
  - `siteId` string, uuid — ID of the site the Expected Switch belongs to
  - `bmcMacAddress` string — MAC address of the Expected Switch's BMC (Baseboard Management Controller)
  - `switchSerialNumber` string — Serial number of the Expected Switch
  - `nvosMacAddresses` string[] — MAC addresses of the Expected Switch's NvOS management interfaces
  - `rackId` string, nullable — Optional rack identifier for this component
  - `bmcIpAddress` string, nullable — Optional BMC IP address (IPv4 or IPv6). When set, pre-allocates a reserved IP for the BMC.
  - `name` string, nullable — Display name for this component
  - `manufacturer` string, nullable — Manufacturer of this component
  - `model` string, nullable — Model of this component
  - `description` string, nullable — Description of this component
  - `slotId` integer, nullable — Slot ID within the rack
  - `trayIdx` integer, nullable — Tray index within the rack
  - `hostId` integer, nullable — Host ID within the tray
  - `labels` Labels
  - `created` string, date-time — ISO 8601 datetime when the Expected Switch was created
  - `updated` string, date-time — ISO 8601 datetime when the Expected Switch was last updated

## Other responses

- `400` — Error response when request data cannot be validated
- `403` — Error response when user is not authorized to call an endpoint or retrieve/modify objects
- `404` — Error response when requested object is not found

## Changes

- **2026-08-06** `f0ad4bb53366` — 1 info
  - request property `bmcMacAddress` deprecated
- **2026-07-08** `4e5a9b0a5b4d` — 2 info
  - added the new optional request property `nvosMacAddresses`
  - added the optional property `nvosMacAddresses` to the response with the `200` status
- **2026-06-12** `dd4898480788` — 2 warning
  - removed the request property `firmwareVersion`
  - removed the optional property `firmwareVersion` from the response with the `200` status

[Change history](https://skmtc.dev/nvidia/apis/nvidia-infra-controller-rest-api/changes/v2/org/:org/nico/expected-switch/:expectedSwitchId/patch.md)

---

[API](https://skmtc.dev/nvidia/apis/nvidia-infra-controller-rest-api.md) · [All operations](https://skmtc.dev/nvidia/apis/nvidia-infra-controller-rest-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/nvidia/nvidia-infra-controller-rest-api/revisions/2096eb1db2c1/schema)
