2 - How Censhare and HCMS work together
Data flow between Censhare and HCMS
Note Not each Censhare asset is consumed by HCMS. Which assets are affected is managed through domains and output channels.
But the general principle is that any changes made on the affected assets will be reflected in both systems.
HCMS serves data to some UI, a user working with this UI changes the entity, e.g., its metadata or the storage item, and this change will be immediately propagated to the Censhare system, changing the corresponding asset and its metadata. Changes made through the HCMS can either be added to the asset history as-is, i.e., for any new change there will be a new asset version, or they can be squashed into one version.
HCMS can serve the data directly to a frontend/UI or pass it to a third-party system that does some further preparations or transformations before serving it to its own frontend (if any).


However, HCMS does not check out any assets. Usually, this is not a problem.
Implementing a custom business logic
Apart from "simple" changes on Censhare assets, HCMS allows to implement more complex custom business logics. There are several methods for doing this.
Sharing or segregating data with multiple HCMS instances
Multiple HCMS instances can consume and modify data on the same censhare Server using different sets of schemas. All of this needs to be implemented directly in the censhare system by tagging assets with the corresponding output channels. This design allows re-using data from the censhare Server in more than one application. As a consequence, the same asset can be served in different ways, e.g., with different permissions.

It is also possible to do the opposite: to segregate data, so that certain assets are only accessible for certain HCMS instances.
Creating new master data from HCMS
HCMS is even capable of creating new master data in the Censhare system. For this, in an entity schema, you can specify any non yet existing master data (like asset type or feature), and it will be reproduced in Censhare upon next use of the schema. This, however, needs to be explicitly enabled in the HCMS configuration as explained here.
Please note that it is not possible to differentiate between master data created by HCMS and the rest of the master data.
Using webhooks
Any custom business processes in your application can be implemented through webhooks. Those are HTTP requests that are invoked when the consumed asset is being modified through the HCMS. A webhook calls a remote URL.

Webhooks are specified in the JSON schema of the entity and specify which operations are allowed. Other operations with the entity will be rejected. For more information on HCMS webhooks please check this article.
HCMS can also invoke XSLT transformations on Censhare Server allowing you to extend Censhare Server customizations without starting everything from scratch.