Updating a Catalog Item

Update a Catalog Item shows the REST binding to update a catalog item using the CatalogItemId and its revision number.

Table 1. Update a Catalog Item
URL
PUT /data/CatalogItem/{CatalogItemId}/{revision_number}
Input You must define the CatalogItemInfo. Only define the fields you want to modify. For example:
<CatalogItemInfo>
    <ExternalId>GENBASEDATA</ExternalId>
    <Name>DATA 2GB for $20</Name>
    <Description>Get 2GB per month of data</Description>
    <ValueArray>
        <MtxPricingMetadata>
            <Name>DataPurchaseChargeAmount</Name>
            <Type>BigDecimal</Type>
            <Value>20.00</Value>
        </MtxPricingMetadata>
        <MtxPricingMetadata>
            <Name>DataPurchaseGrantAmount</Name>
            <Type>BigDecimal</Type>
            <Value>2</Value>
        </MtxPricingMetadata>
        <MtxPricingMetadata>
            <Name>DataRecurringChargeAmount</Name>
            <Type>BigDecimal</Type>
            <Value>20.00</Value>
        </MtxPricingMetadata>
        <MtxPricingMetadata>
            <Name>DataRecurringGrantAmount</Name>
            <Type>BigDecimal</Type>
            <Value>2</Value>
        </MtxPricingMetadata>
    </ValueArray>
</CatalogItemInfo>
Response The CatalogItemResponse response has the complete definition of the catalog item. For example:
<CatalogItemResponse id="8">
    <Result>0</Result>
    <ResultMessage>OK</ResultMessage>
    <OperationType>update</OperationType>
    <Id>8</Id>
    <Revision>0</Revision>
    <CorrectionNumber>** removed **</CorrectionNumber>
    <ExternalId>GENBASEDATA</ExternalId>
    <Name>DATA 2GB for $20</Name>
    <Description>Get 2GB per month of data</Description>
    <TemplateReference>
        <TemplateReferenceInfo>
            <Id>1</Id>
            <Version>1</Version>
            <IsBundle>false</IsBundle>
        </TemplateReferenceInfo>
    </TemplateReference>
    <StartDate>2022-01-01T00:00:00</StartDate>
    <PurchaseStartDate>2022-01-01T00:00:00</PurchaseStartDate>
    <PurchaseEndDate>2025-01-01T00:00:00</PurchaseEndDate>
    <ParameterBindings>
        <ParameterBindingInfo>
            <FromConstant>12</FromConstant>
            <ToParameterId>1</ToParameterId>
            <ToParameterName>MyParameter</ToParameterName>
            <ToParameterDescription>This is an example.</ToParameterDescription>
            <ToParameterType>string</ToParameterType>
            <BindTo>Constant</BindTo>
        </ParameterBindingInfo>
    </ParameterBindings>
    <MetadataArray>
        <MtxPricingMetadata>
            <Name>MtxDisplay</Name>
            <Type>String</Type>
        </MtxPricingMetadata>
    </MetadataArray>
    <ValueArray>
        <MtxPricingMetadata>
            <Name>DataRecurringGrantAmount</Name>
            <Type>BigDecimal</Type>
            <Value>2</Value>
        </MtxPricingMetadata>
        <MtxPricingMetadata>
            <Name>DataRecurringChargeAmount</Name>
            <Type>BigDecimal</Type>
            <Value>20.00</Value>
        </MtxPricingMetadata>
        <MtxPricingMetadata>
            <Name>DataPurchaseGrantAmount</Name>
            <Type>BigDecimal</Type>
            <Value>2</Value>
        </MtxPricingMetadata>
        <MtxPricingMetadata>
            <Name>DataPurchaseChargeAmount</Name>
            <Type>BigDecimal</Type>
            <Value>20.00</Value>
        </MtxPricingMetadata>
    </ValueArray>
</CatalogItemResponse>