A message containing data that is used to assess the decision logic is referred to as a data object. You are able to upload a sample of your data object to the platform to speed up the development and testing of rules.
This enables you to test your decision flow using actual data, confirming that it is working as intended and assisting you in finding any potential problems before implementing it in a live environment. You can save time and effort during application development and increase the dependability of your decision flow by uploading a sample data object.
Data objects are listed under Data objects in the left menu. The + Data object button opens the Add data object form, which has a Title field and an optional example file in .json, .js, or .txt format. If you choose a file, the portal creates the attributes from its JSON structure. Without a file, you add the attributes by hand.

Before upload, the portal checks the file for personal data. If it finds any, it shows Potential personal data detected and what it found, such as a physical address and its field name. The Create button stays disabled until you select I confirm this is synthetic or test data and contains no real personal information. Do not upload real personal data. Use synthetic data.

Your core system sends a data object in JSON format to an endpoint as a decision flow is being executed. The decision logic is then assessed by the engine at the endpoint using the data in the data object, and it is then enhanced with the findings of the assessment.
You can manually define each attribute or import a JSON structure to set up the data object for use in the decision flow. Decisimo uses JSON Path to access and modify the data object's attributes.
Using the JSON Path syntax, you can extract and modify the data as necessary by choosing particular elements from a JSON document. You can efficiently interact with the data object and use the information it contains to inform your decisions by using JSON Path.
The data object page lists one row for each attribute. Each row shows the attribute mapping, such as $.contact_details.address.city, the dummy value, and actions to edit inline, open the full edit form, or delete the attribute. Add attribute adds one attribute by mapping path and dummy value. The full edit form has Name, Attribute mapping, Data type, Dummy value, and Constraints fields. Data type options are String, Integer, Float, Boolean, and Date.

Constraints record the values an attribute is expected to take. Each constraint is a Min/Max range with a lower and upper bound, a List of comma-separated allowed values, or a Regex pattern. Add constraint adds a constraint row.

The toolbar button with the document icon opens Visualized data object. It shows the attributes as one JSON document and provides Copy to clipboard and Save. You can edit the JSON and save it to replace the attributes. Invalid JSON shows an error and is not saved.

The portal uses your data object to suggest a path for the attribute in your logic definition. This makes it easier to define your decision logic.
Here is an example where portal suggests the JSON path of the attribute $.contact_details.address.city when you define a decision table:

When you type $. followed by letters in a decision table, the matching attribute paths appear with the data object each comes from. For example, $.contact_details.address.city can come from SME lending: Application. The same suggestions appear in a rule set or other logic when Use in autosuggest is set to Yes.
The settings button, shown as a gear with a dropdown arrow, opens Options, Make a copy, Re-upload, Download, Generate variant, and Delete. Options opens a form with Title and Use in autosuggest, which can be set to Yes or No. Clicking the title in the page header opens the same form. With Yes, the data object's attribute paths are suggested when you type a path in a decision table, rule set, or other logic. With No, they are not suggested.

Make a copy asks for confirmation with Create a copy of

If you are unfamiliar with the concept of JSONPath, you can learn more about it by reading additional materials on the topic. Read more about working with JSONPath.