---
schema_version: "1"
id: 6cf49b82abbdd7a7b2b88205f46790b33454dbf4358d333488265cb818baf73f
title: Catalog Resource Mappings
collection: developer
version: current
locale: en-us
portal_url: https://docs.salesforce.com/developer/current/en-us/industries-integrations/comms/guides/Resource_mappings/catalog.md
canonical_url: https://developer.salesforce.com/docs/industries/communications/guide/catalog.html
source_site: developer.salesforce.com
content_type: documentation
content_hash: 351ee1f15a3c8d2a4588340d68618dd68a704c7d9eaea4062f7e9fa131598c2b
products:
  - Communications Cloud TM Forum API
  - Industries Integrations
---
# Catalog Resource Mappings

## Constraints and Limitations

Before using the TMF620 catalog resource mappings, refer the following.

- The ids and names sent in the subResource (category / relatedParty) must be present in the system to create a new relationship.
- The names of the catalogs are unique when patching. Ensure that `name` field remains unique in the PATCH request.
- Creation of `href` in the response body is not supported.
- Catalog code field is populated with same value as catalog name by replacing all the spaces present in the catalog name.
- There is only one entity in the RelatedParty array.
- Fields `name`, `id` and `role` are used to find the matching related party.
- If there exists a Catalog in database with catalog code matching the `name` attribute (after replacing the spaces from name) or if there exists a Catalog in database with Catalog code matching the value coming in `CatalogCode__c` mapping, then these will result in failure of POST API as these catalogs are already present in the database.
- Assigning of default PriceList to a catalog is implemented through a separate Data Mapper (VPL-TMForumGetDefaultPriceList). This DR is invoked when the TMFTMForumCreateCatalog VIP is invoked. Implementation teams can change the functionality of the DR to assign a different PriceList value.
- The CreateCatalog POST API can also handle creation of multiple catalogs when invoked from the category resource.
- The `@type` attribute from the request is used to differentiate between catalog request and category request. Absence of this attribute in the request will result in failure of the POST API.

| TMF Field<div style="width:120px"></div> | Type<div style="width:120px"></div> | Description<div style="width:120px"></div>                        | Salesforce Mapping<div style="width:120px"></div>                 | Salesforce Description<div style="width:120px"></div>                                                                        | Is mandatory?<div style="width:120px"></div> | Prerequisite <div style="width:120px"></div>           |
| ---------------------------------------- | ----------------------------------- | ----------------------------------------------------------------- | ----------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------- | ------------------------------------------------------ |
| href                                     | string                              | Specifies a unique reference of the catalog.                      | TMF Catalog URL + vlocity_cmt\_\_Catalog\_\_c.Id                  | Specifies the GET URL of the TMF catalog that ends with the ID field.                                                        | No                                           | NA                                                     |
| id                                       | string                              | Specifies a unique identifier of the catalog.                     | vlocity_cmt\_\_GlobalKey\_\_c                                     | Unique identifier of the catalog.                                                                                            | No                                           | NA                                                     |
| description                              | string                              | Describes the catalog.                                            | vlocity_cmt\_\_Description\_\_c                                   | Describes the catalog.                                                                                                       | No                                           | NA                                                     |
| lifecycleStatus                          | string                              | Specifies the current lifecycle status.                           | vlocity_cmt\_\_IsActive\_\_c                                      | Specifies if the catalog is active. Values for lifecycleStatus are Active and Inactive.                                      | No                                           | NA                                                     |
| name                                     | string                              | Required. Specifies the name of the catalog.                      | Name                                                              | Specifies the name of the catalog.                                                                                           | Yes                                          | The catalog name must be unique in the Salesforce org. |
| validFor - startDateTime/endDateTime     | object                              | Specifies the period for which the catalog is valid.              | vlocity_cmt\_\_StartDateTime\_\_c/vlocity_cmt\_\_EndDateTime\_\_c | Specifies the validity of the catalog.                                                                                       | No                                           | NA                                                     |
| relatedParty                             | array                               | Defines a party or party role that's linked to a specific entity. | vlocity_cmt\_\_VendorAccount\_\_c                                 | Specifies the field that's derived from the vendor column of the catalog object.                                             | No                                           | Use an existing account.                               |
| @type                                    | string                              | Defines the subclass extensible name when subclassing.            | Resource name (Catalog)                                           | The @type attribute differentiates between the catalog and category request and doesn't have a direct mapping in Salesforce. | Yes                                          | NA                                                     |
| isRoot                                   | boolean                             | If true, this indicates that the catalog is a root of catalog.    | vlocity_cmt\_\_IsCatalogRoot\_\_c                                 | Specifies if the parent catalog is root catalog or child catalog.                                                            | No                                           | NA                                                     |

