---
title: "Update IP Block"
method: PATCH
path: "/v2/org/{org}/nico/ipblock/{ipBlockId}"
tags: ["IP Block"]
---

# Update IP Block

`PATCH /v2/org/{org}/nico/ipblock/{ipBlockId}`

Update an existing IP Block

Org must have an Infrastructure Provider. Specified IP Block must have been created by the Provider and requesting user must have `PROVIDER_ADMIN` role. Only root IP Blocks can be patched.

Tenant IP Blocks are managed via Allocation. Unknown IDs, IP Blocks belonging to another Infrastructure Provider, and `SitePrefix` records created for individual Tenants return 404.

## Request body

- IpBlockUpdateRequest — Request data for editing IP block
  - `name` string, nullable — Name of the IP Block
  - `description` string, nullable — Description of the IP Block

## Response `200`

OK

- IpBlock — IP block contains information about an IPv4 address pool owned by the Infrastructure Provider and assigned as an overlay network for a particular Site. It is equivalent to Network Resource in product terminology.
  - `id` string, uuid — Unique UUID v4 identifier for the IP Block
  - `name` string — Name of the IP Block
  - `description` string, nullable — Description of the IP Block
  - `siteId` string, uuid — ID of the Site
  - `infrastructureProviderId` string, uuid — ID of the Infrastructure Provider
  - `tenantId` string, uuid, nullable — ID of the Tenant
  - `routingType` 'Public' | 'DatacenterOnly' — RoutingType of the IP Block
  - `prefix` string — Either IPv4 or IPv6 address
  - `prefixLength` integer — Min: 1, Max: 32 for ipv4, 128 for ipv6
  - `protocolVersion` 'IPv4' | 'IPv6' — Version of the ip network IPv4 or IPv6
  - `usageStats` IpBlockUsageStats — Usage statistics for an IP Block, VPC Prefix or Subnet
    - `availableIPs` integer — Total number of IP addresses in the block (acquired and unused)
    - `acquiredIPs` integer — Number of individual IP addresses acquired from the block
    - `availablePrefixes` string[] — Example prefixes available to acquire
    - `availableSmallestPrefixes` integer — Total number of /30 prefixes that can still be acquired from this block (only reduced if prefixes are acquired, not reduced by acquired IPs)
    - `acquiredPrefixes` integer — Total number of prefixes (of any size) acquired from this block
  - `status` 'Pending' | 'Provisioning' | 'Ready' | 'Deleting' | 'Error' — Status values for IP Block objects
  - `statusHistory` StatusDetail[] — Chronological status history for the IP Block
    - `status` string — State of the associated entity at a particular time
    - `message` string, nullable — Description of the state and cause/remedy in case of error
    - `created` string, date-time — Date/time when the associated entity assumed the status
    - `updated` string, date-time — Date/time when the associated entity was last observed with this status
  - `created` string, date-time — Date/time when the Ip Block was created
  - `updated` string, date-time — Date/time when the Ip Block 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-26** `f5fd05150936` — 1 info
  - added the non-success response with the status `404`
- **2026-08-19** `484497856a94` — 4 breaking
  - the `usageStats/acquiredIPs` response's property type/format changed from `integer`/`int64` to `integer`/`uint64` for status `200`
  - the `usageStats/acquiredPrefixes` response's property type/format changed from `integer`/`int64` to `integer`/`uint64` for status `200`
  - the `usageStats/availableIPs` response's property type/format changed from `integer`/`int64` to `integer`/`uint64` for status `200`
  - the `usageStats/availableSmallestPrefixes` response's property type/format changed from `integer`/`int64` to `integer`/`uint64` for status `200`
- **2026-06-11** `bc7cf73fe604` — 1 warning
  - removed the optional property `deprecations` from the response with the `200` status
- **2026-06-02** `b078e63260c1` — 2 info
  - added the non-success response with the status `400`
  - added the non-success response with the status `403`
- **2026-06-02** `ffa063523058` — 2 info
  - removed the non-success response with the status `400`
  - removed the non-success response with the status `403`

[Full history](https://skmtc.dev/nvidia/apis/nvidia-infra-controller-rest-api/changes/v2/org/:org/nico/ipblock/:ipBlockId/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)
