Overview
- The TMF637 API provides a standardized client interface to Inventory Management Systems to retrieve product inventory information.
- Following block diagram provides a high-level overview of how the various components are involved in handling TMF 637 API operation (GET).
Currently, you can perform the following operation product resource using TMF637 API:
- Retrieval of a product or a collection of products depending on filter criteria
In general, we can consider the various use cases listed based on the operation you want to perform.
It is assumed that you have completed the following.
- Enabling Access to Industry APIs
- Ensuring that the required licenses and data packs are installed. For more information, see Before you begin.
Following block diagram provides a sequence of operations involved.
NOTE:
- For mandatory fields and resource mappings, refer TMF637 Resource Mappings
- For more information on supported Integration Procedures, Data Raptors, Apex Interfaces, Custom Metadata, refer Extend TMF637 API.
I want to | Request Type | Example URL |
---|---|---|
Retrieve and display details of a requested product entity | GET by ID | {https NOTE: For invalid product ID, you will receive HTTP 404 error. |
Based on the provided field values, retrieve and display details of a particular product ID. For example, name of the product, and description. | GET by ID and Fields | {https |
List all the products present in the inventory. | GET List | {https |
List all the product present in the inventory based on the provided field values. | GET List with Fields | {https |
List all the products present in the inventory based on the provided field values and filter applied. | GET List by Fields and Filtering | {https |
Limit the number of products to a maximum of specified limit and display results from the page specified by an offset. | GET List by limit and offset | {https |
Consider you want to retrieve details of a product from the inventory. For example, product ID = 1b55a381-1782-56d6-a90a-2030798d6e4b
NOTE:
- vlocity__cmtAssetReferenceId__c is used as unique identifier.
- Sample response is considering V2 model is disabled. If enabled, the valueType in productCharacteristic will not appear.
- The field
terminationDate
is supported only if the LifecycleManagement license is present. Specifically, the Addon License AssetLifecycleManagementAddon should be present. - The Product Characteristics are mapped to Asset.AttributeSelectedValues__c if V2 attributes are enabled.
https://vlocity-1f5-dev-ed.develop.my.salesforce.com/services/apexrest/vlocity_cmt/tmforum/productopenapi/v1/product/1b55a381-1782-56d6-a90a-2030798d6e4b
Consider you want to retrieve details of the product ID = 1b55a381-1782-56d6-a90a-2030798d6e4b and get the name
and description
details in the output.
NOTE:
- Id, href, productOffering details are always returned, if present.
https://vlocity-1f5-dev-ed.develop.my.salesforce.com/services/apexrest/vlocity_cmt/tmforum/productopenapi/v1/product/1b55a381-1782-56d6-a90a-2030798d6e4b?fields=name,description
Consider you want to retrieve details of all the products in the inventory.
https://vlocity-1f5-dev-ed.develop.my.salesforce.com/services/apexrest/vlocity_cmt/tmforum/productopenapi/v1/product
NOTE:
- Sample response assumes there are 3 products in the inventory, displays all the sub-resources, if present.
- Sample response is considering V2 model is disabled. If enabled, the
valueType
in productCharacteristic will not appear.
Consider you want to retrieve all the products by applying the requested fields.
https://vlocity-1f5-dev-ed.develop.my.salesforce.com/services/apexrest/vlocity_cmt/tmforum/productopenapi/v1/product?fields=name,isBundle,isCustomerVisible,orderDate,description,status,productSerialNumber,startDate
NOTE:
- The requested fields will be part of output if they have value.
- The sample output is assuming the total products in the system is 3.
- Sample response is considering V2 model is disabled. If enabled, the
valueType
in productCharacteristic will not appear. - Id, href, productOffering are always returned, if present.
- Sub-resources are not supported as field selection.
Consider you want to retrieve all the products by specified filter.
https://vlocity-1f5-dev-ed.develop.my.salesforce.com/services/apexrest/vlocity_cmt/tmforum/productopenapi/v1/product?status=Ready for review&name=Testing Asset&productSerialNumber=123&fields=name,isBundle,isCustomerVisible,orderDate,description,status,productSerialNumber,startDate
NOTE:
- Filtering is enabled for: status, name, productSerialNumber, description
- Recommendation for filtering for description.
- Use full word search.
- Wildcard are only for suffix. For example, to search ‘Sample’, use ?description=Sam or ?description=Sampl
- Id, href, productOffering are always returned, if present.
Consider you want to retrieve perform the following.
- Limit the number of products to a maximum of specified limit
- Display results from the page specified by an offset
https://vlocity-1f5-dev-ed.develop.my.salesforce.com/services/apexrest/vlocity_cmt/tmforum/productopenapi/v1/product?limit=1&offset=3
NOTE:
- Sample response is considering V2 model is disabled. If enabled, the valueType in productCharacteristic will not appear.
- If the total products are 3, the above pagination query - **limit=1&offset=3 **will start display from page 3 and will have 1 record.