Mapping turns an API's raw response into clean columns that your components can display. You set it at the connector's Model step, on a graph.
One connector can have several entities linked together (a customer has orders): these are relations.
After an OpenAPI import, the DTOs, entities and mapping are generated. Often, all that is left is fine-tuning.
The graph's toolbar offers Fit view, Auto Layout, Filter (show only what concerns some actions) and Add Model (new entity, empty DTO…).
Right-click a node:
On a column: New column, Set as identifier, Edit path, Delete column.
Data is often not at the root of the response, but for example in data.items. Configure path opens "Where is…?": add one step per level (Add a step, Property name, then List or Object). Leave it empty if the response is already the object.
Paths use simple JSONPath notation: $, names, indexes and [*].
The API returns { "data": { "items": [ … ], "total": 120 } }: add the step data (Object), then items (List). Each element of items becomes a row.
In an entity's mapping view, Add block inserts a transformation between the API and the column:
Try it then Run tests a block on a sample value. Blocks that cannot be reversed are read-only: the column is not written back to the API.
A value that does not match its column's type (text in a Numeric column) causes the error "A value does not match its column's type". An empty string is read as a missing value, except in a Text column.
To check the result, run the action at the Preview step (see Actions).