A container (also called "Device" even if it's not a Niagara device) contains data points and a DeviceExt extension.
Each point contains a PointExt extension.
Whenever a change occurs on a point (value or status), a payload is generated (a JSON) containing the value, the status, the timestamp etc. and pushed to the third party database or platform.
Depending on the target architecture, it can be a MQTT message, a document update etc.
Several options are available