Kitchen Planner URL Parameters
The application can be configured for a specific runtime experience using URL query parameters added.
This section lists all supported URL parameters.
Foreword
Additional to the application distribution settings, the kitchen planner can be configured with URL query parameters to be added in the planner frame URL (See how to embed the Kitchen planner 🔗).
Example: https://kitchenUrl.by.me/Kitchen/?param1=value1&booleanParam¶m3=value3
Note: these parameters have to be added to the embedded planner URL, i.e the iframe src attribute.
Supported Parameters
ln
This parameter overrides the default locale set-up in the application distribution parameters (See the locales Application Distribution parameter 🔗).
If this URL parameter is not set, the planner uses the default locale set-up in the application distribution parameters.
Note: the
ln
parameter must correspond to thename
of one of the defined locales from thelocales
application distribution parameter.
Example: {plannerURL}?ln=en-US
currency
This parameter defines the currency to use in the application. If set, it must be one of the currency codes defined in the application distribution parameters (See the currencies Application Distribution parameter 🔗).
If this URL parameter is not set, the planner uses the locale-currency configuration to determine which currency to use (see GET /applications/{id}/currencylocales/{locale} 🔗).
Example: {plannerURL}?currency=EUR
projectId
This parameter is used to load a project, instead of loading the default project.
If this URL parameter is not set, the planner loads the default project instead.
Example: {plannerURL}?projectId=xxxx-yyyy-zzzz
HQRDbID
This parameter is used to open the planner with the point of view of an HQ rendering when its project is loaded. It must be used along with the projectId
URL parameter (ignored otherwise).
Note: the
HQRDbID
parameter must correspond to a valid HQ rendering ID that belongs to theprojectId
used.
Example: {plannerURL}?projectId=xxxx-yyyy-zzzz&HQRDbID=12345
mode
This parameter is used to launch the planner in a particular mode. Here is the list of supported modes.
Mode | Description |
---|---|
DefaultProjectCreation | Use this mode to create and configure default projects |
For more information, refer create default project 🔗.
Example: {plannerURL}?mode=DefaultProjectCreation
beta / appBeta
This parameter is used to launch the planner in beta mode in order to test the pre-released features. In this mode, the planner includes additional features that are ready for test before their integration in the Kitchen standard product.
This is a boolean parameter, no value required.
Example: {plannerURL}?appBeta
or {plannerURL}?beta
disableRecovery
This parameter controls if the recovery feature is active or not, for "not logged-in" users.
By default, the planner displays a pop-in at startup that proposes to recover the project from the cache if it finds one (meaning the planner was closed without saving last time).
However if the disableRecovery
parameter is set, this pop-in is not displayed in the case of not logged-in users only.
Note: if an already logged-in user launches the planner and the planner finds an unsaved project in cache, the recovery pop-in will always be displayed, even if the
disableRecovery
parameter is provided in the URL. This parameter only controls the workflow for not logged-in users.
For more information, refer recover project.
It is a boolean parameter, no value required.
Example: {plannerURL}?disableRecovery
Note:
This parameter only controls the recovery feature for "not logged-in" users.
If a user launches the planner and is already logged in, the recovery pop-in will always be displayed, if applicable, even if thedisableRecovery
parameter is provided in the URL.
marketZone
This parameter is used to determine which price to display and calculate when a product has several prices that depends on a market zone. The market zone is also an application distribution parameter (see here 🔗) which can be used to determine which catalog of products to show on a given market zone. If both parameters are set, the url parameter has the priority (convenient for testing purpose).
Here is an example of the prices attribute set on a product in a json format:
"prices":
[
{
"typePrice": "regular",
"price": 10,
"startDate": null,
"endDate": null,
"currency": "EUR",
"additionalInformations": "[]",
"reference": null,
"marketZone": "west-eu1"
},
{
"typePrice": "regular",
"price": 20,
"startDate": null,
"endDate": null,
"currency": "EUR",
"additionalInformations": "[]",
"reference": null,
"marketZone": "west-eu2"
},
{
"typePrice": "membership",
"price": 5,
"startDate": "2019-10-24T00:00:00.000Z",
"endDate": "2021-01-31T00:00:00.000Z",
"currency": "EUR",
"additionalInformations": "null",
"reference": null,
"marketZone": null
},
{
"typePrice": "discounted",
"price": 5,
"startDate": "2019-10-24T00:00:00.000Z",
"endDate": "2021-01-31T00:00:00.000Z",
"currency": "EUR",
"additionalInformations": "null",
"reference": null,
"marketZone": null
},
{
"typePrice": "ecoFee",
"price": 2,
"startDate": null,
"endDate": null,
"currency": "EUR",
"additionalInformations": "null",
"reference": null,
"marketZone": "west-eu1"
},
{
"typePrice": "ecoFee",
"price": 4,
"startDate": null,
"endDate": null,
"currency": "EUR",
"additionalInformations": "null",
"reference": null,
"marketZone": "west-eu3"
}
]
If the market zone is set to west-eu1
in the url, the prices that do not have the same market zone as the one in the url will be ruled out and won't appear in the app. Then the displayed prices for this example product will be:
regular: 10
membership: none
ecofee: 2
Same logic if the market zone is set to west-eu2
:
regular: 20
membership: 5
ecofee: none
If no market zone is set in the url, then prices that do not match this market zone will be ruled out and the first price that appears in the json without any market zone for a given type will be displayed:
regular: none
membership: 5
ecofee: none
Example: {plannerURL}?marketZone=west-eu1
Afterword
Choosing between several Application Distributions is not performed in the URL, but by iFrame message. The selection is performed by setting the proper distributionID in the Authentication message.