Automation Assembler in VMware Aria Automation supports these IPAM service baseline contracts for the integrated external IPAM provider.
Entity: ProviderRequestBase
Property | Type | Required | Description |
---|---|---|---|
endpoint | Endpoint | Yes | A parent class for all request types DTOs. Provides basic information about the IPAM provider endpoint in Automation Assembler. |
Entity: ProviderResponseBase
Note: This entity has been deprecated.
Property | Type | Required | Description |
---|---|---|---|
error | ErrorStatus | No | DEPRECATED This property was initially used to propagate errors from the plug-in to VMware Aria Automation. This field is deprecated and replaced by exceptions. In case of an error, the plug-in is expected to use the capabilities of the underlying running environment to report that error. For an ABX running environment, an exception is thrown inside the action. |
Entity: ErrorStatus
Note: This entity has been deprecated.
Property | Type | Required | Description |
---|---|---|---|
errorCode | Integer | Yes | DEPRECATED This property was initially used to propagate errors from the plug-in to VMware Aria Automation. This field is deprecated and replaced by exceptions. In case of an error, the plug-in is expected to use the capabilities of the underlying running environment to report that error. For an ABX running environment, an exception is thrown inside the action. |
errorMessage | String | Yes | DEPRECATED |
Entity: EndpointValidationRequest
Property | Type | Required | Description |
---|---|---|---|
authCredentialsLink | String | Yes | Carries host and credentials data about the external IPAM provider that is needed to validate the connection. Contains the link to the credentials store where the external IPAM provider credentials are kept in VMware Aria Automation. |
endpointProperties | Map<String,String> | Yes | Carries host and credentials data about the external IPAM provider that is needed to validate the connection. Contains a collection that holds providerspecific endpoint properties such as hostname and others that are defined in the endpointschema.json file. |
Entity: EndpointValidationResponse: ProviderResponseBase
Property | Type | Required | Description |
---|---|---|---|
message | String | No | Response of the EndpointValidationRequest. Indicates successful validation of endpoint credentials and connectivity. |
certificateInfo | CertificateInfo | No | Response of the EndpointValidationRequest. If the certificate for the external IPAM provider is not automatically trusted, this field can be used with the error message to propagate the certificate to Automation Assembler user and allow the user to manually confirm certificate trust. |
Entity: Endpoint
Property | Type | Required | Description |
---|---|---|---|
id | String | Yes | An entity representing the registered external IPAM provider, for example Infoblox. This is a VMware Aria Automation endpoint ID |
authCredentialsLink | String | Yes | An entity representing the registered external IPAM provider, for example Infoblox. Contains a link to an AuthCredentialsState document in the VMware Aria Automation database that stores credentials in a secure way. Can be accessed from an ABX script by using |
endpointProperties | String | Yes | An entity that represents the registered external IPAM provider, for example Infoblox. Contains IPAM provider endpoint properties, such as hostname, that are defined in the endpoint-schema.json file. |
Entity: PagingAndSorting
Property | Type | Required | Description |
---|---|---|---|
maxResults | Integer | No | Specifies the maximum number of returned results per page. If the number of available results is larger than maxResults, the IPAM provider must return a nextPageToken to get the next page of results in subsequent list requests. |
pageToken | String | No | Specifies a page token to use. To get the next page of results, set the pageToken to the nextPageToken returned by a previous list request. |
Entity: EnumerationRequestBase
Property | Type | Required | Description |
---|---|---|---|
Endpoint | Endpoint | Yes | Contains request data required to enumerate any kind of resources. Contains basic information about the IPAM integration in VMware Aria Automation. |
pagingAndSorting | PagingAndSorting | Yes | Contains request data required to enumerate any kind of resources. Contains a key-value entry containing pagination related data. |
Entity: GetIpRangesResponse : ProviderResponseBase
Property | Type | Required | Description |
---|---|---|---|
ipRanges | List<IpRange> | Yes | Contains the list of IP ranges returned in the result set. |
nextPageToken | String | No | Allows you to get the next page of results for list requests. If the number of results is larger than maxResults (see above entity), use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests have their own nextPageToken to continue paging through the results. |
Entity: IpRange
Property | Type | Required | Description |
---|---|---|---|
id | String | Yes | Provider specific ID. If the provider doesn't have IDs, the workflow/action can generate an ID using a combination of range start address, end address, and address space. |
name | String | Yes | User friendly name. |
description | String | No | User friendly description. |
startIPAddress | String | Yes | Range start IP address. |
endIPAddress | String | Yes | Range end IP address. |
ipVersion | Enum:{IPv4,IPv6} | Yes | Range IP version - IPv4 or IPv6. |
addressSpaceId | String | No | Address space where the range belongs. |
gatewayAddress | String | No | The gateway IP address. |
subnetPrefixLength | Integer | Yes | The length of the subnet mask. |
dnsServerAddresses | List<String> | No | Ordered list of DNS server. |
domain | String | No | DNS domain of this range. |
dnsSearchDomains | List<String> | No | Ordered list of DNS domain search. |
properties | Map<String,String> | No | Provider |
tags | List<Tag> | No | Tags collection, for example the extensible attributes in Infoblox. |
Entity: IpAllocationRequest : ProviderRequestBase
Property | Type | Required | Description |
---|---|---|---|
resourceInfo | ResourceInfo | Yes | Contains information about the resource, for example a machine or load balancer, to which the range is associated. |
ipAllocations | List<IpAllocation> | Yes | Contains the list of allocations to be reserved for this resource. For example, a machine may have multiple NICs and a separate IP allocation should be supplied for each NIC. |
Entity: ResourceInfo
Property | Type | Required | Description |
---|---|---|---|
id | String | Yes | The resource ID, for example PhM documentSelfLink. |
name | String | Yes | The resource name. |
hostName | String | No | The resource hostname. |
description | String | No | The resource description. |
type | Enum {VM, LOADBALANCER, NAT, OTHER} | Yes | The resource type. |
owner | String | Yes | The resource owner, for example [email protected]. |
orgId | String | Yes | The tenant ID or organization ID in which the resource resides. |
properties | Map<String, String> | No | The resource-specific custom properties. |
projectId Note: Not available for vRealize Automation 8.2 or earlier |
String | No | The ID of the project this entity belongs to. |
templateId Note: Not available for vRealize Automation 8.2 or earlier |
String | No | The ID of the template/cloud template this entity belongs to. |
deploymentId Note: Not available for vRealize Automation 8.2 or earlier |
String | No | The ID of the deployment this entity belongs to. |
Entity: IpAllocation
Property | Type | Required | Description |
---|---|---|---|
id | String | Yes | ID of the IpAllocation. This ID is set by the IPAM service to match the IpAllocation value with the corresponding AllocationResult value. |
description | String | No | Description for allocation request in humanreadable format, for example in CIDR format. |
ipRangeIds | List<String> | Yes | Provider-specific range IDs to use to allocate IP addresses. To avoid DNS and gateway information mismatch, only one range is used to allocate all IP addresses. |
nicIndex | Integer | Yes | Nic index of the resource. |
isPrimary | Boolean | Yes | Set to true when allocating a primary IP for the Nix Index of the resource. |
start | String | No | Start IP address. Used to allocate specific IP address. |
size | Integer | Yes | Number of IP addresses to allocate. Used to allocate more than one IP address. If Start is also specified, continues IP addresses to be allocated. |
properties | Map<String, String> | Yes | May contain the provider-specific properties. |
Entity: IpAllocationResponse : ProviderResponseBase
Property | Type | Required | Description |
---|---|---|---|
ipAllocations | List<AllocationResult> | Yes | List of IP allocations to match with allocations in the request. |
Entity: AllocationResult
Property | Type | Required | Description |
---|---|---|---|
ipAllocationId | String | Yes | ID of the specified IpAllocation. This is set by the IPAM service to match the IpAllocation value with the corresponding AllocationResult value. |
ipAddresses | List<String> | Yes | Allocated IP addresses. If a start address was specified, this is a continuous block of IP addresses. If no start address was specified, any IP addresses within a single range are allocated |
ipRangeId | String | Yes | Provide-specific range ID used to allocate IP addresses |
ipVersion | Enum{IPv4, IPv6} | Yes | IP version range. |
gatewayAddresses | List<String> | No | Gateway addresses. Can be used to overwrite the value from the IP range. |
subnetPrefixLength | Integer | No | Subnet prefix length (synonymous with netmask). Can be used to overwrite the value from the IP range. |
dnsServerAddresses | List<String> | No | DNS IP addresses. Can be used to overwrite the value from the IP range. |
Domain | String | No | DNS domain. Can be used to overwrite the value from the IP range. |
dnsSearchDomains | List<String> | No | DNS domain search, in order. Can be used to overwrite the value from the IP range. |
Properties | Map<String, String> | No | Provider-specific allocation result properties that the provider needs to be set on the resource NIC as machine NIC custom properties. |
Entity: IpDeallocationRequest : ProviderRequestBase
Property | Type | Required | Description |
---|---|---|---|
resourceInfo | ResourceInfo | Yes | Contains information about the resource, for example a machine or load balancer, that the range is associated with. |
ipDeallocations | List<IpDeallocation> | Yes | List of deallocations containing information about which IPs to release for the resource. |
Entity: IpDeallocation
Property | Type | Required | Description |
---|---|---|---|
id | String | Yes | ID of IpDeallocation. The ID is set by the IPAM service to match the IpDeallocation value with the corresponding DeallocationResult value. |
ipAddress | String | Yes | The IP address to deallocate. |
ipRangeId | String | Yes | Provider-specific range ID of the IP range used for allcoating this IP address. |
vraIPAddressId Note: Not available for vRealize Automation 8.2 or earlier. |
String | Yes | The ID of the IP address instance in VMware Aria Automation. |
addressSpaceId Note: Not available for vRealize Automation 8.2 or earlier. |
String | No | The ID of the address space that the range belongs to. |
Entity: IpDeallocationResponse : ProviderResponseBase
Property | Type | Required | Description |
---|---|---|---|
ipDeallocations | List<DeallocationResult> | Yes | List of deallocations to match with deallocation IPs from the request. |
Entity: DeallocationResult
Property | Type | Required | Description |
---|---|---|---|
ipDeallocationId | String | Yes | ID of IpDeallocation. The ID is set by the IPAM service to match the IpDeallocation value with the corresponding DeallocationResult value. |
message | String | No | Optional message to include in the deallocation response. |
Entity: RecordUpdateRequest : ProviderRequestBase
Property | Type | Required | Description |
---|---|---|---|
resourceInfo | ResourceInfo | Yes | Information about the resource, for example the machine or load balancer, to which this IP range is associated. |
hostName | String | Yes | The resource hostname. |
addressInfos | List<AddressInfo> | Yes | List of address information to be used for updating the MAC address of the record. |
Entity: AddressInfo
Property | Type | Required | Description |
---|---|---|---|
address | String | Yes | IP address of the record. |
macAddress | String | Yes | MAC address of the record. |
nicIndex | Integer | Yes | 0-based index of the NIC. |
ipAllocationId Note: Not available for vRealize Automation 8.2 or earlier. |
String | Yes | The ID of the allocation. This ID is set by the IPAM service to match UpdateRecord with the corresponding allocation. |
vraIPAddressId Note: Not available for vRealize Automation 8.2 or earlier. |
String | Yes | The ID of the IP address instance in VMware Aria Automation that was created during allocation. |
addressSpaceId Note: Not available for vRealize Automation 8.2 or earlier. |
String | No | The ID of the address space that the range belongs to. |
Entity: IpRangeAllocation – Holds data required to allocate a network IP range
Property | Type | Required | Description |
---|---|---|---|
name | String | Yes | Network name. |
description | String | No | Network description. |
ipBlockIds | List<String> | Yes | List of IP blocks that can be used to allocate the network. The List type allows you to specify multiple blocks, for example to allocate the network inside the first block that matches a requirement. |
addressSpaceId | String | No | Address space where the range belongs. |
gatewayAddress | String | No | Gateway IP address. |
subnetCidr | String | No | CIDR that can be used to allocate the network on a specific IP address. |
subnetPrefixLength | Ineger | Yes | Subnet mask length. |
dnsServerAddresses | List<String> | No | DNS IP addresses for this network. |
domain | String | No | DNS domain of this network. |
dnsServerAddresses | List<String> | No | Ordered list of DNS domain search. |
properties | Map<String, String> | No | Provider specific properties. |
tags | List<Tag> | No | Tags collection, for example the extensible attributes in Infoblox. |
id Note: Not available for vRealize Automation 8.2 or earlier. |
String | Yes | The ID of the IP range allocation. This ID is set by the IPAM service to match IpRangeAllocation with the corresponding deallocation. |
Entity: IpRangeAllocationRequest : ProviderRequestBase
Property | Type | Required | Description |
---|---|---|---|
resourceInfo | ResourceInfo | Yes | Information about the resource, for example the machine or load balancer, to which this IP range is associated. |
ipRangeAllocation | IpRangeAllocation | Yes | Information about the IP range to be allocated. |
Entity: IpRangeAllocationResponse : ProviderResponseBase
Property | Type | Required | Description |
---|---|---|---|
ipRange | IpRange | Yes | The state of the network's allocated IP range. |
Entity: IpRangeDeallocation – Holds data required to deallocate a network IP range
Property | Type | Required | Description |
---|---|---|---|
ipRangeId | String | Yes | The ID of the network to be deallocated. |
addressSpaceId | String | No | The address space that the IP range belongs to. |
property | Map<String, String> | No | Provider-specific properties. |
id Note: Not available for vRealize Automation 8.2 or earlier. |
String | Yes | The ID of the IP range deallocation. This ID is set by the IPAM service to match IpRangeDeallocation with the corresponding allocation. |
Entity: IpRangeDeallocationRequest: ProviderRequestBase
Property | Type | Required | Description |
---|---|---|---|
resourceInfo | ResourceInfo | Yes | Information about the resource, for example the machine or load balancer, to which this IP range is associated. |
ipRangeDeallocation | IpRangeDeallocation | Yes | Information about the IP range to be deallocated. |
Entity: IpRangeDeallocationResponse
Property | Type | Required | Description |
---|---|---|---|
message | String | No | A message that indicates whether the IP range was successfully deallocated. |
Entity: IpBlock – Holds data associated with a single IP Block
Property | Type | Required | Description |
---|---|---|---|
id | String | Yes | Provider-specific ID. If the provider does not provide an ID, the action or workflow can generate one by combining the block name and the CIDR. |
name | String | Yes | IP block name. For example, the IP block name might be the block CIDR. |
description | String | No | IP block description. |
ipBlockCIDR | String | Yes | The IP block CIDR, for example 192.168.0.0/24. |
ipVersion | enum:{IPv4, IPv6} | Yes | Block type - either IPv4 or IPv6. |
addressSpace | String | No | Address space where the block belongs. |
gatewayAddress | String | No | Gateway IP address, for example 192.168.0.1. |
dnsServerAddresses | List<String> | No | DNS IP addresses for this block. |
domain | String | No | DNS domain of this block. |
dnsSearchDomains | List<String> | No | Ordered list of DNS domains |
properties | Map<String, String> | No | Provider specific properties. |
tags | List<Tag> | No | Tags collection, for example the extensible attributes in Infoblox. |
Entity: GetIpBlocksResponse
Property | Type | Required | Description |
---|---|---|---|
ipBlocks | List<IpBlock> | Yes | Contains information about multiple IP blocks. |