WebSocket
Real-time data streaming with WebSockets
WebSocket delivery provides real-time data streaming for live dashboards, monitoring applications, and event-driven architectures.
Real-time monitoring is currently only available for Enterprise customers. To upgrade, get in touch with our sales team.
Prerequisites
- A Kadoa account
- Access to an existing team (Team features)
- Get an API key
- SDKs
We strongly recommend using our SDK for real-time updates. The SDK handles the connection, authentication, message acknowledgement, message replay and auto-reconnect. If you need to implement a native WebSocket integration, please contact us.
Message Format
All messages are JSON objects with the following fields:
Always present:
type
: The type of the message.timestamp
: The timestamp of the message.
Optional depending on the type:
data
: The data of the message.id
: The ID of the message used for acknowledgement.
Message Types
workflow_data_change
This message is sent when a workflow data changes.
Fields:
The change ID of the workflow. You can also retrieve the change with screenshot over the /changes endpoint or view the change in the Kadoa dashboard like: https://www.kadoa.com/data-diff/ID
The ID of the workflow. Accessible over the /workflows endpoint or the Kadoa dashboard like: https://www.kadoa.com/workflow/WORKFLOW_ID
The data of the workflow. Full snapshot of the data at the time of the change.
Structured representation of changes with object-based diffing. For an explanation of the differences format, please refer to the monitoring API documentation.
The URL of the page the workflow is monitoring.
The timestamp in ISO format when the change was detected.
Example:
heartbeat
Reconnection logic is handled by the SDK. If you implement a native WebSocket integration, you might need to handle reconnections yourself.
This message is sent every 15 seconds. It’s used to keep the connection alive. If you don’t receive a heartbeat after 30 seconds, the connection is considered lost, reconnection is needed.
Example: