Page JSON Overview
Aptean Mesh uses a Server-Driven UI (SDUI) architecture. Every screen in the Android client is defined as a JSON document authored in Business Central (BC). The client does not contain hard-coded layouts -- it receives JSON page definitions at runtime, parses them, and renders the corresponding UI components.
Page Structure
This reference documents the top-level types that make up an Aptean Mesh page definition. Every property name matches the Kotlin source in LatticeClient exactly.
Components Reference
This page documents every UI component type available in Aptean Mesh page definitions. All property names and defaults are taken directly from the Kotlin source in MeshClient.
Actions Reference
Actions define behaviors triggered by user interactions or page lifecycle events in Aptean Mesh. They are declared inside the contract.actions array and referenced by id from components, the contract's initialAction/scanAction, or other actions.
Commands Reference
Commands are instructions sent from the AL backend to the Aptean Mesh client as part of an API action response. Unlike actions (which are defined in the page JSON and triggered by user interaction), commands are returned dynamically by server-side logic to control client behavior after an RPC call completes.
Filters Reference
Filters allow users to refine the data displayed on an Aptean Mesh page. They are declared in the contract.filters array and rendered in a filter panel (or inline as selector components). When a user changes a filter value, the associated filter action re-fetches data from the AL backend with the updated filter parameters.
Step Engine Reference
The step engine powers guided, multi-step workflows in Aptean Mesh. Instead of building a separate page for each interaction, a workflow page hosts a step input component that dynamically renders the current step based on JSON metadata returned by Business Central (BC).
Data Contract
The contract object in a page JSON definition controls how the page interacts with AL backend services -- what data to load on startup, how to handle barcode scans, which actions are available, and which filters to display. It is the bridge between the declarative UI layout and the imperative business logic in Business Central.