Manage Product Configuration (POST)

Use the Product Configuration API to retrieve and update a product’s configuration from a configurator. This API runs configuration rules and notifies users of any violations for changes to product bundles, attributes, or product quantities within a bundle. Additionally, this API gets pricing details for the configured bundle. The API takes a transaction line ID, transaction ID, correlation ID, and configurator options as a request and provides the details of updated product configuration in a configurator as per the requested resource.

Resource 

1/connect/consumer/configure

Resource Example 

1https://YOUR_INSTANCE.salesforce.com/services/data/v66.0/connect/consumer/configure

Where, YOUR_INSTANCE is a variable.

Available Version 

66.0

HTTP Methods 

POST

Request Body for POST 

JSON Example 

This example shows a sample to initiate a context based on a transaction ID.

1"configuratorRequest": {
2    "transactionLineId": "0QLDE000000IBXw4AO",
3    "transactionId": "0Q0xx0000000001GAA",
4    "correlationId": "c95246d4-102c-4ecd-a263-f74ac525d1e5",
5    "configuratorOptions": {
6        "executePricing": true,
7        "returnProductCatalogData": true
8    },
9    "qualificationContext": {
10        "accountId": "001xx0000000001AAA",
11        "contactId": "003xx00000000D7AAI"
12    }
13}

This example shows a sample to add, update, or delete a node in an existing context.

1{
2    "transactionLineId": "0QLDE000000IBXw4AO",
3    "transactionId": "0Q0DE000000ISHJs81",
4    "correlationId": "c95246d4-102c-4ecd-a263-f74ac525d1e5",
5    "configuratorOptions": {
6        "executePricing": true,
7        "returnProductCatalogData": true,
8        "qualifyAllProductsInTransaction": true,
9        "validateProductCatalog": true,
10        "validateAmendRenewCancel": true,
11        "executeConfigurationRules": true,
12        "addDefaultConfiguration": true
13    },
14    "contextResponseType": "Full",
15    "qualificationContext": {
16        "accountId": "001xx0000000001AAA",
17        "contactId": "003xx00000000D7AAI"
18    },
19    "transactionContextId": "008d27d7-e004-4906-a949-ee7d7c323c77",
20    "addedNodes": [
21        {
22            "path": ["0Q0DE000000ISHJs81", "sti2_id"],
23            "addedObject": {
24                "id": "ref_sti2_id",
25                "SalesTransactionSource": "sti2_id",
26                "PricebookEntry": "01uxx0000000001AAA",
27                "ProductSellingModel": "0jPxx0000000001AAA",
28                "businessObjectType": "QuoteLineItem",
29                "Quantity": 10,
30                "UnitPrice": 2.0,
31                "Product": "01txx0000000001AAA"
32            }
33        },
34        {
35            "path": ["0Q0DE000000ISHJs81", "ref_sti2_id","ref_stir1_id"],
36            "addedObject": {
37                "id": "ref_stir1_id",
38                "businessObjectType": "QuoteLineItemRelationship",
39                "MainItem": "0QLDE000000IBXw4AO",
40                "AssociatedItem": "ref_sti2_id",
41                "ProductRelatedComponent": "0dSxx0000000001AAA",
42                "ProductRelationshipType": "0yoxx0000000001AAA",
43                "AssociatedItemPricing": "IncludedInBundlePrice"
44                
45            }
46        }
47    ],
48    "updatedNodes": [
49        {
50            "path": ["0Q0DE000000ISHJs81", "0QLDE000000IBXw4AO"],
51            "updatedAttributes": {
52                "Quantity": 5
53            }
54        }
55    ],
56    "deletedNodes": [
57        {
58            "path": ["0Q0DE000000ISHJs81", "0QLDE000000IBXw4AO"]
59        }
60    ]
61}

Properties 

NameTypeDescriptionRequired or OptionalAvailable Version
added​NodesConfigurator Added Node Input[]List of added context nodes that’s passed to the product configurator.Optional60.0
configurator​OptionsConfigurator Options Input[]Options to pass to the configurator.Optional60.0
context​ResponseTypeStringSpecifies the type of transaction context response. Valid values are:
  • Delta—Returns the sales transaction items that are added or updated.
  • Full—Returns all sales transaction items in a transaction.
  • None—Returns empty transaction context response.
  • Product—Returns the sales transaction items related to the product that’s being configured.
Required for large sales transactions with more than 1000 line items and less than 15K line items.65.0
correlation​IdStringID that’s specified for traceability of logs.Optional60.0
deleted​NodesConfigurator Deleted Node Input[]List of deleted context nodes that’s passed to the product configurator.Optional60.0
qualification​ContextUser Context Input[]Details such as account ID, contact ID, and context ID that are used for executing qualification rules.Optional60.0
transaction​ContextIdStringID of the transaction context.Optional60.0
transaction​IdStringID of the sales transaction that’s being configured such as a quote or an order.Required60.0
transaction​LineIdStringID of the top-level line item that’s being configured.Optional60.0
updated​NodesConfigurator Updated Node Input[]List of updated context nodes that’s passed to the product configurator.Optional60.0

Response Body for POST 

Configuration Details