Skip to navigation

Update Expected Rack Group

View as Markdown

Update an existing Expected Rack Group identified by its id.

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

Infrastructure Provider must own the Expected Rack Group.

Alternatively, Tenant Admins with TargetedInstanceCreation capability can also update Expected Rack Groups if they have an account with the Site’s Infrastructure Provider.

rackGroupId is immutable: an update that changes it is rejected with 400 before any database mutation.

Authentication

AuthorizationBearer
export JWT_BEARER_TOKEN="<jwt-bearer-token>"

# Example org name: "acme-inc
export ORG_NAME=<org-name>

# Use the JWT bearer token in your API request auth header:
curl -v -X GET -H "Content-Type: application/json" -H "Authorization: Bearer $JWT_BEARER_TOKEN" https://nico-rest-api.nico.svc.cluster.local/v2/org/$ORG_NAME/nico/user/current

Path parameters

orgstringRequired
Name of the Org
idstringRequiredformat: "uuid"
ID of the Expected Rack Group

Request

Expected Rack Group update request.

Provide a non-null value for at least one of rackGroupId, topology, racks, name, description, or labels. An empty object, a body containing only id, or a body with all six fields omitted or set to null returns HTTP 400. Empty arrays for racks, empty objects for labels, and empty strings for name or description count as updates and clear those values.

The rackGroupId field is immutable on update. Providing its existing value alone satisfies the update requirement and still updates the modification time and sends the group to Core. Changing it returns HTTP 400.

idstring or nullOptionalformat: "uuid"

Unique identifier (UUID) of the Expected Rack Group to update. Can be omitted or set to null. A supplied string must match the URL path UUID in lowercase, hyphenated form. Empty strings, invalid UUIDs, and mismatched IDs are rejected with HTTP 400.

rackGroupIdstring or nullOptional1-128 characters

Operator-supplied rack group identifier. Immutable on update: omit this field, send null, or provide the existing value without changing the identity. A changed value is rejected because Core uses rackGroupId as the identity key.

topologystring or nullOptional1-128 characters

Optional replacement topology identifier, non-blank and at most 128 characters.

protocolstring or nullOptional1-128 characters

Optional replacement rack fabric protocol, non-blank and at most 128 characters. NVLINK_V6 enables GB-to-VR profile topology normalization.

rackslist of objects or nullOptional

Ordered racks and their devices. Rack IDs and device identity tuples must be unique across the group, with case-sensitive comparison. A provided array replaces the complete list; on PATCH, omission or null preserves it and [] clears it. On create, omission or null supplies an empty list.

namestring or nullOptionalformat: "^[\x00-\x7F]*$"<=256 characters

ASCII human-readable name, at most 256 characters. An empty string is allowed.

descriptionstring or nullOptional<=1024 characters

Human-readable description, at most 1024 UTF-8 bytes. An empty string is allowed.

labelsmap from strings to strings or nullOptional

User-defined key-value pairs with ASCII keys and Unicode values, each at most 255 UTF-8 bytes. Well-known keys (chassis.*, location.*) are used to convey chassis identity and physical location. Omission or null preserves existing labels; an empty object clears them. When labels is null, provide a non-null value for at least one of rackGroupId, topology, protocol, racks, name, or description.

Response

OK
idstringOptionalRead-onlyformat: "uuid"

Unique identifier (UUID) for the Expected Rack Group

rackGroupIdstringOptionalRead-only

Operator-supplied identifier for the rack group (opaque string; UUID syntax is not required). Unique within a Site.

siteIdstringOptionalRead-onlyformat: "uuid"
ID of the Site the Expected Rack Group belongs to
siteobject or nullOptional

Site details when requested through includeRelation; otherwise null.

topologystringOptional

External group-level NVLink topology identifier.

protocolstring or nullOptional
Rack fabric protocol. Null only for declarations created before protocol became required.
rackslist of objectsOptional

Ordered racks and their devices. Arrays are always present, including empty lists. Rack IDs and device identity tuples are unique across the group, with case-sensitive comparison.

namestringOptional

Human-readable name of the Expected Rack Group

descriptionstringOptional

Human-readable description of the Expected Rack Group

labelsmap from strings to stringsOptional

User-defined key-value pairs for organizing and categorizing Expected Rack Groups. Well-known keys (chassis.*, location.*) are used to convey chassis identity and physical location.

createddatetimeOptionalRead-only
ISO 8601 datetime when the Expected Rack Group was created
updateddatetimeOptionalRead-only
ISO 8601 datetime when the Expected Rack Group was last updated

Errors

400
Bad Request Error
403
Forbidden Error
404
Not Found Error
409
Conflict Error