Introduction
Submitting a Catalog Item Provisioning Request without any knowledge of the request template is a 2-step approach:
This request is used to get the template for a specific catalog item request.
Request
curl --location --request GET 'https://{{va-fqdn}}/catalog-service/api/consumer/entitledCatalogItems/{{consumer-catalog-item-guid}}/requests/customTemplate?businessGroupId={{subtenant-guid}}' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer {{token}}'
Please Note:
The above mentioned endpoint../customTemplate
is an updated (Swisscom-specific) vRA endpoint that fixes various issues with the official../template
endpoint.
This is the main action used to trigger a catalog item request. Depending on the consumer-catalog-item-guid, this api request triggers a different catalog item and requires a different data object.
Request
curl --location --request POST 'https://{{va-fqdn}}/catalog-service/api/consumer/entitledCatalogItems/{{consumer-catalog-item-guid}}/requests?businessGroupId={{subtenant-guid}}' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer {{token}}' \
--header 'Content-Type: application/json' \
--data-raw '{
"type": "com.vmware.vcac.catalog.domain.request.CatalogItemProvisioningRequest",
"data": {
// Catalog item specific - see below
}
}'
Example Data (JSON)
{
// Type is mandatory:
"type": "com.vmware.vcac.catalog.domain.request.CatalogItemProvisioningRequest",
"data": {
// The following is different depending on the resource item:
"aggregate": null,
"p_enabled_backup_configuration": null,
"p_friendly_name": null,
"p_network_active_a": null,
"p_network_active_b": null,
"p_oracle_db_version_type": null,
"p_plan_mode": null,
"p_vm_cpu_count": null,
"planName": null,
"serviceName": null,
"tmpCatalog": null,
"uplinkTopology": null
}
}
Step 1 is not necessary when the template is already known. The body of step 2 differs depending on the catalog item.
The following Data Payload section describes the body parameters for each catalog item in further detail.
The started request can in a next step be tracked via portal or API call as described here.