Get External Prices Action

Retrieve the real-time pricing breakdown from an external pricing service for a specific quote line item and its recipients.

This action is available in API version 68.0 and later.

Special Access Rules 

The Get External Prices action is available in Enterprise and Unlimited Editions with Energy and Utilities Cloud. Invoke this action with a clean transaction because the action performs an external callout.

Supported REST HTTP Methods 

URI: /services/data/v68.0/actions/standard/getExternalPrices

Formats: JSON, XML

HTTP Methods: POST

Authentication: Authorization: Bearer TOKEN

Where TOKEN is a variable.

Inputs 

InputTypeDescription
quoteLineItemIdstringRequired.
The ID of the parent quote line item to get pricing details for.
namedCredentialNamestringOptional.
The name of the named credential to use for the external service endpoint callout instead of the default standard credential.
correlationIdstringOptional.
A unique string used as an idempotency key to prevent duplicate service requests. If omitted, the system generates a value automatically.
timeoutMsOverrideintOptional.
The maximum timeout, in milliseconds, to wait for the external pricing service before failing.
partialFailureModestringOptional.
The error-handling execution mode that determines whether the action terminates or continues if a partial processing error occurs.

Outputs 

OutputTypeDescription
isSuccessbooleanIndicates whether the overall execution path and pricing data resolution completed successfully.
errorCodestringThe stable error code string that identifies the root cause of the action invocation failure.
errorMessagestringThe detailed message that explains the root validation or connection problem encountered during runtime.
correlationIdstringThe correlation tracking ID passed back by the external pricing service endpoint.
currencyKeystringThe standard currency value key indicating the denomination used for output amount fields.
recipientPricingResultsListApex[]The list of structured Apex records representing the per-recipient pricing results. Each item contains these fields.
recipientId (string): ID of the recipient.
status (string): Result status, such as SUCCESS or FAILED.
responseMode (string): Response mode, such as INLINE or DEFERRED.
amountValue (number): Priced amount. Returned for inline results.
amountCurrency (string): Currency of the priced amount. Returned for inline results.
lineItemPrices (object[]): Per-line-item price breakdown. Returned for inline results.
trackerId (string): Tracker ID for deferred results.
webhookCallbackUrl (string): Optional webhook callback URL for deferred results.
expectedReadyAt (string): Optional timestamp when deferred results are expected to be ready.
pricingDetailsJson (string): JSON string of additional pricing details.

Example 

POST

This sample request is for the Get External Prices action.

1{
2  "inputs": [
3    {
4      "quoteLineItemId": "0QL000000000001AAA",
5      "namedCredentialName": "ExternalPricing",
6      "correlationId": "0Q0000000000001AAA:0QL000000000001AAA",
7      "timeoutMsOverride": 5000,
8      "partialFailureMode": "CONTINUE"
9    }
10  ]
11}

This sample response is for the Get External Prices action.

1[
2  {
3    "actionName": "getExternalPrices",
4    "errors": null,
5    "invocationId": null,
6    "isSuccess": true,
7    "outputValues": {
8      "isSuccess": true,
9      "errorCode": null,
10      "errorMessage": null,
11      "correlationId": "0Q0000000000001AAA:0QL000000000001AAA",
12      "currencyKey": "USD",
13      "recipientPricingResultsList": [
14        {
15          "recipientId": "18O000000000001AAA",
16          "status": "SUCCESS",
17          "responseMode": "INLINE",
18          "amountValue": 142.75,
19          "amountCurrency": "USD",
20          "lineItemPrices": [],
21          "pricingDetailsJson": "{}"
22        }
23      ]
24    },
25    "sortOrder": -1,
26    "version": 1
27  }
28]