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

# Deprecations

NICo REST API maintains backward compatibility with the previous versions. Any breaking changes are announced using deprecation API objects.

## Deprecation API Object

A deprecation API object is a JSON object that contains the details of a particular deprecation in the API. It is used to announce deprecations to clients of the API.

| Field | Description |
|-------|-------------|
| attribute | Name of the attribute that is deprecated. Omitted if queryParam or endpoint is being deprecated. |
| queryParam | Name of the query parameter that is deprecated. Omitted if attribute or endpoint is being deprecated. |
| endpoint | API endpoint that is deprecated. Omitted if attribute or queryParam is being deprecated. |
| replacedBy | Name of the attribute, query parameter, or endpoint that replaces the deprecated item. Omitted if no replacement is available. |
| takeActionBy | ISO datetime string for when the deprecated field will no longer be accepted or available in the API. |
| notice | Message describing the deprecation. If the takeActionBy date hasn't passed, yet the notice will end with `Please take action prior to the specified date`. If the takeActionBy date has passed, the notice will end with `Please take action immediately`. |

## Attribute Deprecation

When an attribute of an API object is being deprecated:

- Each API object that contains the deprecated attribute will include a `deprecations` attribute containing an array of deprecation API objects
- When an attribute is being deprecated, only the `attribute` field will be included in the deprecation API object

```json
{
    "id": "123e4567-e89b-12d3-a456-426614174000",
    "name": "test-object",
    "description": "Test object",
    "status": "Pending",
    "deprecations": [
        {
            "attribute": "displayName",
            "replacedBy": "orgDisplayName",
            "takeActionBy": "2026-06-08T00:00:00Z",
            "notice": "`displayName` has been deprecated in favor of `orgDisplayName`. Please take action prior to the specified date"
        }
    ]
}
```

## Endpoint Deprecation

When an API endpoint is being deprecated:

- Each API endpoint will include a `deprecations` attribute containing an array of deprecation API objects
- When an endpoint is being deprecated, only the `endpoint` field will be included in the deprecation API object

```json
{
    "id": "123e4567-e89b-12d3-a456-426614174000",
    "name": "test-endpoint",
    "description": "Test endpoint",
    "status": "Pending",
    "deprecations": [
        {
            "endpoint": "POST /org/:orgName/nico/infrastructure-provider",
            "takeActionBy": "2026-06-08T00:00:00Z",
            "notice": "`POST /org/:orgName/nico/infrastructure-provider` has been deprecated. Please take action prior to the specified date"
        }
    ]
}
```

If a deprecated attribute/endpoint or query param has no replacement, the `replacedBy` field will be omitted from the response.

## Query Param Deprecation

When a query param is being deprecated:

- Each API endpoint that accepts the query param will include a `deprecations` attribute containing an array of deprecation API objects
- When a query param is being deprecated, only the `queryParam` field will be included in the deprecation API object

```json
{
    "id": "123e4567-e89b-12d3-a456-426614174000",
    "name": "test-query-param",
    "description": "Test query param",
    "status": "Pending",
    "deprecations": [
        {
            "queryParam": "includeUsageStats",
            "replacedBy": "includeUsage",
            "takeActionBy": "2026-06-08T00:00:00Z",
            "notice": "`includeUsageStats` has been deprecated in favor of `includeUsage`. Please take action prior to the specified date"
        }
    ]
}
```

## Guidance for Users

If the deprecated item is an attribute that belongs to a request object used for create/update API endpoints:
  - If a new attribute is introduced, either the new or deprecated attribute can be specified in request until expiry date
  - If both new and deprecated attributes are specified in request data at the same time, an HTTP 400 response is returned informing preference for the new attribute
  - Once the take action by date has passed and the deprecated attribute is included in create/update request, an HTTP 400 response is returned informing that the attribute has been deprecated

Deprecation notices continue to be returned for one more release cycle after the take action by date.

## Active Deprecations

Endpoints that have deprecations will be grouped here. Following deprecations are in effect:

- Currently there are no active deprecations

## Recent Deprecations

Following deprecations were introduced in the recent past:

### Site

- `rackLevelAdministration` capability attribute was deprecated in favor of `flow` and was removed on May 13th, 2026 0:00 UTC. Please use `flow` instead.
- `isRackLevelAdministrationEnabled` query parameter was deprecated in favor of `isFlowEnabled` and was removed on May 13th, 2026 0:00 UTC. Please use `isFlowEnabled` instead.