Tip |
---|
Available since version Paper Plane 11.0. |
The Unity Pricefx Messaging API allows the external application frontend to interact with Pricefx Pricefx Unity frontend. Via the API you can ask Unity Pricefx to create a new quote, update or fetch quote inputs, etc.
To enable the Messaging API, set the feature flag feIntegration.active
to true
.
To call Unity Pricefx from the external app frontend, use the window.postMessage() method from JavaScript in the browser.
Example of Unity Pricefx embedded in an external application:
...
In this case, you will attach a handler that logs the message it receives from UnityPricefx, and also will message Unity Pricefx requesting the logged in user data.
...
Example of an external application embedded in UnityPricefx:
Code Block | ||
---|---|---|
| ||
const messageHandler = (event) => console.log(event.data); window.addEventListener(messageHandler); window.parent.postMessage({ "source": "pfxParentMessage", "type": "getUserData" }, *); |
...
The following messages are available for both cases (where Unity Pricefx is either the parent or a child page):
Message type | Payload | Description | Example | Response | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| None | Returns the logged in user data. |
|
| ||||||||||
|
| Gets a header field’s value from the CLIC, i.e. quote displayed. This is only enabled when a detail page is open. |
|
| ||||||||||
|
| Updates a header field’s value. This is only enabled when a detail page is open. |
| None | ||||||||||
| None | Recalculates the CLIC displayed. This is only enabled when a detail page is open. |
| None | ||||||||||
|
| Returns the line items matching the given queryData criteria. This is only enabled when a detail page is open. |
|
| ||||||||||
|
| Adds a list of SKUs to the current CLIC displayed, with the option of filling some of its inputs. This is only enabled when a detail page is open. |
| None |
There are also messages which are exclusive to the case where Unity Pricefx is embedded in an external application, since they manipulate the window location:
Message type | Payload | Description | Example | Response | |||||
---|---|---|---|---|---|---|---|---|---|
|
| Creates a new quote/RBA/contract/compensation plan. Values of this new CLIC can be passed through |
| None | |||||
|
| Navigates |
Pricefx to the given target page. |
| None |
There are also events in Unity Pricefx that will trigger a message. When submitting or recalculating a CLIC, a message will be sent containing all CLIC data, such as:
...