You can create a vendor-specific IPAM .zip package to support an external IPAM provider in VMware Aria Automation by using the supplied VMware Aria Automation Third-Party IPAM SDK available at VMware code.

The IPAM package is written in python and uses an ABX running environment. The .zip file contents include custom implementations of the currently supported IPAM operations, including Allocate IP, Deallocate IP, Get IP Ranges, Update Record, and Validate Endpoint.

An IPAM .zip package consists of the following files: bundle.zip, endpoint-schema.json, logo.pgn, and registration.yaml.

Contents of an IPAM .zip package.

File Format Description
registration.yaml Can be extended in the future.
name: "Sample IPAM"
description: "Sample IPAM integration for CAS"
version: "0.1"

abxConfig:
 allocateIPActionId: "SampleIPAM_AllocateIP" 
 deallocateIPActionId: "SampleIPAM_DeallocateIP" 
 validateEndpointActionId: "SampleIPAM_ValidateEndpoint"
 updateResourceActionId: "SampleIPAM_Update"
 getIPRangesActionId: "SampleIPAM_GetIPRanges"

properties:
 supportsUpdateRecord: true
 supportsOnDemandNetworks: false
Contains meta information about the contents of the IPAM .zip. Describes the ABX action IDs to invoke for the different types of IPAM operations. The IPAM provider name and description is also stored here. The name, description, and properties of the IPAM provider are also stored here.
endpoint-schema.json The form definition format is documented in Appendix A. Contains the custom form definition that renders the IPAM provider's specific fields during IPAM endpoint registration.
Important: The endpoint-schema.json file must contain entries for privateKey and privateKeyId fields.

These fields indicate sensitive data within the custom form that must be stored in a secure way.

bundle.zip Uses the same format as ABX for exporting sets of actions. Contains the set of ABX actions in the established ABX format.
logo.png Contains the logo icon for the specific IPAM provider.