The Update Tables Node writes data from a workflow into a Rayven Primary or Secondary Table. It supports flexible row-matching using keys and allows multiple fields to be updated in a single operation.
Step-by-Step: How to Configure the Update Tables Node
-
Add the node to your workflow
Drag the Update Tables Node from the Logic panel to your canvas. -
Set a Node Name
Give your node a clear name to describe its function (e.g.,UpdateDeviceStatus
). -
Choose a Table
Use the Select Table dropdown to choose the target Primary or Secondary table you want to update. -
Define the Row Match Key
-
Under “Write JSON key”, enter the key from your payload that holds the unique identifier (e.g.,
"table_key"
). -
Under “To Column”, choose the column in the table to match against (e.g.,
"Table Key"
).
-
-
Map Payload Values to Columns
Add one or more row updates:-
For each, define:
-
Write JSON key: the key from the incoming payload (e.g.,
"status"
,"last_seen"
). -
To Column: the corresponding column in the table to update (e.g.,
"Device Status"
,"Last Seen At"
).
-
-
-
Save and connect
Link the node to upstream logic and test using sample data.
Basic Settings
Field | Description |
---|---|
Node Name* | A custom name to identify this node within your workflow. |
Table Selection
Field | Description |
---|---|
Select Table | The target Rayven table where the updates will be written. Supports both Primary and Secondary tables. |
Data Mapping
To update rows in the selected table, define mappings from incoming JSON keys to target table columns. Each mapping consists of a key (to identify the row) and values to be written.
Record Match (Key)
Field | Description |
---|---|
Write JSON Key* | The name of the key in the incoming payload that identifies the row to update. |
To Column* | The column in the table to match against (typically UID or another unique identifier). |
Field Update(s)
Field | Description |
---|---|
Write JSON Key* | The name of the key in the payload that holds the new value to write. |
To Column* | The destination column in the table that should receive the new value. |
Removing Rows
To remove a row select the "Enable to remove rows" checkbox.
The Update Tables node can also remove rows from a selected Primary or Secondary Table instead of (or in addition to) updating values.
To enable and configure row removal:
-
Open the Update Tables node settings.
-
Check Enable to remove rows.
-
A condition field will appear — configure it to define when a row should be removed.
-
Input data field: the JSON key in the incoming payload that will be evaluated.
-
Value: the exact value this field must match for the removal to occur.
-
-
The table row will be removed only if:
-
The key column value in the incoming payload matches a row in the table, and
-
The condition you set is met.
-
Example:
Table before removal:
A (KEY) | B | C |
---|---|---|
a1 | b1 | c1 |
a2 | b2 | c2 |
Configuration:
-
Enable to remove rows: ✅
-
Condition: If input:
remove
=yes
Incoming payload:
{"A": "a1", "remove": "yes"}
Result: Row with A = a1
is deleted.
Table after removal:
A (KEY) | B | C |
---|---|---|
a2 | b2 | c2 |
Best Practices
-
Always use a unique and indexed column (like
UID
) for key matching. -
Make sure the incoming payload contains all required fields before attempting an update.
- Use Inspect Data mode to trace which rows were updated, especially when handling dynamic or looped inputs.
Frequently Asked Questions (FAQ)
Q: Can a single input payload match multiple rows in the target table?
A: No. If the table uses a unique key column, only one record can exist per key. Therefore, a single input payload will match only one row in the target table.
Q: What happens if multiple input payloads are received for the same key?
A: Each payload will update the same row in the target table. The row’s data will reflect the values from the most recent payload processed by the node.
Q: Can I update multiple rows at once?
A: No. The node updates one row per payload. To update multiple rows, split the payload into individual objects using the Associate or Split Payload node before connecting to the Update Tables node.
Q: Does the node create new rows if no match is found?
A: Yes, if the key is not found in the target table, or if the table is not configured with a key, the node will create a new row.
Q: Can I update both Primary and Secondary tables?
A: Yes, but only one table per node. Use multiple nodes to update different tables.