Skip to navigation

Update Expected Rack

View as Markdown

Update an existing Expected Rack 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.

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

rackId 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

Request

Expected Rack update request.

Provide a non-null value for at least one of rackId, name, description, or labels. An empty object or a body containing only id is rejected with HTTP 400. Providing the existing rackId alone satisfies this requirement; changing rackId is rejected. Empty names and descriptions are invalid. An empty labels object counts as an update and clears all existing labels.

idstring or nullOptionalformat: "uuid"

ID of the Expected Rack 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.

namestring or nullOptional>=1 character

Human-readable name of the Expected Rack

descriptionstring or nullOptional>=1 character

Human-readable description of the Expected Rack

labelsmap from strings to stringsOptional

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

rackIdstring or nullOptional>=1 characterDeprecated

Operator-supplied rack identifier. Immutable on update: omit this field, send null, or provide the existing value as a compatibility no-op. A changed value is rejected because Core and Flow use rackId as the identity key for expected racks.

rackProfileIdstring or nullOptionalDeprecated

Ignored compatibility field. Metadata updates preserve the stored profile; this field alone is not a valid update.

Response

OK
idstringOptionalRead-onlyformat: "uuid"

Unique identifier (UUID) for the Expected Rack

rackIdstringOptionalRead-only

Operator-supplied identifier for the rack (string, not UUID). Unique within a Site.

siteIdstringOptionalRead-onlyformat: "uuid"
ID of the Site the Expected Rack belongs to
rackProfileIdstringOptional
Identifier of the Rack Profile this rack conforms to
rackGroupIdstring or nullOptional

External rack group ID selected and persisted at creation together with rackProfileId. Null for legacy rows without a recorded group; metadata updates preserve it.

namestringOptional

Human-readable name of the Expected Rack

descriptionstringOptional

Human-readable description of the Expected Rack

labelsmap from strings to stringsOptional

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

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

Errors

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