Expected Switch

Update Expected Switch

Changed on

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.

patch/v2/org/{org}/nico/expected-switch/{expectedSwitchId}

Request

  • Base URL
    https://nico-rest-api.nico.svc.cluster.local
  • URL
    https://nico-rest-api.nico.svc.cluster.local/v2/org/{org}/nico/expected-switch/{expectedSwitchId}
  • Auth
    HTTP bearer

Request body

idstring uuid nullable

ID of the Expected Switch to update.

For single updates, omit id or set it to null to use the ID from the URL path. A non-null body id must match the URL ID and use lowercase, hyphenated UUID format. Otherwise, REST returns HTTP 400.

bmcMacAddressstring 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.

defaultBmcUsernamestring nullable

Username for accessing the Expected Switch's BMC (no API length limit; the BMC's username policy still applies). Omission or null preserves the value. A non-empty value can be supplied without defaultBmcPassword.

defaultBmcPasswordstring nullable

Password for accessing the Expected Switch's BMC (up to 255 characters; the BMC's password policy still applies). Omission or null preserves the value. A non-empty value can be supplied without defaultBmcUsername.

switchSerialNumberstring nullable

Serial number of the Expected Switch

nvOsUsernamestring nullable

NvOS username for the Expected Switch. Omission or null preserves the value. A non-empty value can be supplied without nvOsPassword. Provide both fields when setting NVOS credentials for the first time.

nvOsPasswordstring nullable

NvOS password for the Expected Switch. Omission or null preserves the value. A non-empty value can be supplied without nvOsUsername. Provide both fields when setting NVOS credentials for the first time.

nvosMacAddressesstring[]

Deprecated and ignored. Omitted, null, empty, and nonempty values all leave stored ports and primary selection unchanged. Use nvosInterfaces to replace ports. Supplying both fields is allowed; only nvosInterfaces takes effect.

rackIdstring nullable

Optional rack identifier for this component

bmcIpAddressstring nullable

Optional BMC IP address (IPv4 or IPv6). A non-empty address sets the value and pre-allocates a reserved IP for the BMC. An empty string clears the value. Omission or null preserves the current value. It must not be unspecified, multicast, or IPv4 limited broadcast.

namestring nullable

Display name for this component

manufacturerstring nullable

Manufacturer of this component

modelstring nullable

Model of this component

descriptionstring nullable

Description of this component

slotIdinteger nullable

Slot ID within the rack

trayIdxinteger nullable

Tray index within the rack

hostIdinteger nullable

Host ID within the tray

labelsLabels

Label keys must not be empty or whitespace-only. Keys and values may contain at most 255 characters and must not contain the Unicode NUL character (U+0000). Empty values are allowed.

Example request

{
  "defaultBmcUsername": "newadmin",
  "defaultBmcPassword": "newpassword123",
  "switchSerialNumber": "SWITCH-54321",
  "nvOsUsername": "newnvadmin",
  "nvOsPassword": "newnvpassword123",
  "nvosInterfaces": [
    {
      "macAddress": "00:1A:2B:3C:4D:62",
      "isPrimary": true
    },
    {
      "macAddress": "00:1A:2B:3C:4D:63",
      "isPrimary": false
    }
  ],
  "rackId": "rack-02",
  "manufacturer": "NVIDIA",
  "labels": {
    "environment": "staging",
    "rack": "B2"
  }
}

Response

OK

idstring uuid

Unique identifier for the Expected Switch

siteIdstring uuid

ID of the site the Expected Switch belongs to

bmcMacAddressstring

MAC address of the Expected Switch's BMC (Baseboard Management Controller)

switchSerialNumberstring

Serial number of the Expected Switch

nvosMacAddressesstring[]

Deprecated flat NVOS MAC list retained for v2 compatibility. Use nvosInterfaces. Responses emit both fields, and this array contains the same MACs in the same order as nvosInterfaces.

rackIdstring nullable

Optional rack identifier for this component

bmcIpAddressstring nullable

Optional BMC IP address (IPv4 or IPv6). When set, pre-allocates a reserved IP for the BMC.

namestring nullable

Display name for this component

manufacturerstring nullable

Manufacturer of this component

modelstring nullable

Model of this component

descriptionstring nullable

Description of this component

slotIdinteger nullable

Slot ID within the rack

trayIdxinteger nullable

Tray index within the rack

hostIdinteger nullable

Host ID within the tray

labelsLabels

Label keys must not be empty or whitespace-only. Keys and values may contain at most 255 characters and must not contain the Unicode NUL character (U+0000). Empty values are allowed.

createdstring date-time

ISO 8601 datetime when the Expected Switch was created

updatedstring date-time

ISO 8601 datetime when the Expected Switch was last updated

Example response

{
  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  "siteId": "f97df110-f4de-492e-8849-4a6af68026b0",
  "bmcMacAddress": "00:1A:2B:3C:4D:5E",
  "bmcIpAddress": "192.168.1.100",
  "switchSerialNumber": "SWITCH-12345",
  "nvosInterfaces": [
    {
      "macAddress": "00:1A:2B:3C:4D:60",
      "isPrimary": true
    },
    {
      "macAddress": "00:1A:2B:3C:4D:61",
      "isPrimary": false
    }
  ],
  "nvosMacAddresses": [
    "00:1A:2B:3C:4D:60",
    "00:1A:2B:3C:4D:61"
  ],
  "rackId": "rack-01",
  "manufacturer": "NVIDIA",
  "labels": {
    "environment": "production",
    "rack": "A1"
  },
  "created": "2019-08-24T14:15:22Z",
  "updated": "2019-08-24T14:15:22Z"
}

Changes

    • info

      added the new optional request property

    • info

      request property deprecated

    • info

      added the optional property to the response with the status

    • info

      response property nvosMacAddresses deprecated

    • info

      removed the nico enum value from the response property for the response status

    • info

      removed the nico enum value from the response property for the response status

    • info

      removed the nico enum value from the response property for the response status

    • info

      removed the nico enum value from the response property for the response status