IP Block

Create IP Block

Create an IP block for the org.

Only Infrastructure Providers can create a root IP Block. User must have authorization role with PROVIDER_ADMIN suffix.

Tenant IP Blocks are created via Allocation.

post/v2/org/{org}/nico/ipblock

Request body

namestring required

Name of the IP Block

descriptionstring nullable

Description of the IP Block

siteIdstring uuid required

ID of the site

routingType'Public' | 'DatacenterOnly' required

Routing type of the IP Block

prefixstring required

Either IPv4 or IPv6 address

prefixLengthinteger required

Min: 1, Max: 32 for IPv4, 128 for IPv6

protocolVersion'IPv4' | 'IPv6' required

Version of the ip network ipv4 or ipv6

Example request

{
  "name": "Public Network Overlay for Site SJC4",
  "description": "This is the primary IP overlay for SJC4. All IPs are publicly routable",
  "siteId": "60189e9c-7d12-438c-b9ca-6998d9c364b1",
  "routingType": "Public",
  "prefix": "202.168.1.0",
  "prefixLength": 24,
  "protocolVersion": "IPv4"
}

Response

Created

idstring uuid

Unique UUID v4 identifier for the IP Block

namestring

Name of the IP Block

descriptionstring nullable

Description of the IP Block

siteIdstring uuid

ID of the Site

infrastructureProviderIdstring uuid

ID of the Infrastructure Provider

tenantIdstring uuid nullable

ID of the Tenant

routingType'Public' | 'DatacenterOnly'

RoutingType of the IP Block

prefixstring

Either IPv4 or IPv6 address

prefixLengthinteger

Min: 1, Max: 32 for ipv4, 128 for ipv6

protocolVersion'IPv4' | 'IPv6'

Version of the ip network IPv4 or IPv6

status'Pending' | 'Provisioning' | 'Ready' | 'Deleting' | 'Error'

Status values for IP Block objects

createdstring date-time

Date/time when the Ip Block was created

updatedstring date-time

Date/time when the Ip Block was last updated

Example response

{
  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  "name": "Public Network Overlay for Site SJC4",
  "description": "This is the primary IP overlay for SJC4. All IPs are publicly routable",
  "siteId": "60189e9c-7d12-438c-b9ca-6998d9c364b1",
  "infrastructureProviderId": "e94bcfda-f6cb-42e4-80ec-516811e5abbf",
  "tenantId": null,
  "routingType": "Public",
  "prefix": "202.168.16.0",
  "prefixLength": 20,
  "protocolVersion": "IPv4",
  "status": "Pending",
  "statusHistory": [
    {
      "status": "Pending",
      "message": "Request received, pending processing",
      "created": "2019-08-24T14:15:22Z",
      "updated": "2019-08-24T14:15:22Z"
    }
  ],
  "created": "2019-08-24T14:15:22Z",
  "updated": "2019-08-24T14:15:22Z"
}

Changes

Changed in 2 of the 90 revisions of this API.41

    • the usageStats/acquiredIPs response's property type/format changed from integer/int64 to integer/uint64 for status 201

      response-property-type-changed

    • the usageStats/acquiredPrefixes response's property type/format changed from integer/int64 to integer/uint64 for status 201

      response-property-type-changed

    • the usageStats/availableIPs response's property type/format changed from integer/int64 to integer/uint64 for status 201

      response-property-type-changed

    • the usageStats/availableSmallestPrefixes response's property type/format changed from integer/int64 to integer/uint64 for status 201

      response-property-type-changed

    • removed the optional property deprecations from the response with the 201 status

      response-optional-property-removed

    This revision also has 1 change that name no endpoint, such as unreferenced schemas being removed. See the revision's changelog