A common use case for vRealize Automation API integrations is around provisioning and managing resources through the self-service catalog. While this is something that has long been supported in the product, it hasn’t always been as intuitive to achieve as it could be — until now.
The vRealize Automation service catalog provides a consumer-friendly self-service experience for infrastructure and applications, as well as just about any IT service through XaaS (formerly the Advanced Service Designer). Exposing this flexibility through an API integration, however, has not always been straightforward, as submitting a catalog request requires detailed knowledge of the specific catalog item in question including which attributes need to be included as part of the request.
Whereas in previous versions constructing a request meant consulting documentation and adapting the sample to the blueprints in your own environment, in vRealize Automation 7.0, you can now query the API for a request template. This provides the appropriate JSON request body for the relevant catalog item based on the new unified blueprint. The template is repopulated with default values, which can be modified if desired prior to submitting.
The same model applies to the Day 2 actions that you can perform on provisioned resources, including ones that require detailed user input such as reconfigure or snapshot. This pattern enables an API client to handle any resource or associated action in a uniform way instead of requiring purpose-built logic for different blueprints or actions. Additionally, the format of the templates themselves has been streamlined, eliminating unnecessary or redundant fields, and simplifying the structure of the JSON payload overall.
Another improvement we’ve made is to make it easier to navigate the system via the API. Previously, writing an API integration required knowing how to construct URLs for each task such as browsing the catalog, requesting a catalog item, tracking a submitted request, and viewing the details of a provisioned item.
In vRealize Automation 7.0, we have introduced the use of HATEOAS (Hypermedia as the Engine of Application State) links. These links are actually the mechanism by which you can retrieve and submit the request templates describe above. Additionally, we have provided links for the most common follow-on actions from the current context: For example, from catalog item details to requesting that catalog item, or from a completed request to viewing the details of the deployment that was provisioned from that request.
Taken together, these enhancements to our consumption API mean that you’ll be able to develop integrations faster and spend less time poring over documentation and more time creating content for your end users.
To learn more about the new capabilities of this upcoming release I recommend you read vRealize Automation 7.0 – Accelerating Time to Value. This blog post provides a concise overview of the new capabilities that available in this release.