Every CatalogItem object includes a rel="edit" link that you can use to modify the name or description of the catalog item.

Prerequisites

  • This operation requires the rights included in the predefined Catalog Author role or an equivalent set of rights.

  • Verify that the target catalog does not have an external subscription.

Procedure

  1. Retrieve the catalog item from the catalog.
  2. Locate the rel="edit" link in the CatalogItem element.
  3. Modify the retrieved CatalogItem element to change its name, description, or both.
  4. Make a PUT request to the href value of the rel="edit" link in the CatalogItem, supplying the modified CatalogItem in the request body.

Example: Change the Name and Description of a Catalog Item

This request changes the name and the description of the catalog item shown in Retrieve a Catalog Item. The request body excludes components such as Link elements and id attributes that were present in the retrieved CatalogItem. These components are ignored if you include them in a request.

Request:
PUT https://vcloud.example.com/api/catalogItem/221
Content-Type: application/vnd.vmware.vcloud.catalogItem+xml
...
<?xml version="1.0" encoding="UTF-8"?>
<CatalogItem
   xmlns="http://www.vmware.com/vcloud/v1.5"
   name="DEPRECATED Ubuntu Template">
   <Description>Deprecated. Use https://vcloud.example.com/api/vAppTemplate/vappTemplate-230 instead </Description>
   <Entity
      href="https://vcloud.example.com/api/vAppTemplate/vappTemplate-111"
      type="application/vnd.vmware.vcloud.vAppTemplate+xml"
      name="Ubuntu Template with vsftpd" />
</CatalogItem>

The response shows the modified CatalogItem.

Response:
200 OK
Content-Type: application/vnd.vmware.vcloud.catalogItem+xml
...
<CatalogItem
   xmlns="http://www.vmware.com/vcloud/v1.5"
   name="DEPRECATED Ubuntu Template">
   <Description>Deprecated. Use https://vcloud.example.com/api/vAppTemplate/vappTemplate-230 instead </Description>
   <Entity
      href="https://vcloud.example.com/api/vAppTemplate/vappTemplate-111"
      type="application/vnd.vmware.vcloud.vAppTemplate+xml"
      name="Ubuntu vApp Template" />
</CatalogItem>