Update a IP Network
/ipNetwork/{id}
Attribute selection is enabled for all first-level attributes.
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. 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
-
id(required): string
The ID of the IP Network to be updated.
-
depth: integer
Minimum Value:
0
Maximum Value:10
The depth of the expansion.Default Value:0
-
expand: string
The additional details to include in the response.
-
fields: string
The fields to include in the response.
- application/json-patch+json
- application/merge-patch+json
object
-
op(required): string
Allowed Values:
[ "add", "remove", "replace" ]
-
path(required): string
A JSON pointer indicating where to perform the operation.
-
value: object
value
The value to use with the operation.
object
-
object
allOf
LogicalResource
The base class for logical resources.
-
object
type
object
-
object
Discriminator: @type
Discriminator:
{ "propertyName":"@type" }
A base resource Class. -
object
LogicalResource-allOf[1]
object
-
@baseType: string
Read Only:
true
Allowed Values:[ "PhysicalResource", "LogicalResource" ]
The list of valid values for the type of base resource. -
@type: string
Allowed Values:
[ "DeviceInterface", "Equipment", "EquipmentHolder", "LogicalDevice", "LogicalDeviceAccount", "PhysicalConnector", "PhysicalDevice", "PhysicalPort", "TelephoneNumber", "IPV4Address", "IPV6Address", "IPNetwork", "IPSubnet", "NetworkAddressDomain", "FlowIdentifier", "CustomObject", "CustomNetworkAddress", "Pipe", "PipeTerminationPoint", "Connectivity" ]
The list of valid values for the resource type. -
category: string
The category of the concrete resource, such as Gold or Silver for a MSISDN concrete resource.
-
description: string
A free-text description for the resource.
-
endOperatingDate: string
(date-time)
The date and time when the resource is no longer effective.
-
externalIdentity: object
externalIdentity
Read Only:
true
The external identity details for the federated resource. -
href: string
(uri)
Read Only:
true
The URI for the resource class. -
id: string
The ID of the resource.
-
lifecycleState: string
Allowed Values:
[ "END_OF_LIFE", "INSTALLED", "PENDING_INSTALL", "PENDING_REMOVE", "PENDING_UNAVAILABLE", "PENDING_AVAILABLE", "PLANNED", "UNAVAILABLE", "PENDING_DISCONNECT", "DISCONNECTED", "IN_DESIGN" ]
The list of valid values for inventory state. -
lifecycleSubState: string
Allowed Values:
[ "PENDING_ASSIGN", "ASSIGNED", "PENDING_UNASSIGN", "UNASSIGNED", "DISCONNECTED", "TRANSITIONAL", "PORTED" ]
The list of valid values for assignment state. -
name: string
The name of the resource.
-
place: array
place
The list of associated geographic places.
-
resourceCharacteristic: array
resourceCharacteristic
The list of characteristics for the resource.
-
resourceRelationship: array
resourceRelationship
The list of all resources referenced with the current resource. For example, parent resource, associated resource, etc.
-
resourceSpecification: object
Specification
A specification.
-
resourceStatus: string
Allowed Values:
[ "Standby", "Alarm", "Available", "Reserved", "Unknown", "Suspended" ]
The list of valid values for resource status type, which indicates if entity has reservations. -
resourceVersion: string
Read Only:
true
A field that identifies the version of a resource instance. -
startOperatingDate: string
(date-time)
Read Only:
true
The starting date and time when the resource becomes effective.
object
object
-
allowHostAtSubnetBoundaries: boolean
Whether the subnet's start and end addresses can be assigned to hosts (true) or not (false).
-
availableHostCount: integer
Read Only:
true
The total number of usable hosts in the network. -
ipAddress: string
The network's starting IP address.
-
ipAddressDomain:
NetworkAddressDomain
A network address domain.
-
ipAddressVersion: string
The version of the IP network, either IPv4 or IPv6.
-
ipv6AddressType: string
The type of IPv6 address supported by the network, either GLOBAL_UNICAST or UNIQUE_LOCAL_UNICAST.
-
isIPNetwork: boolean
Whether it's an IP network (true) or IP subnet (false).
-
numericLowerAddress: integer
Read Only:
true
The numeric equivalent of the start IP address of the network. -
numericUpperAddress: integer
Read Only:
true
The numeric equivalent of the end IP address of the network. -
ownedBy: object
RelatedPartyRef
A related party, which defines a party or party role linked to a specific entity.
-
prefix: string
Read Only:
true
The prefix for the IP network. -
prefixLength: integer
The number of bits in the address that are in the network.
-
object
allOf
LogicalResource
The base class for logical resources.
-
object
NetworkAddressDomain-allOf[1]
object
-
@referredType: string
Concrete Type of the Party, in case of dis-ambiguity. Default is 'Party'.
-
href: string
(uri)
The URI for the related party.
-
id: string
The ID of the related party.
-
name: string
The name of the related party.
-
role: string
The role of the related party.
object
-
managedBy: object
RelatedPartyRef
A related party, which defines a party or party role linked to a specific entity.
-
name: string
The name of the network address domain. It also indicates the ID of the domain.
-
networkAddressType: string
The type of network address, either IP Subnet or flow identifier.
-
ownedBy: object
RelatedPartyRef
A related party, which defines a party or party role linked to a specific entity.
Response
- application/json
200 Response
-
object
allOf
LogicalResource
The base class for logical resources.
-
object
type
object
-
object
Discriminator: @type
Discriminator:
{ "propertyName":"@type" }
A base resource Class. -
object
LogicalResource-allOf[1]
object
-
@baseType: string
Read Only:
true
Allowed Values:[ "PhysicalResource", "LogicalResource" ]
The list of valid values for the type of base resource. -
@type: string
Allowed Values:
[ "DeviceInterface", "Equipment", "EquipmentHolder", "LogicalDevice", "LogicalDeviceAccount", "PhysicalConnector", "PhysicalDevice", "PhysicalPort", "TelephoneNumber", "IPV4Address", "IPV6Address", "IPNetwork", "IPSubnet", "NetworkAddressDomain", "FlowIdentifier", "CustomObject", "CustomNetworkAddress", "Pipe", "PipeTerminationPoint", "Connectivity" ]
The list of valid values for the resource type. -
category: string
The category of the concrete resource, such as Gold or Silver for a MSISDN concrete resource.
-
description: string
A free-text description for the resource.
-
endOperatingDate: string
(date-time)
The date and time when the resource is no longer effective.
-
externalIdentity: object
externalIdentity
Read Only:
true
The external identity details for the federated resource. -
href: string
(uri)
Read Only:
true
The URI for the resource class. -
id: string
The ID of the resource.
-
lifecycleState: string
Allowed Values:
[ "END_OF_LIFE", "INSTALLED", "PENDING_INSTALL", "PENDING_REMOVE", "PENDING_UNAVAILABLE", "PENDING_AVAILABLE", "PLANNED", "UNAVAILABLE", "PENDING_DISCONNECT", "DISCONNECTED", "IN_DESIGN" ]
The list of valid values for inventory state. -
lifecycleSubState: string
Allowed Values:
[ "PENDING_ASSIGN", "ASSIGNED", "PENDING_UNASSIGN", "UNASSIGNED", "DISCONNECTED", "TRANSITIONAL", "PORTED" ]
The list of valid values for assignment state. -
name: string
The name of the resource.
-
place: array
place
The list of associated geographic places.
-
resourceCharacteristic: array
resourceCharacteristic
The list of characteristics for the resource.
-
resourceRelationship: array
resourceRelationship
The list of all resources referenced with the current resource. For example, parent resource, associated resource, etc.
-
resourceSpecification: object
Specification
A specification.
-
resourceStatus: string
Allowed Values:
[ "Standby", "Alarm", "Available", "Reserved", "Unknown", "Suspended" ]
The list of valid values for resource status type, which indicates if entity has reservations. -
resourceVersion: string
Read Only:
true
A field that identifies the version of a resource instance. -
startOperatingDate: string
(date-time)
Read Only:
true
The starting date and time when the resource becomes effective.
object
object
-
allowHostAtSubnetBoundaries: boolean
Whether the subnet's start and end addresses can be assigned to hosts (true) or not (false).
-
availableHostCount: integer
Read Only:
true
The total number of usable hosts in the network. -
ipAddress: string
The network's starting IP address.
-
ipAddressDomain:
NetworkAddressDomain
A network address domain.
-
ipAddressVersion: string
The version of the IP network, either IPv4 or IPv6.
-
ipv6AddressType: string
The type of IPv6 address supported by the network, either GLOBAL_UNICAST or UNIQUE_LOCAL_UNICAST.
-
isIPNetwork: boolean
Whether it's an IP network (true) or IP subnet (false).
-
numericLowerAddress: integer
Read Only:
true
The numeric equivalent of the start IP address of the network. -
numericUpperAddress: integer
Read Only:
true
The numeric equivalent of the end IP address of the network. -
ownedBy: object
RelatedPartyRef
A related party, which defines a party or party role linked to a specific entity.
-
prefix: string
Read Only:
true
The prefix for the IP network. -
prefixLength: integer
The number of bits in the address that are in the network.
-
object
allOf
LogicalResource
The base class for logical resources.
-
object
NetworkAddressDomain-allOf[1]
object
-
@referredType: string
Concrete Type of the Party, in case of dis-ambiguity. Default is 'Party'.
-
href: string
(uri)
The URI for the related party.
-
id: string
The ID of the related party.
-
name: string
The name of the related party.
-
role: string
The role of the related party.
object
-
managedBy: object
RelatedPartyRef
A related party, which defines a party or party role linked to a specific entity.
-
name: string
The name of the network address domain. It also indicates the ID of the domain.
-
networkAddressType: string
The type of network address, either IP Subnet or flow identifier.
-
ownedBy: object
RelatedPartyRef
A related party, which defines a party or party role linked to a specific entity.
400 Response
object
-
code: string
The error code.
-
entityType: string
Allowed Values:
[ "CustomObject", "CustomNetworkAddress", "DeviceInterface", "Equipment", "EquipmentHolder", "FlowIdentifier", "GeographicPlace", "GeographicLocation", "GeographicSite", "GeographicAddress", "GeographicAddressRange", "PropertyAddress", "PropertyLocation", "LogicalDevice", "LogicalDeviceAccount", "MediaStream", "Network", "NetworkEdge", "NetworkNode", "NetworkEntityCode", "PhysicalConnector", "PhysicalDevice", "PhysicalPort", "Pipe", "PipeTerminationPoint", "Service", "TelephoneNumber", "IPV4Address", "IPV6Address", "IPSubnet", "NetworkAddressDomain", "Connectivity", "Party" ]
The list of valid values for an entity class. -
message: array
message
The text that provides more details about the error as well as corrective actions.
-
reason: string
The short, user-friendly summary of the problem, which does not change for subsequent occurrences of the problem.
-
referenceError: string
The URL pointing to the documentation that describes the error.
-
status: string
The HTTP error code extension, such as 400-2.
array
401 Response
object
-
code: string
The error code.
-
entityType: string
Allowed Values:
[ "CustomObject", "CustomNetworkAddress", "DeviceInterface", "Equipment", "EquipmentHolder", "FlowIdentifier", "GeographicPlace", "GeographicLocation", "GeographicSite", "GeographicAddress", "GeographicAddressRange", "PropertyAddress", "PropertyLocation", "LogicalDevice", "LogicalDeviceAccount", "MediaStream", "Network", "NetworkEdge", "NetworkNode", "NetworkEntityCode", "PhysicalConnector", "PhysicalDevice", "PhysicalPort", "Pipe", "PipeTerminationPoint", "Service", "TelephoneNumber", "IPV4Address", "IPV6Address", "IPSubnet", "NetworkAddressDomain", "Connectivity", "Party" ]
The list of valid values for an entity class. -
message: array
message
The text that provides more details about the error as well as corrective actions.
-
reason: string
The short, user-friendly summary of the problem, which does not change for subsequent occurrences of the problem.
-
referenceError: string
The URL pointing to the documentation that describes the error.
-
status: string
The HTTP error code extension, such as 400-2.
array
403 Response
object
-
code: string
The error code.
-
entityType: string
Allowed Values:
[ "CustomObject", "CustomNetworkAddress", "DeviceInterface", "Equipment", "EquipmentHolder", "FlowIdentifier", "GeographicPlace", "GeographicLocation", "GeographicSite", "GeographicAddress", "GeographicAddressRange", "PropertyAddress", "PropertyLocation", "LogicalDevice", "LogicalDeviceAccount", "MediaStream", "Network", "NetworkEdge", "NetworkNode", "NetworkEntityCode", "PhysicalConnector", "PhysicalDevice", "PhysicalPort", "Pipe", "PipeTerminationPoint", "Service", "TelephoneNumber", "IPV4Address", "IPV6Address", "IPSubnet", "NetworkAddressDomain", "Connectivity", "Party" ]
The list of valid values for an entity class. -
message: array
message
The text that provides more details about the error as well as corrective actions.
-
reason: string
The short, user-friendly summary of the problem, which does not change for subsequent occurrences of the problem.
-
referenceError: string
The URL pointing to the documentation that describes the error.
-
status: string
The HTTP error code extension, such as 400-2.
array
500 Response
object
-
code: string
The error code.
-
entityType: string
Allowed Values:
[ "CustomObject", "CustomNetworkAddress", "DeviceInterface", "Equipment", "EquipmentHolder", "FlowIdentifier", "GeographicPlace", "GeographicLocation", "GeographicSite", "GeographicAddress", "GeographicAddressRange", "PropertyAddress", "PropertyLocation", "LogicalDevice", "LogicalDeviceAccount", "MediaStream", "Network", "NetworkEdge", "NetworkNode", "NetworkEntityCode", "PhysicalConnector", "PhysicalDevice", "PhysicalPort", "Pipe", "PipeTerminationPoint", "Service", "TelephoneNumber", "IPV4Address", "IPV6Address", "IPSubnet", "NetworkAddressDomain", "Connectivity", "Party" ]
The list of valid values for an entity class. -
message: array
message
The text that provides more details about the error as well as corrective actions.
-
reason: string
The short, user-friendly summary of the problem, which does not change for subsequent occurrences of the problem.
-
referenceError: string
The URL pointing to the documentation that describes the error.
-
status: string
The HTTP error code extension, such as 400-2.
array
Examples
This example shows how to update the details of an IPv4 or IPv6 network 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/ipNetwork/ID" -H credentials @ipNetworkPatch.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 IPv4 or IPv6 network to be updated.
- ipNetworkPatch.json is the JSON file with updated values.
Example of Request Body
This shows an example of the contents of the ipNetworkPatch.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_OpenNW" }
This shows an example of the contents of the ipNetworkPatch.json file sent as the request body for the JSON patch.
{ "op": "replace", "path": "/name", "value": " WebHosting_OpenNW" }
Example of Response Body
This example shows the contents of the response body in JSON format. It shows the IPv4 or IPv6 network details for a given ID.
{ "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", "@baseType": "LogicalResource", "name": "WebHosting¬_OpenNW", "version": "1", "lifecycleState": "INSTALLED", "lifecycleSubState": "UNASSIGNED", "startDate": "2019-12-30T14:45:36.409Z", "endDate": "2038-01-19T08:44:07.000Z", "resourceSpecification": { "id": "IPv4Network", "href": "http://hostname:port/InventoryRSOpenAPI/specification/IPv4Network", "name": "IPv4Network", "version": "1", "entityType": "IPSubnet", "startDate": "2019-11-18T00:00:01.000Z", "endDate": "2038-01-19T08:44:07.000Z" }, "ipAddress": "1.19.94.0", "prefixLength": 28, "isIPNetwork": true, "availableHostCount": 14, "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" }