Synchronizing information across multiple EvolutivoFW installations often raises practical questions about workflows, record relationships, and automation. In this post, I collect several interesting support questions related to Node-RED integration, cross-installation data syncing, and the use of cbuuid to simplify relationships between records.
Node-RED integration
I successfully made a Node-RED workflow to copy records from one EvolutivoFW install to another.
I have a doubt: would there be a way to trigger that Node-RED workflow from inside the application? Like sending something to Node-RED from a workflow?
Answer:
Yes, for sure!
Node-RED has a webhook node (http in + http response), where you can send messages to start a flow, and inside the application, you can use the push notification (post webhook) workflow to send the message:

Remember that the Node-RED webhook needs to be accessible by the EvolutivoFW installation and make sure you add some security measures.
Relating records between Evolutivo installations
Following up on the Node-RED integration to synchronize information between two installations. How would you handle the issue of a relationship field that might relate to a record that has a different ID on the other installation? I thought about adding an extra search query and retrieving the ID of the record based on some unique field.
Answer:
To handle UIType 10 relationships across installations, use the cbuuid field.
cbuuid: is a universal unique identifier of the record, which can be used in any web service operation in place of the ID. This permits us to easily share information between different EvolutivoFW installations.
cbuuid was created to be able to share information between coreBOS installs in March 2020. Here is the announcement.
I add a type 5 UUID for each record in the application, which makes it easier to share information between different installations of coreBOS. This is really useful, thinking about having various installs managing different parts of a company and syncing information as they need it.
Shortly, anywhere you can use a web service ID, you can use a cbuuid, and when you retrieve a record, besides its web service ID, you will also get a cbuuid. So these two calls are equivalent
create(Contact, ['firstname' => 'FN', 'accountid' => '11x74'])
create(Contact, ['firstname' => 'FN', 'accountid' => 'adba9f8027ff7f64e1b55860e96cd5b72fc4f58b'])

Synchronizing records between installations
I was thinking about the Node-RED synchronization project and would like to recommend the Web Service Sync endpoint. That endpoint was designed for this use case, it returns a list of all the entities that have changed since a given timestamp, so you could create a node-red node based on a timer, once every 10min, that calls sync and then does the necessary steps.
Wrap up
Synchronizing information between multiple EvolutivoFW installations is fully supported thanks to cbuuid, the Web Service API, and automation tools like Node-RED. Using webhooks, workflows, and the sync endpoint, you can build robust bidirectional synchronization pipelines with minimal custom code.