Executes a logic and returns results.
The main difference between this and the other executeformula endpoint is that with formulamanager.executeformulaservice the logic context is preserved for subsequent calls or reused if already exists. This allows the logic to build up a cache, as e.g. api.global survives between calls. The system limits the lifetime of such a service as well as the number of available running service instances. To avoid concurrency issues, there is NO parallel execution of this service. Parallel API requests will be brought into an order. If they cannot be executed within a rather short timeframe, the request will fail. Hence it is paramount that especially subsequent requests are executed quickly (by using caching).
Use the output=rawjson
parameter in the URL, for example /formulamanager.executeformula/QuoteLogic?output=rawjson
in order to return the result in the simple JSON format as "resultName"
:result
.
{- "data": {
- "priority": "high",
- "quantity": 14,
- "map": {
- "key": "value"
}
}
}
{- "response": {
- "node": "node",
- "data": [
- {
- "formula": {
- "version": 7,
- "typedId": "2147484837.F",
- "uniqueName": "PriceList",
- "label": "Price List",
- "validAfter": "2021-07-12",
- "status": "ACTIVE",
- "simulationSet": null,
- "userGroupEdit": null,
- "userGroupViewDetails": null,
- "formulaNature": null,
- "lastUpdateByName": "admin",
- "formulaType": "PRICING",
- "createdByName": null,
- "createDate": "2021-11-04T14:56:11",
- "createdBy": 2147490696,
- "lastUpdateDate": "2021-12-08T15:45:57",
- "lastUpdateBy": 2147490696
}
}
], - "status": 0
}
}