Skip to content
Stand with Ukraine flag

Push to Edge

Use this node on a cloud instance to selectively push data to one or more ThingsBoard Edge instances — for example, distributing firmware configuration updates only to edges that need them, or synchronising alarms to the relevant edge for local processing.

  • Attributes scope — required. Default attribute scope for attribute-related messages (SERVER_SCOPE, CLIENT_SCOPE, or SHARED_SCOPE). Can be overridden per message by including a scope key in the message metadata.
Message typeMessage type
POST_TELEMETRY_REQUESTALARM
POST_ATTRIBUTES_REQUESTALARM_ACK
ATTRIBUTES_UPDATEDALARM_CLEAR
ATTRIBUTES_DELETEDCONNECT_EVENT
TIMESERIES_UPDATEDDISCONNECT_EVENT
TO_SERVER_RPC_REQUESTACTIVITY_EVENT / INACTIVITY_EVENT
  1. Verify that the message type is supported. If not, route via Failure.
  2. Build an edge event from the message.
  3. If the originator is an EDGE entity: push the event to that specific edge.
  4. If the originator is another entity type: find all edges the entity is assigned to and push the event to each. If the entity is not assigned to any edge, acknowledge the message and finish without further action.
  5. Route via Success.
ConnectionCondition
SuccessEdge event(s) written to persistent storage. Outgoing message is unchanged.
FailureUnsupported message type or unexpected error.

Example 1 — Push device telemetry to assigned edges

Section titled “Example 1 — Push device telemetry to assigned edges”

Originator: DEVICE assigned to two Edge instances | Type: POST_TELEMETRY_REQUEST.

{
"temperature": 22.5,
"humidity": 65.3
}
{
"scope": "SERVER_SCOPE"
}

Result: edge events queued for both assigned edges; they will retrieve and process the telemetry. Routes via Success.

{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "TbMsgPushToEdgeNodeConfiguration",
"type": "object",
"required": ["scope"],
"additionalProperties": false,
"properties": {
"scope": {
"type": "string",
"enum": ["SERVER_SCOPE", "CLIENT_SCOPE", "SHARED_SCOPE"],
"description": "Default attribute scope for attribute-related messages."
}
}
}