Update an IP Subnet

patch

/ipSubnet/{id}

Updates the IP Subnet that matches the specified ID. The ID for IP subnets is a composite of three different attributes: IPAddress-PrefixLength-IPAddressDomainName. Update can be performed either using merge-patch or json-patch, each of which accepts a different request content-type. Kindly note that ID and ResourceSpecification cannot be updated and must not be provided in the PATCH requests.

Merge Patch:

All attributes provided in the request will be updated with the given values.

JSON Patch:

This operation performs sequential updates on individual attributes.

Attribute selection is enabled for all first-level attributes.

Optionally, use the expand parameter to specify any resource relationships (resourceRelationship.INVOLVE, resourceRelationship.CONSUMER) that you want to see details for. By default, you'll just see links for these.

Optionally, use the depth parameter to expand the level of referenced entities. If depth=0, all referenced entities in RootEntity objects will contain only the ID, HREF, and @type. If depth=N, it expands reference objects of related entities recursively, and the last level contains only the references. The default is depth=0.

Request

Path Parameters
Query Parameters
Supported Media Types
Request Body - application/json-patch+json ()
The flow identifier to be updated.
Root Schema : schema
Type: array
Show Source
Nested Schema : PatchDocument
Type: object
A JSON PATCH document.
Show Source
Nested Schema : value
Type: object
The value to use with the operation.
Request Body - application/merge-patch+json ()
The flow identifier to be updated.
Root Schema : schema
An IP subnet.
Match All
Show Source
Nested Schema : schema
An IP network or IP subnet.
Match All
Show Source
Nested Schema : LogicalResource
Type: object
The base class for logical resources.
Match All
Show Source
Nested Schema : Discriminator: @type
Type: object
A base resource Class.
Show Source
Nested Schema : LogicalResource-allOf[1]
Type: object
Nested Schema : type
Type: object
Show Source
Nested Schema : type
Type: object
Show Source
Nested Schema : NetworkAddressDomain
A network address domain.
Match All
Show Source
Nested Schema : RelatedPartyRef
Type: object
A related party, which defines a party or party role linked to a specific entity.
Show Source
Nested Schema : NetworkAddressDomain-allOf[1]
Type: object
Show Source
Nested Schema : partitionedSubnets
Type: array
Read Only: true
The list of partitioned subnets.
Show Source
Back to Top

Response

Supported Media Types

200 Response

The flow identifier was updated successfully.
Body ()
Root Schema : schema
An IP subnet.
Match All
Show Source
Nested Schema : schema
An IP network or IP subnet.
Match All
Show Source
Nested Schema : LogicalResource
Type: object
The base class for logical resources.
Match All
Show Source
Nested Schema : Discriminator: @type
Type: object
A base resource Class.
Show Source
Nested Schema : LogicalResource-allOf[1]
Type: object
Nested Schema : type
Type: object
Show Source
Nested Schema : type
Type: object
Show Source
Nested Schema : NetworkAddressDomain
A network address domain.
Match All
Show Source
Nested Schema : RelatedPartyRef
Type: object
A related party, which defines a party or party role linked to a specific entity.
Show Source
Nested Schema : NetworkAddressDomain-allOf[1]
Type: object
Show Source
Nested Schema : partitionedSubnets
Type: array
Read Only: true
The list of partitioned subnets.
Show Source

400 Response

The request isn't valid.
Body ()
Root Schema : Error
Type: object
Used when an API throws an error. This is typically used with HTTP error response codes (3xx, 4xx, 5xx).
Show Source
  • The error code.
  • Allowed Values: [ "CustomObject", "CustomNetworkAddress", "DeviceInterface", "Equipment", "EquipmentHolder", "FlowIdentifier", "GeographicLocation", "GeographicSite", "GeographicAddress", "PropertyLocation", "LogicalDevice", "LogicalDeviceAccount", "MediaStream", "Network", "PhysicalConnector", "PhysicalDevice", "PhysicalPort", "Pipe", "Service", "TelephoneNumber", "IPV4Address", "IPV6Address", "IPSubnet", "NetworkAddressDomain", "Connectivity", "Party" ]
    The list of valid values for an entity class.
  • message
    The text that provides more details about the error as well as corrective actions.
  • The short, user-friendly summary of the problem, which does not change for subsequent occurrences of the problem.
  • The URL pointing to the documentation that describes the error.
  • The HTTP error code extension, such as 400-2.
Nested Schema : message
Type: array
The text that provides more details about the error as well as corrective actions.
Show Source

401 Response

You aren't authorized to make this request.
Body ()
Root Schema : Error
Type: object
Used when an API throws an error. This is typically used with HTTP error response codes (3xx, 4xx, 5xx).
Show Source
  • The error code.
  • Allowed Values: [ "CustomObject", "CustomNetworkAddress", "DeviceInterface", "Equipment", "EquipmentHolder", "FlowIdentifier", "GeographicLocation", "GeographicSite", "GeographicAddress", "PropertyLocation", "LogicalDevice", "LogicalDeviceAccount", "MediaStream", "Network", "PhysicalConnector", "PhysicalDevice", "PhysicalPort", "Pipe", "Service", "TelephoneNumber", "IPV4Address", "IPV6Address", "IPSubnet", "NetworkAddressDomain", "Connectivity", "Party" ]
    The list of valid values for an entity class.
  • message
    The text that provides more details about the error as well as corrective actions.
  • The short, user-friendly summary of the problem, which does not change for subsequent occurrences of the problem.
  • The URL pointing to the documentation that describes the error.
  • The HTTP error code extension, such as 400-2.
Nested Schema : message
Type: array
The text that provides more details about the error as well as corrective actions.
Show Source

403 Response