## RelatedParty Sub-resource Mappings

| TMF Field<div style="width:120px"></div> | Type<div style="width:120px"></div> | Description<div style="width:120px"></div>                                       | Salesforce Mapping<div style="width:120px"></div> | Salesforce Description<div style="width:120px"></div>                 | Is mandatory?<div style="width:120px"></div> | Prerequisite<div style="width:120px"></div> |
| ---------------------------------------- | ----------------------------------- | -------------------------------------------------------------------------------- | ------------------------------------------------- | --------------------------------------------------------------------- | -------------------------------------------- | ------------------------------------------- |
| name                                     | string                              | Specifies the name of the related party.                                         | Name                                              | Specifies the name of the account.                                    | No                                           | NA                                          |
| href                                     | string                              | Specifies the hyperlink reference of the related party.                          | TMF Account URL + Account.Id                      | Specifies the GET URL of the TMF catalog that ends with the ID field. | No                                           | NA                                          |
| id                                       | string                              | Specifies the unique identifier of the related party.                            | Account.AccountNumber                             | Specifies the external ID for the specified account.                  | Yes                                          | Use an existing account.                    |
| role                                     | string                              | Specifies the role played by the related party.                                  | Account.RecordType.Name                           | Specifies the record type of the account.                             | No                                           | Use an existing account.                    |
| @referredType                            | string                              | Specifies the actual type of the target instance when needed for disambiguation. | Schema object name (Account)                      | Specifies that the sObject type is Account.                           | No                                           | NA                                          |
| @type                                    | string                              | Defines the subclass extensible name when subclassing.                           | JSON representation type (RelatedParty)           | Specifies the vendor account.                                         | No                                           | NA                                          |

## Category Sub-resource Mappings

| TMF Field<div style="width:120px"></div> | Type<div style="width:120px"></div> | Description<div style="width:120px"></div>                                       | Salesforce Mapping<div style="width:120px"></div>         | Salesforce Description<div style="width:120px"></div>                 | Is mandatory?<div style="width:120px"></div> | Prerequisite<div style="width:120px"></div> |
| ---------------------------------------- | ----------------------------------- | -------------------------------------------------------------------------------- | --------------------------------------------------------- | --------------------------------------------------------------------- | -------------------------------------------- | ------------------------------------------- |
| name                                     | string                              | Specifies the name of the Category.                                              | Name                                                      | Specifies the name of the account.                                    | No                                           | NA                                          |
| href                                     | string                              | Specifies the hyperlink reference of the category.                               | TMF Category URL + vlocity_cmt\_\_Catalog\_\_c.ID         | Specifies the GET URL of the TMF catalog that ends with the ID field. | No                                           | NA                                          |
| id                                       | string                              | Specifies the unique identifier of the category.                                 | vlocity_cmt\_\_Catalog\_\_c.vlocity_cmt\_\_GlobalKey\_\_c | Specifies the external ID for the specified account.                  | Yes                                          | NA                                          |
| @referredType                            | string                              | Specifies the actual type of the target instance when needed for disambiguation. | vlocity_cmt\_\_Catalog\_\_c                               | Specifies that the sObject type is Account.                           | No                                           | NA                                          |
| @type                                    | string                              | Defines the subclass extensible name when subclassing.                           | JSON representation type (CategoryRef)                    | Specifies the category reference.                                     | No                                           | NA                                          |
