Get Details of Product

For all disqualified promotions or products, get a message about which rule conditions failed. Return information about why a product or promotion was disqualified.

GET /v2/cpq/carts/{cart_ID}/products/{pricebook_entry_ID}?include=qualifications&ruleType=Qualification

or

GET v2/cpq/carts/{cart_ID}/promotions/{promotion_ID}?include=qualifications&ruleType=Qualification

This API supports the guest user enhancements that Salesforce introduced with the Winter ‘21 release. To encrypt and decrypt data for guest users, use the UserSecurity class with this API. See Guest User Technical Details.

For additional information, ​see UserSecurity Class and CPQ and Digital Commerce Changes for Guest Users.

Remote Method

getRuleMessages

REST Handler

APIProductsCartsCpqV2

Apex Remote Service

CpqAppHandler

Apex Remote Input Map

{
  methodName: getRuleMessages
  ruleEvaluationInput: null
  ruleType: Qualification
  include: qualifications
  id: <pricebookentryId/promotionId>
  cartId:<cartId>
}

Package

Communications (vlocity_cmt)

API Parameters and Response Format

For API parameter names and descriptions, see Cart-Based API Swagger Reference.

Resource Information

Response Format JSON
Resource URL /services/apexrest/{namespace}/v2/cpq/carts/801f4000000kCNPAA2/products/01uf4000000sMtjAAE?include=qualifications&ruleType=Qualification
Resource URL /services/apexrest/{namespace}/v2/cpq/carts/801f4000000kCNPAA2/promotions/a2ff4000000LUCDAA4?include=qualifications&ruleType=Qualification

Example Request

GET
/services/apexrest/vlocity_cmt/v2/cpq/carts/801f4000000kCNPAA2/products/01uf4000000sMtjAAE?include=qualifications&ruleType=Qualification

Example Response

{
   "totalSize": 1,
   "messages": [],
   "records": [{
      "messages": [],
      "displaySequence": -1,
      "id": "01uf4000000sMtjAAE",
      "name": "TestProd-2",
      "product2id": "01tf4000000YyZyAAK",
      "product2.description": "TestProd-2",
      "qualifications": {
         "totalSize": 1,
         "messages": [],
         "records": [{
            "messages": [{
               "severity": "WARN",
               "messageId": null,
               "message": "ruleset: accName is not acc-4",
               "code": "207",
               "bundleId": null,
               "actions": {}
            }],
            "displaySequence": -1,
            "name": "Ruleset-5",
            "type": "ruleset",
            "qualifications": {
               "totalSize": 1,
               "messages": [],
               "records": [{
                  "messages": [{
                     "severity": "WARN",
                     "messageId": null,
                     "message": "accountName is not acc-4",
                     "code": "207",
                     "bundleId": null,
                     "actions": {}
                  }],
                  "displaySequence": -1,
                  "name": "accountName is acc-4",
                  "code": "accountName is acc-4",
                  "type": "rule",
                  "qualifications": {
                     "totalSize": 2,
                     "messages": [],
                     "records": [{
                        "messages": [{
                           "severity": "WARN",
                           "messageId": null,
                           "message": "rsCond: accName is not acc-4",
                           "code": "301",
                           "bundleId": null,
                           "actions": {}
                        }],
                        "displaySequence": -1,
                        "code": "accountName is acc-4-con-1",
                        "type": "rulecondition"
                     }, {
                        "messages": [{
                           "severity": "WARN",
                           "messageId": null,
                           "message": "channel is not web",
                           "code": "301",
                           "bundleId": null,
                           "actions": {}
                        }],
                        "displaySequence": -1,
                        "code": "cod-2-1-1",
                        "type": "rulecondition"
                     }]
                  }
               }]
            }
         }]
      }
   }]
}