The client schema is a client module schema required to implement the front-end part of Creatio. Client schema is an element of a Creatio package. The purpose of the client schema is to save and deploy the metadata of Creatio parts (application, section, pop-up box, etc.). Learn more about module types and their specificities in a separate article: Module types and their specificities.
The Freedom UI page type of the client module schema represents the client schema for Creatio 8 Atlas and later. Learn more about creating a Freedom UI page in a separate article: Client module. Client schema belongs to the Schema layer (the metadata layer) of the DesignTime mode in the Creatio platform and contains the settings of the RunTime mode layers.
View the structural items of the Schema layer and its interaction pattern with other structural items in the Creatio platform in the figure below.

Learn more about DesignTime and RunTime modes in a separate article: Creatio front-end architecture.
The source code of client schemas has a generic structure available below.
Token comments of client schema sections are required.
View the client schema sections in the table below.
|
|
---|---|
modelConfig | Handles the description of the Model layer’s data sources. |
viewConfigDiff | Handles the generation of the View layer. |
viewModelConfig | Handles the generation of the ViewModel layer. The layer contains the business logic for interaction of the View and Model layers. |
validators | Functions that check whether the ViewModel attribute value is correct. |
converters | Functions that modify the value of the ViewModel attribute bound to a property of the visual component. |
handlers | Items of the HandlerChain mechanism which enables you to describe business logic as an action request and a chain of handlers. |
Learn more about layers in a separate article: Front-end Creatio architecture.
Describe the client schema sections in JSON. Implement the behavior of the validators, converters, handlers schema sections in JavaScript.
Learn more about page customization in a separate article: Page customization.
Converters are functions that modify the value of the ViewModel attribute bound to a property of the visual component. View an example of container use in a separate article: Implement the field value conversion on a page.
View the base converters that Creatio 8 Atlas provides below.
Base converters
Converts the values of other types to the BOOLEAN type.
value | ANY | The incoming value. The value whose type is not BOOLEAN. |
result | BOOLEAN | The outgoing value. The converted BOOLEAN type value. |
Converts the BOOLEAN type value to the opposite BOOLEAN type value. For example, if the incoming value is true, the converter returns false, and vice versa.
value | BOOLEAN | The incoming value. |
result | BOOLEAN | The outgoing value. |
Converts an email address to a link by adding the mailTo: prefix.
value | TEXT | The incoming value. The email. |
result | TEXT | The outgoing value. The link to the email. |
Retrieves the value of the specified object property.
value | CUSTOM_OBJECT | The incoming value. The name of the object property. |
result | ANY | The outgoing value. The value of the object property. |
prop required | TEXT | The name of the property to retrieve. |
defaultValue optional | ANY | The value to return if the property does not exist or the response is false. |
Converts the phone number to a link by adding the tel: prefix.
value | TEXT | The incoming value. The phone number. |
result | TEXT | The outgoing value. A link to the phone number. |
Validators are functions that check whether the ViewModel attribute value is correct. For example, whether the record field value matches the specified conditions. View an example of validator use in a separate article: Implement the field value validation on a page
View the base validators that Creatio 8 Atlas provides below.
Base validators
Flags the field as required.
Sets the minimum allowed string length.
minLength | INTEGER | The minimum allowed string length. |
Sets the maximum allowed string length.
maxLength | INTEGER | The maximum allowed string length. |
Sets the minimum allowed value.
min | INTEGER | The minimum allowed value. |
Sets the maximum allowed value.
max | INTEGER | The maximum allowed value. |
Flags the field as required. Field values must not consist of spaces only.
Query handlers are items of the HandlerChain mechanism which enables you to describe business logic as an action request and a chain of handlers. Examples of handler invocation are available in separate articles: Page customization.
Generic query handlers include actions to open pages, work with data on pages, etc.
Generic query handlers available in Creatio 8 Atlas are available below.
Generic query handlers
Creates a record.
Updates a record.
Opens a page.
Saves data.
Cancels a record update.
Runs a business process.
Closes a page.
Initializes a view model instance.
Adds a View model to a container using the attach operation. Available in Creatio 8.0.6 Atlas and later.
Creatio calls the handler when you open a module that has the viewModel parameter.
Changes an attribute of a view model instance.
Removes the View model of the current module from a container using the detach operation. Available in Creatio 8.0.6 Atlas and later.
Creatio calls the handler after calling the HandleViewModelResumeRequest handler when you switch to another module and the current module has the viewModel parameter. Creatio does not call the handler if you open a Freedom UI page and switch to another module before executing the attach operation.
Destroys a view model instance. At this stage, execute only synchronous code that destroys resources accumulated as part of runtime.