The request is forbidden.
Body ()
Root Schema : Error
Type: object
Used when an API throws an error. This is typically used with HTTP error response codes (3xx, 4xx, 5xx).
Show Source
  • The error code.
  • Allowed Values: [ "CustomObject", "CustomNetworkAddress", "DeviceInterface", "Equipment", "EquipmentHolder", "FlowIdentifier", "GeographicLocation", "GeographicSite", "GeographicAddress", "PropertyLocation", "LogicalDevice", "LogicalDeviceAccount", "MediaStream", "Network", "PhysicalConnector", "PhysicalDevice", "PhysicalPort", "Pipe", "Service", "TelephoneNumber", "IPV4Address", "IPV6Address", "IPSubnet", "NetworkAddressDomain", "Connectivity", "Party" ]
    The list of valid values for an entity class.
  • message
    The text that provides more details about the error as well as corrective actions.
  • The short, user-friendly summary of the problem, which does not change for subsequent occurrences of the problem.
  • The URL pointing to the documentation that describes the error.
  • The HTTP error code extension, such as 400-2.
Nested Schema : message
Type: array
The text that provides more details about the error as well as corrective actions.
Show Source

500 Response

An internal server error occurred.
Body ()
Root Schema : Error
Type: object
Used when an API throws an error. This is typically used with HTTP error response codes (3xx, 4xx, 5xx).
Show Source
  • The error code.
  • Allowed Values: [ "CustomObject", "CustomNetworkAddress", "DeviceInterface", "Equipment", "EquipmentHolder", "FlowIdentifier", "GeographicLocation", "GeographicSite", "GeographicAddress", "PropertyLocation", "LogicalDevice", "LogicalDeviceAccount", "MediaStream", "Network", "PhysicalConnector", "PhysicalDevice", "PhysicalPort", "Pipe", "Service", "TelephoneNumber", "IPV4Address", "IPV6Address", "IPSubnet", "NetworkAddressDomain", "Connectivity", "Party" ]
    The list of valid values for an entity class.
  • message
    The text that provides more details about the error as well as corrective actions.
  • The short, user-friendly summary of the problem, which does not change for subsequent occurrences of the problem.
  • The URL pointing to the documentation that describes the error.
  • The HTTP error code extension, such as 400-2.
Nested Schema : message
Type: array
The text that provides more details about the error as well as corrective actions.
Show Source
Back to Top

Examples

This example shows how to update the details of an IPv4 or IPv6 subnet for a given ID by submitting a PATCH request on the REST resource using cURL. For more information about cURL, see "Install and Use cURL".

cURL Command

curl -X PATCH "http://hostname:port/InventoryRSOpenAPI/resourceInventoryManagement/version/ipSubnet/ID" -H credentials @ipSubnetPatch.json

where:

  • hostname is the URL for the UIM REST server.
  • port is the port for the UIM REST server.
  • version is the version of the API you're using.
  • ID is the ID of the IP subnet to be updated.
  • ipSubnetPatch.json is the JSON file with updated values.

Example of Request Body

This shows an example of the contents of the ipSubnetPatch.json file sent as the request body for the MERGE patch.

Note:

The MERGE patch requests should not have ID and Resource-Specification attributes in the requests as they cannot be updated.

{
    "@type": "IPNetwork",
    "name": "WebHosting_Subnet",
    "description": "A web hosting sub-network"
}

This shows an example of the contents of the ipSubnetPatch.json file sent as the request body for the JSON patch.

{
    "op": "add",
    "path": "/name",
    "value": "WebHosting_Subnet"
}

Example of Response Body

This example shows the contents of the response body in JSON format. It shows the IPV4 or IPV6 subnet details for a given ID.

{
   "id": "24-1.19.94.0-28 - Public",
   "href": "http://hostname:port/InventoryRSOpenAPI/resourceInventoryManagement/version/resource/24-1.19.94.0-28 - Public",
   "@type": "IPSubnet",
   "@baseType": "LogicalResource",
   "name": "WebHosting_Subnet",
   "version": "1",
   "lifecycleState": "INSTALLED",
   "lifecycleSubState": "UNASSIGNED",
   "startDate": "2019-12-30T14:45:36.474Z",
   "endDate": "2038-01-19T08:44:07.000Z",
   "resourceSpecification": {
      "id": "IPv4Subnet",
      "href": "http://hostname:port/InventoryRSOpenAPI/specification/IPv4Subnet",
      "name": "IPv4Subnet",
      "version": "1",
      "entityType": "IPSubnet",
      "startDate": "2019-11-18T00:00:01.000Z",
      "endDate": "2038-01-19T08:44:07.000Z"
   },
   "prefixLength": 28,
   "isIPNetwork": false,
   "availableHostCount": 14,
   "numericLowerAddress": 18046464,
   "numericUpperAddress": 18046479,
   "allowHostAtSubnetBoundaries": false,
   "ipAddressDomain": {
      "id": "25-Public",
      "href": "http://hostname:port/InventoryRSOpenAPI/resourceInventoryManagement/version/resource/25-Public",
      "@type": "NetworkAddressDomain"
   },
   "ipAddressVersion": "IPV4",
   "prefix": "255.255.255.240",
   "isSubnetPartitioned": false,
   "ipNetwork": {
      "id": "23-1.19.94.0-28 - Public",
      "href": "http://hostname:port/InventoryRSOpenAPI/resourceInventoryManagement/version/resource/23-1.19.94.0-28 - Public",
      "@type": "IPNetwork"
   },
   "ipAddresses": "http://hostname:port/InventoryRSOpenAPI/resourceInventoryManagement/version/ipSubnet/IPV4/1.19.94.0-28 - Public/ipAddresses"
} 
Back to Top